From d91516735fe412f0bfd32a07178d7c90ccf0c8fe Mon Sep 17 00:00:00 2001 From: Timothe Litt Date: Sat, 31 Jul 2021 09:52:32 -0400 Subject: [PATCH] Make first fail global & improve diagnostics The first fail logic seems scoped to a single test file. Set the flag globally. Since the tests run in a container, cleanup is automagic. Various test tweaks to allow for skipping tests & null strings. --- getssl | 54 +++++++++++-------- test/1-simple-http01-dig.bats | 4 +- test/1-simple-http01-nslookup.bats | 4 +- test/1-simple-http01-two-acl.bats | 4 +- test/1-simple-http01.bats | 4 +- test/10-mixed-case.bats | 4 +- test/11-test--install.bats | 4 +- test/11-test-no-domain-storage.bats | 4 +- test/12-auto-upgrade-v1.bats | 20 +++---- test/13-notify-valid.bats | 4 +- test/14-test-revoke.bats | 4 +- test/15-test-revoke-no-suffix.bats | 4 +- test/16-test-bad-acl.bats | 4 +- test/17-test-spaces-in-sans-dns01.bats | 4 +- test/17-test-spaces-in-sans-http01.bats | 5 +- test/18-retry-dns-add.bats | 4 +- test/19-test-add-to-sans.bats | 4 +- test/2-simple-dns01-dig.bats | 8 +-- test/2-simple-dns01-nslookup.bats | 4 +- test/20-wildcard-simple.bats | 4 +- test/21-wildcard-dual-rsa.bats | 4 +- ...dcard-dual-rsa-ecdsa-copy-2-locations.bats | 4 +- test/23-wildcard-check-globbing.bats | 4 +- test/24-wildcard-sans.bats | 4 +- test/25-wildcard-all.bats | 4 +- test/26-wildcard-revoke.bats | 4 +- test/27-wildcard-existing-cert.bats | 4 +- test/28-wildcard-error-http01-validation.bats | 4 +- test/29-check-mktemp-failure.bats | 4 +- test/3-dual-rsa-ecdsa.bats | 4 +- test/30-handle-dig-failure.bats | 4 +- test/31-test-posix-error.bats | 4 +- test/32-test-upgrade.bats | 7 +-- test/33-ftp.bats | 4 +- test/34-ftp-passive.bats | 4 +- test/35-preferred-chain.bats | 4 +- test/36-full-chain-inc-root.bats | 4 +- test/37-idn.bats | 4 +- test/38-idn-http01-check-noidnout.bats | 4 +- test/4-more-than-10-hosts.bats | 4 +- test/5-secp384-http01.bats | 4 +- test/6-dual-rsa-ecdsa-copy-2-locations.bats | 4 +- test/7-test-renewal.bats | 4 +- test/8-staging-ecdsa.bats | 16 +++--- test/9-multiple-domains-dns01.bats | 4 +- test/9-test--all.bats | 4 +- test/dns_add_fail | 2 +- test/u1-test-get_auth_dns-dig.bats | 4 +- test/u2-test-get_auth_dns-drill.bats | 4 +- test/u3-mktemp-template.bats | 4 +- test/u4-create-csr-and-ifs.bats | 4 +- .../u5-test-get_auth_dns-no-root-servers.bats | 4 +- 52 files changed, 151 insertions(+), 141 deletions(-) diff --git a/getssl b/getssl index f0a289c..3576591 100755 --- a/getssl +++ b/getssl @@ -340,6 +340,7 @@ _FORCE_RENEW=0 _KEEP_VERSIONS="" _MUTE=0 _NOTIFY_VALID=0 +_NOMETER="" _QUIET=0 _RECREATE_CSR=0 _REDIRECT_OUTPUT="1>/dev/null 2>&1" @@ -568,7 +569,7 @@ check_challenge_completion_dns() { # perform validation via DNS challenge check_result=$($DNS_CHECK_FUNC $DNS_CHECK_OPTIONS TXT "${rr}" "@${ns}" \ | grep -i "^${rr}" \ | grep 'IN\WTXT'|awk -F'"' '{ print $2}') - debug "check_result=$check_result" + debug "check_result=\"$check_result\"" if [[ -z "$check_result" ]]; then # shellcheck disable=SC2086 debug "$DNS_CHECK_FUNC" $DNS_CHECK_OPTIONS ANY "${rr}" "@${ns}" @@ -576,7 +577,7 @@ check_challenge_completion_dns() { # perform validation via DNS challenge check_result=$($DNS_CHECK_FUNC $DNS_CHECK_OPTIONS ANY "${rr}" "@${ns}" \ | grep -i "^${rr}" \ | grep 'IN\WTXT'|awk -F'"' '{ print $2}') - debug "check_result=$check_result" + debug "check_result=\"$check_result\"" fi elif [[ "$DNS_CHECK_FUNC" == "host" ]]; then check_result=$($DNS_CHECK_FUNC -t TXT "${rr}" "${ns}" \ @@ -589,8 +590,8 @@ check_challenge_completion_dns() { # perform validation via DNS challenge | grep 'text ='|awk -F'"' '{ print $2}') fi fi - debug "expecting $auth_key" - debug "${ns} gave ... $check_result" + debug "expecting \"$auth_key\"" + debug "${ns} gave ... \"$check_result\"" if [[ "$check_result" == *"$auth_key"* ]]; then check_dns="success" @@ -612,7 +613,7 @@ check_challenge_completion_dns() { # perform validation via DNS challenge debug "dns check failed - removing existing value" del_dns_rr "${d}" "${auth_key}" - error_exit "checking ${rr} gave $check_result not $auth_key" + error_exit "checking \"${rr}\" gave \"$check_result\" not \"$auth_key\"" fi fi done @@ -764,7 +765,7 @@ check_getssl_upgrade() { # check if a more recent version of code is available a if [ "$TEMP_UPGRADE_FILE" == "" ]; then error_exit "mktemp failed" fi - curl --user-agent "$CURL_USERAGENT" --silent "$CODE_LOCATION" --output "$TEMP_UPGRADE_FILE" + curl ${_NOMETER} --user-agent "$CURL_USERAGENT" --silent "$CODE_LOCATION" --output "$TEMP_UPGRADE_FILE" errcode=$? if [[ $errcode -eq 60 ]]; then error_exit "curl needs updating, your version does not support SNI (multiple SSL domains on a single IP)" @@ -947,7 +948,7 @@ copy_file_to_location() { # copies a file, using scp, sftp or ftp if required. fromfile=$(basename "$from") debug "davs user=$davsuser - pass=$davspass - host=$davshost port=$davsport dir=$davsdirn file=$davsfile" debug "from dir=$fromdir file=$fromfile" - curl -u "${davsuser}:${davspass}" -T "${fromdir}/${fromfile}" "https://${davshost}:${davsport}${davsdirn}${davsfile}" + curl ${_NOMETER} -u "${davsuser}:${davspass}" -T "${fromdir}/${fromfile}" "https://${davshost}:${davsport}${davsdirn}${davsfile}" elif [[ "${to:0:6}" == "ftpes:" ]] || [[ "${to:0:5}" == "ftps:" ]] ; then debug "using ftp to copy the file from $from" ftpuser=$(echo "$to"| awk -F: '{print $2}') @@ -962,10 +963,10 @@ copy_file_to_location() { # copies a file, using scp, sftp or ftp if required. debug "from dir=$fromdir file=$fromfile" if [[ "${to:0:5}" == "ftps:" ]] ; then # shellcheck disable=SC2086 - curl $FTPS_OPTIONS --ftp-ssl --ftp-ssl-reqd -u "${ftpuser}:${ftppass}" -T "${fromdir}/${fromfile}" "ftp://${ftphost}${ftpdirn}:990/" + curl ${_NOMETER} $FTPS_OPTIONS --ftp-ssl --ftp-ssl-reqd -u "${ftpuser}:${ftppass}" -T "${fromdir}/${fromfile}" "ftp://${ftphost}${ftpdirn}:990/" else # shellcheck disable=SC2086 - curl $FTPS_OPTIONS --ftp-ssl --ftp-ssl-reqd -u "${ftpuser}:${ftppass}" -T "${fromdir}/${fromfile}" "ftp://${ftphost}${ftpdirn}/" + curl ${_NOMETER} $FTPS_OPTIONS --ftp-ssl --ftp-ssl-reqd -u "${ftpuser}:${ftppass}" -T "${fromdir}/${fromfile}" "ftp://${ftphost}${ftpdirn}/" fi else if ! mkdir -p "$(dirname "$to")" ; then @@ -1383,7 +1384,7 @@ for d in "${alldomains[@]}"; do # ACME only allows port 80 (http), but redirects may use https. --insecure is used in case # those certificates are being renewed. Let's Encrypt does the same. In this case, we verify # that the correct data is returned, so this is safe. - if [[ ! "$(curl --user-agent "$CURL_USERAGENT" --insecure --silent --location "$wellknown_url")" == "$keyauthorization" ]]; then + if [[ ! "$(curl ${_NOMETER} --user-agent "$CURL_USERAGENT" --insecure --silent --location "$wellknown_url")" == "$keyauthorization" ]]; then error_exit "for some reason could not reach $wellknown_url - please check it manually" fi fi @@ -1627,7 +1628,7 @@ get_certificate() { # get certificate for csr, if all domains validated. CertData=$(awk ' $1 ~ "^Location" {print $2}' "$CURL_HEADER" |tr -d '\r') if [[ "$CertData" ]] ; then echo -----BEGIN CERTIFICATE----- > "$gc_certfile" - curl --user-agent "$CURL_USERAGENT" --silent "$CertData" | openssl base64 -e >> "$gc_certfile" + curl ${_NOMETER} --user-agent "$CURL_USERAGENT" --silent "$CertData" | openssl base64 -e >> "$gc_certfile" echo -----END CERTIFICATE----- >> "$gc_certfile" info "Certificate saved in $CERT_FILE" fi @@ -1647,7 +1648,7 @@ get_certificate() { # get certificate for csr, if all domains validated. | sed 's/>//g') if [[ "$IssuerData" ]] ; then echo -----BEGIN CERTIFICATE----- > "$gc_cafile" - curl --user-agent "$CURL_USERAGENT" --silent "$IssuerData" | openssl base64 -e >> "$gc_cafile" + curl ${_NOMETER} --user-agent "$CURL_USERAGENT" --silent "$IssuerData" | openssl base64 -e >> "$gc_cafile" echo -----END CERTIFICATE----- >> "$gc_cafile" info "The intermediate CA cert is in $gc_cafile" fi @@ -1705,7 +1706,7 @@ get_certificate() { # get certificate for csr, if all domains validated. cp "$gc_certfile" "$gc_fullchain" while [[ -n "$issuer_url" ]]; do debug Fetching certificate issuer from "$issuer_url" - issuer_cert=$(curl --user-agent "$CURL_USERAGENT" --silent "$issuer_url" | openssl x509 -inform der -outform pem) + issuer_cert=$(curl ${_NOMETER} --user-agent "$CURL_USERAGENT" --silent "$issuer_url" | openssl x509 -inform der -outform pem) debug Fetched issuer certificate "$(echo "$issuer_cert" | openssl x509 -inform pem -noout -text | awk 'BEGIN {FS="Subject: "} NF==2 {print $2; exit}')" echo "$issuer_cert" >> "$gc_fullchain" @@ -1720,7 +1721,7 @@ get_certificate() { # get certificate for csr, if all domains validated. get_cr() { # get curl response url="$1" debug url "$url" - response=$(curl --user-agent "$CURL_USERAGENT" --silent "$url") + response=$(curl ${_NOMETER} --user-agent "$CURL_USERAGENT" --silent "$url") ret=$? debug response "${response//[$'\t\r\n']}" code=$(json_get "$response" status) @@ -2061,7 +2062,7 @@ obtain_ca_resource_locations() for suffix in "" "/directory" "/dir"; do # Obtain CA resource locations - ca_all_loc=$(curl --user-agent "$CURL_USERAGENT" "${CA}${suffix}" 2>/dev/null) + ca_all_loc=$(curl ${_NOMETER} --user-agent "$CURL_USERAGENT" "${CA}${suffix}" 2>/dev/null) debug "ca_all_loc from ${CA}${suffix} gives $ca_all_loc" # APIv1 URL_new_reg=$(echo "$ca_all_loc" | grep "new-reg" | awk -F'"' '{print $4}') @@ -2243,9 +2244,9 @@ send_signed_request() { # Sends a request to the ACME server, signed with your p CURL_HEADER="$TEMP_DIR/curl.header" dp="$TEMP_DIR/curl.dump" - CURL="curl " + CURL="curl ${_NOMETER} " # shellcheck disable=SC2072 - if [[ "$($CURL -V | head -1 | cut -d' ' -f2 )" > "7.33" ]]; then + if [[ ! "$($CURL -V | head -1 | cut -d' ' -f2 )" < "7.33" ]]; then CURL="$CURL --http1.1 " fi @@ -2321,7 +2322,7 @@ send_signed_request() { # Sends a request to the ACME server, signed with your p fi if [[ $errcode -gt 0 || ( "$response" == "" && $url != *"revoke"* ) ]]; then - error_exit "ERROR curl \"$url\" failed with $errcode and returned $response" + error_exit "ERROR curl \"$url\" failed with $errcode and returned \"$response\"" fi responseHeaders=$(cat "$CURL_HEADER") @@ -2420,10 +2421,6 @@ signal_exit() { # Handle trapped signals esac } -test_setup() { # setup for running test - _USE_DEBUG=1 -} - traceback() { # Print function traceback local i d=1 lbl=" called" debug "Traceback" @@ -2432,6 +2429,7 @@ traceback() { # Print function traceback debug "$(printf "%*s%s() line %d%s\n" "$d" '' "${FUNCNAME[$i]}" "${BASH_LINENO[$((i-1))]}" "$lbl")" ((d++)) done + return 0 } urlbase64() { # urlbase64: base64 encoded string with '+' replaced with '-' and '/' replaced with '_' @@ -2639,7 +2637,7 @@ trap "signal_exit INT" INT # When running tests, use debug mode to capture intermittent faults # Test harness will Save output in a temporary file, which is displayed if an error occurs if [[ ${_RUNNING_TEST} -eq 1 ]] ; then - test_setup + _USE_DEBUG=1 fi # Parse command-line @@ -2737,6 +2735,16 @@ requires sed requires sort requires mktemp +# Make sure cURL doesn't display a progress meter (if it's new enough) +# --silent also does this, but suppresses warnings and informational messages too. +# TODO: see where --silent can be removed (if _NOMETER defaults to --silent for old versions?) +# This would help with debugging transfer errors. + +# shellcheck disable=SC2072 +if [[ ! "$(curl -V | head -1 | cut -d' ' -f2 )" < "7.67" ]]; then + _NOMETER="--no-progress-meter" +fi + # Check if upgrades are available (unless they have specified -U to ignore Upgrade checks) if [[ $_UPGRADE_CHECK -eq 1 ]]; then check_getssl_upgrade diff --git a/test/1-simple-http01-dig.bats b/test/1-simple-http01-dig.bats index b3c36cc..6c29ec6 100644 --- a/test/1-simple-http01-dig.bats +++ b/test/1-simple-http01-dig.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt if [ -f /usr/bin/host ]; then mv /usr/bin/host /usr/bin/host.getssl.bak @@ -19,7 +19,7 @@ setup() { teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip if [ -f /usr/bin/host.getssl.bak ]; then mv /usr/bin/host.getssl.bak /usr/bin/host fi diff --git a/test/1-simple-http01-nslookup.bats b/test/1-simple-http01-nslookup.bats index 65c3669..aa71e1c 100644 --- a/test/1-simple-http01-nslookup.bats +++ b/test/1-simple-http01-nslookup.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt if [ -f /usr/bin/dig ]; then mv /usr/bin/dig /usr/bin/dig.getssl.bak @@ -19,7 +19,7 @@ setup() { teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip if [ -f /usr/bin/dig.getssl.bak ]; then mv /usr/bin/dig.getssl.bak /usr/bin/dig fi diff --git a/test/1-simple-http01-two-acl.bats b/test/1-simple-http01-two-acl.bats index 5a09f60..b4bb3f1 100644 --- a/test/1-simple-http01-two-acl.bats +++ b/test/1-simple-http01-two-acl.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt } diff --git a/test/1-simple-http01.bats b/test/1-simple-http01.bats index 543d29b..518f734 100644 --- a/test/1-simple-http01.bats +++ b/test/1-simple-http01.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt } diff --git a/test/10-mixed-case.bats b/test/10-mixed-case.bats index 9ec0e35..382f19a 100644 --- a/test/10-mixed-case.bats +++ b/test/10-mixed-case.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/11-test--install.bats b/test/11-test--install.bats index 0d015ee..1ab1ca4 100644 --- a/test/11-test--install.bats +++ b/test/11-test--install.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt } diff --git a/test/11-test-no-domain-storage.bats b/test/11-test-no-domain-storage.bats index 92cade4..9ad4aa4 100644 --- a/test/11-test-no-domain-storage.bats +++ b/test/11-test-no-domain-storage.bats @@ -6,10 +6,10 @@ load '/getssl/test/test_helper.bash' setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Check that if domain storage isn't set getssl doesn't try to delete /tmp" { diff --git a/test/12-auto-upgrade-v1.bats b/test/12-auto-upgrade-v1.bats index b63acfb..7554561 100644 --- a/test/12-auto-upgrade-v1.bats +++ b/test/12-auto-upgrade-v1.bats @@ -6,10 +6,10 @@ load '/getssl/test/test_helper.bash' setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Check that auto upgrade to v2 doesn't change pebble url" { @@ -27,10 +27,10 @@ teardown() { setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Check that auto upgrade to v2 doesn't change v2 staging url" { @@ -48,10 +48,10 @@ teardown() { setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Check that auto upgrade to v2 doesn't change v2 prod url" { @@ -69,10 +69,10 @@ teardown() { setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Check that auto upgrade to v2 changes v1 staging to v2 staging url" { @@ -90,10 +90,10 @@ teardown() { setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Check that auto upgrade to v2 changes v1 prod to v2 prod url" { diff --git a/test/13-notify-valid.bats b/test/13-notify-valid.bats index 199f165..6b66927 100644 --- a/test/13-notify-valid.bats +++ b/test/13-notify-valid.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt } diff --git a/test/14-test-revoke.bats b/test/14-test-revoke.bats index 86be2e2..fffe300 100644 --- a/test/14-test-revoke.bats +++ b/test/14-test-revoke.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/15-test-revoke-no-suffix.bats b/test/15-test-revoke-no-suffix.bats index d2272fc..3eb273c 100644 --- a/test/15-test-revoke-no-suffix.bats +++ b/test/15-test-revoke-no-suffix.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/16-test-bad-acl.bats b/test/16-test-bad-acl.bats index abf365c..e2feec5 100644 --- a/test/16-test-bad-acl.bats +++ b/test/16-test-bad-acl.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt } diff --git a/test/17-test-spaces-in-sans-dns01.bats b/test/17-test-spaces-in-sans-dns01.bats index 9eb2c32..574866d 100644 --- a/test/17-test-spaces-in-sans-dns01.bats +++ b/test/17-test-spaces-in-sans-dns01.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/17-test-spaces-in-sans-http01.bats b/test/17-test-spaces-in-sans-http01.bats index 5fc4eb4..0947e06 100644 --- a/test/17-test-spaces-in-sans-http01.bats +++ b/test/17-test-spaces-in-sans-http01.bats @@ -7,11 +7,12 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" + if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/18-retry-dns-add.bats b/test/18-retry-dns-add.bats index 68e508f..80244aa 100644 --- a/test/18-retry-dns-add.bats +++ b/test/18-retry-dns-add.bats @@ -6,11 +6,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt } diff --git a/test/19-test-add-to-sans.bats b/test/19-test-add-to-sans.bats index 7f96929..945432a 100644 --- a/test/19-test-add-to-sans.bats +++ b/test/19-test-add-to-sans.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt curl --silent -X POST -d '{"host":"a.'$GETSSL_HOST'", "addresses":["'$GETSSL_IP'"]}' http://10.30.50.3:8055/add-a @@ -15,7 +15,7 @@ setup() { } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip if [ -z "$STAGING" ]; then curl --silent -X POST -d '{"host":"a.'$GETSSL_HOST'", "addresses":["'$GETSSL_IP'"]}' http://10.30.50.3:8055/clear-a fi diff --git a/test/2-simple-dns01-dig.bats b/test/2-simple-dns01-dig.bats index e62e903..c0edf7b 100644 --- a/test/2-simple-dns01-dig.bats +++ b/test/2-simple-dns01-dig.bats @@ -29,10 +29,10 @@ teardown_file() { setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Create new certificate using DNS-01 verification (dig)" { @@ -48,10 +48,10 @@ teardown() { setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Force renewal of certificate using DNS-01 (dig)" { diff --git a/test/2-simple-dns01-nslookup.bats b/test/2-simple-dns01-nslookup.bats index 8ff465d..c0b7383 100644 --- a/test/2-simple-dns01-nslookup.bats +++ b/test/2-simple-dns01-nslookup.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi @@ -21,7 +21,7 @@ setup() { teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip if [ -f /usr/bin/dig.getssl.bak ]; then mv /usr/bin/dig.getssl.bak /usr/bin/dig fi diff --git a/test/20-wildcard-simple.bats b/test/20-wildcard-simple.bats index e68810b..eb0544f 100644 --- a/test/20-wildcard-simple.bats +++ b/test/20-wildcard-simple.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/21-wildcard-dual-rsa.bats b/test/21-wildcard-dual-rsa.bats index 16a8d97..97e23cb 100644 --- a/test/21-wildcard-dual-rsa.bats +++ b/test/21-wildcard-dual-rsa.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/22-wildcard-dual-rsa-ecdsa-copy-2-locations.bats b/test/22-wildcard-dual-rsa-ecdsa-copy-2-locations.bats index e397ac8..4d6e115 100644 --- a/test/22-wildcard-dual-rsa-ecdsa-copy-2-locations.bats +++ b/test/22-wildcard-dual-rsa-ecdsa-copy-2-locations.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # These are run for every test, not once per file teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/23-wildcard-check-globbing.bats b/test/23-wildcard-check-globbing.bats index 8566b88..bf74230 100644 --- a/test/23-wildcard-check-globbing.bats +++ b/test/23-wildcard-check-globbing.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/24-wildcard-sans.bats b/test/24-wildcard-sans.bats index 74a1e5e..500acd4 100644 --- a/test/24-wildcard-sans.bats +++ b/test/24-wildcard-sans.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt curl --silent -X POST -d '{"host":"wild-'$GETSSL_HOST'", "addresses":["'$GETSSL_IP'"]}' http://10.30.50.3:8055/add-a @@ -16,7 +16,7 @@ setup() { teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip if [ -z "$STAGING" ]; then curl --silent -X POST -d '{"host":"wild-'$GETSSL_HOST'", "addresses":["'$GETSSL_IP'"]}' http://10.30.50.3:8055/clear-a fi diff --git a/test/25-wildcard-all.bats b/test/25-wildcard-all.bats index a9b0380..4a74912 100644 --- a/test/25-wildcard-all.bats +++ b/test/25-wildcard-all.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/26-wildcard-revoke.bats b/test/26-wildcard-revoke.bats index 3be9bcd..e613c1e 100644 --- a/test/26-wildcard-revoke.bats +++ b/test/26-wildcard-revoke.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/27-wildcard-existing-cert.bats b/test/27-wildcard-existing-cert.bats index 0c69389..a9e83be 100644 --- a/test/27-wildcard-existing-cert.bats +++ b/test/27-wildcard-existing-cert.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/28-wildcard-error-http01-validation.bats b/test/28-wildcard-error-http01-validation.bats index bf8a7f2..3c08e72 100644 --- a/test/28-wildcard-error-http01-validation.bats +++ b/test/28-wildcard-error-http01-validation.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/29-check-mktemp-failure.bats b/test/29-check-mktemp-failure.bats index 9fcd710..81b9ae4 100644 --- a/test/29-check-mktemp-failure.bats +++ b/test/29-check-mktemp-failure.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/3-dual-rsa-ecdsa.bats b/test/3-dual-rsa-ecdsa.bats index c4c06e8..df8a8fc 100644 --- a/test/3-dual-rsa-ecdsa.bats +++ b/test/3-dual-rsa-ecdsa.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt } diff --git a/test/30-handle-dig-failure.bats b/test/30-handle-dig-failure.bats index 6ea5803..898ac4d 100644 --- a/test/30-handle-dig-failure.bats +++ b/test/30-handle-dig-failure.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt if [ -f /usr/bin/drill ]; then mv /usr/bin/drill /usr/bin/drill.getssl.bak @@ -19,7 +19,7 @@ setup() { teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip if [ -f /usr/bin/drill.getssl.bak ]; then mv /usr/bin/drill.getssl.bak /usr/bin/drill fi diff --git a/test/31-test-posix-error.bats b/test/31-test-posix-error.bats index 37d7074..7623cae 100644 --- a/test/31-test-posix-error.bats +++ b/test/31-test-posix-error.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt } diff --git a/test/32-test-upgrade.bats b/test/32-test-upgrade.bats index 77ad362..1a311d7 100644 --- a/test/32-test-upgrade.bats +++ b/test/32-test-upgrade.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt # Turn off warning about detached head @@ -33,8 +33,9 @@ setup() { teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip - rm -r "$INSTALL_DIR/upgrade-getssl" + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip + [ -d "$INSTALL_DIR/upgrade-getssl" ] && rm -r "$INSTALL_DIR/upgrade-getssl" + true } diff --git a/test/33-ftp.bats b/test/33-ftp.bats index 1131967..086636a 100644 --- a/test/33-ftp.bats +++ b/test/33-ftp.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt if [ -n "${VSFTPD_CONF}" ]; then cp $VSFTPD_CONF ${VSFTPD_CONF}.getssl @@ -24,7 +24,7 @@ _FTP teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip if [ -n "${VSFTPD_CONF}" ]; then cp ${VSFTPD_CONF}.getssl $VSFTPD_CONF ${CODE_DIR}/test/restart-ftpd diff --git a/test/34-ftp-passive.bats b/test/34-ftp-passive.bats index b53223d..ac6e222 100644 --- a/test/34-ftp-passive.bats +++ b/test/34-ftp-passive.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt if [ -n "${VSFTPD_CONF}" ]; then cp $VSFTPD_CONF ${VSFTPD_CONF}.getssl @@ -27,7 +27,7 @@ _FTP teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip if [ -n "${VSFTPD_CONF}" ]; then cp ${VSFTPD_CONF}.getssl $VSFTPD_CONF ${CODE_DIR}/test/restart-ftpd diff --git a/test/35-preferred-chain.bats b/test/35-preferred-chain.bats index 6995925..0ffe71e 100644 --- a/test/35-preferred-chain.bats +++ b/test/35-preferred-chain.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/36-full-chain-inc-root.bats b/test/36-full-chain-inc-root.bats index 1fed1ba..4655075 100644 --- a/test/36-full-chain-inc-root.bats +++ b/test/36-full-chain-inc-root.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt fi diff --git a/test/37-idn.bats b/test/37-idn.bats index 04e26fd..a3cf43a 100644 --- a/test/37-idn.bats +++ b/test/37-idn.bats @@ -13,7 +13,7 @@ setup_file() { # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" GETSSL_CMD_HOST=${GETSSL_IDN_HOST} # use the test description to move tools we don't want to test out of the way @@ -27,7 +27,7 @@ setup() { } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip # use the test description to move tools we didn't want to test back DNS_TOOL=${BATS_TEST_DESCRIPTION##*-} for tool in dig drill host nslookup diff --git a/test/38-idn-http01-check-noidnout.bats b/test/38-idn-http01-check-noidnout.bats index 032bc2d..6ba8d14 100644 --- a/test/38-idn-http01-check-noidnout.bats +++ b/test/38-idn-http01-check-noidnout.bats @@ -12,11 +12,11 @@ setup_file() { } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" GETSSL_CMD_HOST=$GETSSL_IDN_HOST } diff --git a/test/4-more-than-10-hosts.bats b/test/4-more-than-10-hosts.bats index 2343cc4..f62d2e6 100644 --- a/test/4-more-than-10-hosts.bats +++ b/test/4-more-than-10-hosts.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt } diff --git a/test/5-secp384-http01.bats b/test/5-secp384-http01.bats index 7e478dc..5ddf0d6 100644 --- a/test/5-secp384-http01.bats +++ b/test/5-secp384-http01.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt } diff --git a/test/6-dual-rsa-ecdsa-copy-2-locations.bats b/test/6-dual-rsa-ecdsa-copy-2-locations.bats index 93c3349..16ca162 100644 --- a/test/6-dual-rsa-ecdsa-copy-2-locations.bats +++ b/test/6-dual-rsa-ecdsa-copy-2-locations.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # These are run for every test, not once per file setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt curl --silent -X POST -d '{"host":"'a.$GETSSL_HOST'", "addresses":["'$GETSSL_IP'"]}' http://10.30.50.3:8055/add-a @@ -16,7 +16,7 @@ setup() { teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip if [ -z "$STAGING" ]; then curl --silent -X POST -d '{"host":"'a.$GETSSL_HOST'"}' http://10.30.50.3:8055/clear-a fi diff --git a/test/7-test-renewal.bats b/test/7-test-renewal.bats index ceb2966..a2e9e0c 100644 --- a/test/7-test-renewal.bats +++ b/test/7-test-renewal.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" if [ -z "$STAGING" ]; then export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt curl --silent -X POST -d '{"host":"a.'$GETSSL_HOST'", "addresses":["'$GETSSL_IP'"]}' http://10.30.50.3:8055/add-a @@ -16,7 +16,7 @@ setup() { } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip if [ -z "$STAGING" ]; then curl --silent -X POST -d '{"host":"a.'$GETSSL_HOST'", "addresses":["'$GETSSL_IP'"]}' http://10.30.50.3:8055/clear-a curl --silent -X POST -d '{"host":"b.'$GETSSL_HOST'", "addresses":["'$GETSSL_IP'"]}' http://10.30.50.3:8055/clear-a diff --git a/test/8-staging-ecdsa.bats b/test/8-staging-ecdsa.bats index f3cf611..67e657a 100644 --- a/test/8-staging-ecdsa.bats +++ b/test/8-staging-ecdsa.bats @@ -8,10 +8,10 @@ load '/getssl/test/test_helper.bash' setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Create new certificate using staging server and prime256v1" { @@ -30,10 +30,10 @@ teardown() { setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Force renewal of certificate using staging server and prime256v1" { @@ -48,10 +48,10 @@ teardown() { setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Create new certificate using staging server and secp384r1" { @@ -70,10 +70,10 @@ teardown() { setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Force renewal of certificate using staging server and secp384r1" { diff --git a/test/9-multiple-domains-dns01.bats b/test/9-multiple-domains-dns01.bats index af6e059..12bb2e1 100644 --- a/test/9-multiple-domains-dns01.bats +++ b/test/9-multiple-domains-dns01.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt } diff --git a/test/9-test--all.bats b/test/9-test--all.bats index f3520c0..35697fd 100644 --- a/test/9-test--all.bats +++ b/test/9-test--all.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt export PATH=$PATH:/getssl } diff --git a/test/dns_add_fail b/test/dns_add_fail index c39a89a..b8aa2b8 100755 --- a/test/dns_add_fail +++ b/test/dns_add_fail @@ -2,5 +2,5 @@ # Special test script which will always fail to update dns -echo "This is a test script to check retry works if DNS isn't updated" +echo "dns_add_fail: This is a test script to check retry works if DNS isn't updated" exit 0 diff --git a/test/u1-test-get_auth_dns-dig.bats b/test/u1-test-get_auth_dns-dig.bats index 05ec0b7..24ab088 100644 --- a/test/u1-test-get_auth_dns-dig.bats +++ b/test/u1-test-get_auth_dns-dig.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" for app in drill host nslookup do if [ -f /usr/bin/${app} ]; then @@ -23,7 +23,7 @@ setup() { teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip for app in drill host nslookup do if [ -f /usr/bin/${app}.getssl.bak ]; then diff --git a/test/u2-test-get_auth_dns-drill.bats b/test/u2-test-get_auth_dns-drill.bats index ce0fe88..b63cf1b 100644 --- a/test/u2-test-get_auth_dns-drill.bats +++ b/test/u2-test-get_auth_dns-drill.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" for app in dig host nslookup do if [ -f /usr/bin/${app} ]; then @@ -23,7 +23,7 @@ setup() { teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip for app in dig host nslookup do if [ -f /usr/bin/${app}.getssl.bak ]; then diff --git a/test/u3-mktemp-template.bats b/test/u3-mktemp-template.bats index 968e0db..e28208c 100644 --- a/test/u3-mktemp-template.bats +++ b/test/u3-mktemp-template.bats @@ -6,10 +6,10 @@ load '/getssl/test/test_helper.bash' setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" } teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } @test "Check mktemp -t getssl.XXXXXX works on all platforms" { diff --git a/test/u4-create-csr-and-ifs.bats b/test/u4-create-csr-and-ifs.bats index 528394d..7871445 100644 --- a/test/u4-create-csr-and-ifs.bats +++ b/test/u4-create-csr-and-ifs.bats @@ -7,11 +7,11 @@ load '/getssl/test/test_helper.bash' # This is run for every test teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip } setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" . /getssl/getssl --source find_dns_utils _RUNNING_TEST=1 diff --git a/test/u5-test-get_auth_dns-no-root-servers.bats b/test/u5-test-get_auth_dns-no-root-servers.bats index ab0f846..7dcbdc9 100644 --- a/test/u5-test-get_auth_dns-no-root-servers.bats +++ b/test/u5-test-get_auth_dns-no-root-servers.bats @@ -7,7 +7,7 @@ load '/getssl/test/test_helper.bash' # This is run for every test setup() { - [ ! -f ${BATS_PARENT_TMPNAME}.skip ] || skip "skip remaining tests" + [ ! -f $BATS_TMPDIR/failed.skip ] || skip "skipping tests after first failure" cp /etc/resolv.conf /etc/resolv.conf.getssl cat <<- EOF > /etc/resolv.conf nameserver 8.8.8.8 @@ -29,7 +29,7 @@ EOF teardown() { - [ -n "$BATS_TEST_COMPLETED" ] || touch ${BATS_PARENT_TMPNAME}.skip + [ -n "$BATS_TEST_COMPLETED" ] || touch $BATS_TMPDIR/failed.skip cat /etc/resolv.conf.getssl > /etc/resolv.conf for app in drill host nslookup do