mirror of
https://github.com/certbot/certbot.git
synced 2026-08-02 03:11:55 +02:00
Add integration tests for nginx plugin (#5441)
* Add a rewrite directive for the .well-known location so we don't hit existing rewrites * add comment * Add (nonexistent) document root so we don't use the default value * Add integration tests for nginx plugin * add a sleep 5 to test on travis * put sleep 5 in the right spot * test return status of grep respecting -e and note that we're actually not posix compliant * redelete newline
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
#!/bin/sh -xe
|
||||
#!/bin/bash -xe
|
||||
# prerequisite: apt-get install --no-install-recommends nginx-light openssl
|
||||
|
||||
. ./tests/integration/_common.sh
|
||||
@@ -6,13 +6,15 @@
|
||||
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
|
||||
|
||||
reload_nginx () {
|
||||
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
|
||||
killall nginx || true
|
||||
nginx -c $nginx_root/nginx.conf
|
||||
}
|
||||
|
||||
certbot_test_nginx () {
|
||||
certbot_test \
|
||||
@@ -32,10 +34,30 @@ test_deployment_and_rollback() {
|
||||
diff -q <(echo "$original") $nginx_conf
|
||||
}
|
||||
|
||||
export default_server="default_server"
|
||||
reload_nginx
|
||||
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
|
||||
# Overlapping location block and server-block-level return 301
|
||||
certbot_test_nginx --domains nginx3.wtf --preferred-challenges http
|
||||
test_deployment_and_rollback nginx3.wtf
|
||||
# No matching server block; default_server exists
|
||||
certbot_test_nginx --domains nginx4.wtf --preferred-challenges http
|
||||
test_deployment_and_rollback nginx4.wtf
|
||||
# No matching server block; default_server does not exist
|
||||
export default_server=""
|
||||
reload_nginx
|
||||
if nginx -c $nginx_root/nginx.conf -T 2>/dev/null | grep "default_server"; then
|
||||
echo "Failed to remove default_server"
|
||||
exit 1
|
||||
fi
|
||||
certbot_test_nginx --domains nginx5.wtf --preferred-challenges http
|
||||
test_deployment_and_rollback nginx5.wtf
|
||||
# Mutiple domains, mix of matching and not
|
||||
certbot_test_nginx --domains nginx6.wtf,nginx7.wtf --preferred-challenges http
|
||||
test_deployment_and_rollback nginx6.wtf
|
||||
|
||||
# note: not reached if anything above fails, hence "killall" at the
|
||||
# top
|
||||
|
||||
Reference in New Issue
Block a user