Merge pull request #51 from clems4ever/fix-deployment
Fix deployment of example using dedicated scriptpull/58/head
commit
cdf6a73bdf
|
@ -3,8 +3,7 @@ services:
|
||||||
nginx:
|
nginx:
|
||||||
image: nginx:alpine
|
image: nginx:alpine
|
||||||
volumes:
|
volumes:
|
||||||
- ./example/nginx/index.html:/usr/share/nginx/html/index.html
|
- ./example/nginx/html:/usr/share/nginx/html
|
||||||
- ./example/nginx/secret.html:/usr/share/nginx/html/secret.html
|
|
||||||
- ./example/nginx/ssl:/etc/ssl
|
- ./example/nginx/ssl:/etc/ssl
|
||||||
- ./example/nginx/nginx.conf:/etc/nginx/nginx.conf
|
- ./example/nginx/nginx.conf:/etc/nginx/nginx.conf
|
||||||
ports:
|
ports:
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 1.4 KiB |
|
@ -1,6 +1,8 @@
|
||||||
|
<!DOCTYPE>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>Home page</title>
|
<title>Home page</title>
|
||||||
|
<link rel="icon" href="/icon.png" type="image/png" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<h1>Access the secret</h1>
|
<h1>Access the secret</h1>
|
|
@ -1,6 +1,7 @@
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>Secret</title>
|
<title>Secret</title>
|
||||||
|
<link rel="icon" href="/icon.png" type="image/png" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
This is a very important secret!<br/>
|
This is a very important secret!<br/>
|
|
@ -1,14 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
service_count=`docker ps -a | grep "Up " | wc -l`
|
|
||||||
|
|
||||||
if [ "${service_count}" -eq "5" ]
|
|
||||||
then
|
|
||||||
echo "Service are up and running."
|
|
||||||
exit 0
|
|
||||||
else
|
|
||||||
echo "Some services exited..."
|
|
||||||
docker ps -a
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
|
@ -3,4 +3,4 @@
|
||||||
DC_SCRIPT=./scripts/example/dc-example.sh
|
DC_SCRIPT=./scripts/example/dc-example.sh
|
||||||
|
|
||||||
$DC_SCRIPT build
|
$DC_SCRIPT build
|
||||||
$DC_SCRIPT up -d
|
$DC_SCRIPT up -d redis openldap authelia nginx
|
||||||
|
|
|
@ -2,53 +2,88 @@
|
||||||
|
|
||||||
DC_SCRIPT=./scripts/example/dc-example.sh
|
DC_SCRIPT=./scripts/example/dc-example.sh
|
||||||
|
|
||||||
run_services() {
|
start_services() {
|
||||||
$DC_SCRIPT up -d redis openldap
|
$DC_SCRIPT up -d redis openldap authelia nginx nginx-tests
|
||||||
sleep 2
|
|
||||||
$DC_SCRIPT up -d authelia nginx nginx-tests
|
|
||||||
sleep 3
|
sleep 3
|
||||||
}
|
}
|
||||||
|
|
||||||
|
shut_services() {
|
||||||
|
$DC_SCRIPT down
|
||||||
|
}
|
||||||
|
|
||||||
|
expect_services_count() {
|
||||||
|
EXPECTED_COUNT=$1
|
||||||
|
service_count=`docker ps -a | grep "Up " | wc -l`
|
||||||
|
|
||||||
|
if [ "${service_count}" -eq "$EXPECTED_COUNT" ]
|
||||||
|
then
|
||||||
|
echo "Services are up and running."
|
||||||
|
else
|
||||||
|
echo "Some services exited..."
|
||||||
|
docker ps -a
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
run_integration_tests() {
|
||||||
|
echo "Prepare nginx-test configuration"
|
||||||
|
cat example/nginx/nginx.conf | sed 's/listen 443 ssl/listen 8080 ssl/g' | dd of="test/integration/nginx.conf"
|
||||||
|
|
||||||
|
echo "Build services images..."
|
||||||
|
$DC_SCRIPT build
|
||||||
|
|
||||||
|
echo "Start services..."
|
||||||
|
start_services
|
||||||
|
docker ps -a
|
||||||
|
|
||||||
|
echo "Display services logs..."
|
||||||
|
$DC_SCRIPT logs redis
|
||||||
|
$DC_SCRIPT logs openldap
|
||||||
|
$DC_SCRIPT logs nginx
|
||||||
|
$DC_SCRIPT logs nginx-tests
|
||||||
|
$DC_SCRIPT logs authelia
|
||||||
|
|
||||||
|
echo "Check number of services"
|
||||||
|
expect_services_count 5
|
||||||
|
|
||||||
|
echo "Run integration tests..."
|
||||||
|
$DC_SCRIPT run --rm integration-tests
|
||||||
|
|
||||||
|
echo "Shutdown services..."
|
||||||
|
shut_services
|
||||||
|
}
|
||||||
|
|
||||||
|
run_system_tests() {
|
||||||
|
echo "Start services..."
|
||||||
|
start_services
|
||||||
|
expect_services_count 5
|
||||||
|
|
||||||
|
./node_modules/.bin/mocha --compilers ts:ts-node/register --recursive test/system
|
||||||
|
shut_services
|
||||||
|
}
|
||||||
|
|
||||||
|
run_other_tests() {
|
||||||
|
echo "Test dev environment deployment (commands in README)"
|
||||||
|
npm install --only=dev
|
||||||
|
./node_modules/.bin/grunt build-dist
|
||||||
|
./scripts/example/deploy-example.sh
|
||||||
|
expect_services_count 4
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
echo "Make sure services are not already running"
|
echo "Make sure services are not already running"
|
||||||
$DC_SCRIPT down
|
shut_services
|
||||||
|
|
||||||
|
|
||||||
# Prepare & run integration tests
|
# Prepare & run integration tests
|
||||||
|
run_integration_tests
|
||||||
echo "Prepare nginx-test configuration"
|
|
||||||
cat example/nginx/nginx.conf | sed 's/listen 443 ssl/listen 8080 ssl/g' | dd of="test/integration/nginx.conf"
|
|
||||||
|
|
||||||
echo "Build services images..."
|
|
||||||
$DC_SCRIPT build
|
|
||||||
|
|
||||||
echo "Start services..."
|
|
||||||
run_services
|
|
||||||
docker ps -a
|
|
||||||
|
|
||||||
echo "Display services logs..."
|
|
||||||
$DC_SCRIPT logs redis
|
|
||||||
$DC_SCRIPT logs openldap
|
|
||||||
$DC_SCRIPT logs nginx
|
|
||||||
$DC_SCRIPT logs nginx-tests
|
|
||||||
$DC_SCRIPT logs authelia
|
|
||||||
|
|
||||||
echo "Check number of services"
|
|
||||||
./scripts/example/check-services.sh
|
|
||||||
|
|
||||||
echo "Run integration tests..."
|
|
||||||
$DC_SCRIPT run --rm integration-tests
|
|
||||||
|
|
||||||
echo "Shutdown services..."
|
|
||||||
$DC_SCRIPT down
|
|
||||||
|
|
||||||
# Prepare & test example from end user perspective
|
# Prepare & test example from end user perspective
|
||||||
|
run_system_tests
|
||||||
|
|
||||||
echo "Start services..."
|
# Other tests like executing the deployment script
|
||||||
run_services
|
run_other_tests
|
||||||
|
|
||||||
./node_modules/.bin/mocha --compilers ts:ts-node/register --recursive test/system
|
|
||||||
|
|
||||||
$DC_SCRIPT down
|
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ html
|
||||||
head
|
head
|
||||||
title Authelia - 2FA
|
title Authelia - 2FA
|
||||||
meta(name="viewport", content="width=device-width, initial-scale=1.0")/
|
meta(name="viewport", content="width=device-width, initial-scale=1.0")/
|
||||||
link(rel="icon", href="/img/icon.png" type="image/gif" sizes="32x32")/
|
link(rel="icon", href="/img/icon.png" type="image/png" sizes="32x32")/
|
||||||
link(rel="stylesheet", type="text/css", href="/css/authelia.min.css")/
|
link(rel="stylesheet", type="text/css", href="/css/authelia.min.css")/
|
||||||
if redirection_url
|
if redirection_url
|
||||||
<meta http-equiv="refresh" content="5;url=#{redirection_url}">
|
<meta http-equiv="refresh" content="5;url=#{redirection_url}">
|
||||||
|
|
|
@ -11,8 +11,7 @@ services:
|
||||||
nginx-tests:
|
nginx-tests:
|
||||||
image: nginx:alpine
|
image: nginx:alpine
|
||||||
volumes:
|
volumes:
|
||||||
- ./example/nginx/index.html:/usr/share/nginx/html/index.html
|
- ./example/nginx/html:/usr/share/nginx/html
|
||||||
- ./example/nginx/secret.html:/usr/share/nginx/html/secret.html
|
|
||||||
- ./example/nginx/ssl:/etc/ssl
|
- ./example/nginx/ssl:/etc/ssl
|
||||||
- ./test/integration/nginx.conf:/etc/nginx/nginx.conf
|
- ./test/integration/nginx.conf:/etc/nginx/nginx.conf
|
||||||
expose:
|
expose:
|
||||||
|
|
Loading…
Reference in New Issue