(t *testing.T)
| 13 | ) |
| 14 | |
| 15 | func TestConfig(t *testing.T) { |
| 16 | var cfgBlob = ` |
| 17 | [global] |
| 18 | name = "test_worker" |
| 19 | log_dir = "/var/log/tunasync/{{.Name}}" |
| 20 | mirror_dir = "/data/mirrors" |
| 21 | concurrent = 10 |
| 22 | interval = 240 |
| 23 | retry = 3 |
| 24 | timeout = 86400 |
| 25 | |
| 26 | [manager] |
| 27 | api_base = "https://127.0.0.1:5000" |
| 28 | token = "some_token" |
| 29 | |
| 30 | [server] |
| 31 | hostname = "worker1.example.com" |
| 32 | listen_addr = "127.0.0.1" |
| 33 | listen_port = 6000 |
| 34 | ssl_cert = "/etc/tunasync.d/worker1.cert" |
| 35 | ssl_key = "/etc/tunasync.d/worker1.key" |
| 36 | |
| 37 | [[mirrors]] |
| 38 | name = "AOSP" |
| 39 | provider = "command" |
| 40 | upstream = "https://aosp.google.com/" |
| 41 | interval = 720 |
| 42 | retry = 2 |
| 43 | timeout = 3600 |
| 44 | mirror_dir = "/data/git/AOSP" |
| 45 | exec_on_success = [ |
| 46 | "bash -c 'echo ${TUNASYNC_JOB_EXIT_STATUS} > ${TUNASYNC_WORKING_DIR}/exit_status'" |
| 47 | ] |
| 48 | [mirrors.env] |
| 49 | REPO = "/usr/local/bin/aosp-repo" |
| 50 | |
| 51 | [[mirrors]] |
| 52 | name = "debian" |
| 53 | provider = "two-stage-rsync" |
| 54 | stage1_profile = "debian" |
| 55 | upstream = "rsync://ftp.debian.org/debian/" |
| 56 | use_ipv6 = true |
| 57 | memory_limit = "256MiB" |
| 58 | |
| 59 | [[mirrors]] |
| 60 | name = "fedora" |
| 61 | provider = "rsync" |
| 62 | upstream = "rsync://ftp.fedoraproject.org/fedora/" |
| 63 | use_ipv6 = true |
| 64 | memory_limit = "128M" |
| 65 | |
| 66 | exclude_file = "/etc/tunasync.d/fedora-exclude.txt" |
| 67 | exec_on_failure = [ |
| 68 | "bash -c 'echo ${TUNASYNC_JOB_EXIT_STATUS} > ${TUNASYNC_WORKING_DIR}/exit_status'" |
| 69 | ] |
| 70 | ` |
| 71 | |
| 72 | Convey("When giving invalid file", t, func() { |
nothing calls this directly
no test coverage detected