mirror of
https://github.com/certbot/certbot.git
synced 2026-05-28 04:34:11 -04:00
* get http01 challenge working * support multiple challenge types in configurator.py * update existing nginx tests * lint * refactor NginxHttp01 and NginxTlsSni01 to both now inherit from NginxChallengePerformer * remove TODO * challenges_test tests with both tlssni01 and http01 * Make challenges.py more abstract to make lint happier * add pylint disables to the tests to make pylint happier about the inheritance and abstraction situation * no need to cover raise NotImplementedError() lines * python3 compatibility * test that http01 perform is called * only remove ssl from addresses during http01 * Initialize addrs_to_add * Change Nginx http01 to modify server block so the site doesn't stop serving while getting a cert * pass existing unit tests * rename sni --> http01 in unit tests * lint * fix configurator test * select an http block instead of https * properly test for port number * use domains that have matching addresses * remove debugger * remove access_log and error_log cruft that wasn't being executed * continue to return None from choose_redirect_vhost when create_if_no_match is False * add nginx integration test
42 lines
1.2 KiB
Bash
Executable file
42 lines
1.2 KiB
Bash
Executable file
#!/bin/sh -xe
|
|
# prerequisite: apt-get install --no-install-recommends nginx-light openssl
|
|
|
|
. ./tests/integration/_common.sh
|
|
|
|
export PATH="/usr/sbin:$PATH" # /usr/sbin/nginx
|
|
nginx_root="$root/nginx"
|
|
mkdir $nginx_root
|
|
original=$(root="$nginx_root" ./certbot-nginx/tests/boulder-integration.conf.sh)
|
|
nginx_conf="$nginx_root/nginx.conf"
|
|
echo "$original" > $nginx_conf
|
|
|
|
|
|
killall nginx || true
|
|
nginx -c $nginx_root/nginx.conf
|
|
|
|
certbot_test_nginx () {
|
|
certbot_test \
|
|
--authenticator nginx \
|
|
--installer nginx \
|
|
--nginx-server-root $nginx_root \
|
|
"$@"
|
|
}
|
|
|
|
test_deployment_and_rollback() {
|
|
# Arguments: certname
|
|
echo | openssl s_client -connect localhost:5001 \
|
|
| openssl x509 -out $root/nginx.pem
|
|
diff -q $root/nginx.pem "$root/conf/live/$1/cert.pem"
|
|
|
|
certbot_test_nginx rollback --checkpoints 9001
|
|
diff -q <(echo "$original") $nginx_conf
|
|
}
|
|
|
|
certbot_test_nginx --domains nginx.wtf run
|
|
test_deployment_and_rollback nginx.wtf
|
|
certbot_test_nginx --domains nginx2.wtf --preferred-challenges http
|
|
test_deployment_and_rollback nginx2.wtf
|
|
|
|
# note: not reached if anything above fails, hence "killall" at the
|
|
# top
|
|
nginx -c $nginx_root/nginx.conf -s stop
|