Split example scripts, allow running example using pre-built docker container (example-dockerhub) or build build from source, as it is now (example-commit).

pull/64/head
FrozenDragoon 2017-08-08 09:03:12 -05:00 committed by FrozenDragoon
parent fa6134e7f5
commit e644fe7b7b
12 changed files with 62 additions and 13 deletions

View File

@ -102,11 +102,17 @@ Add the following lines to your **/etc/hosts** to alias multiple subdomains so t
### Run it! ### Run it!
Deploy **Authelia** example with the following command: Deploy the **Authelia** example with one of the following commands:
Build Docker container from current commit:
npm install --only=dev npm install --only=dev
./node_modules/.bin/grunt build-dist ./node_modules/.bin/grunt build-dist
./scripts/example/deploy-example.sh ./scripts/example-commit/deploy-example.sh
Use provided container on [DockerHub](https://hub.docker.com/r/clems4ever/authelia/):
./scripts/example-dockerhub/deploy-example.sh
After few seconds the services should be running and you should be able to visit After few seconds the services should be running and you should be able to visit
[https://home.test.local:8080/](https://home.test.local:8080/). [https://home.test.local:8080/](https://home.test.local:8080/).

View File

@ -0,0 +1,12 @@
version: '2'
services:
authelia:
image: clems4ever/authelia:latest
restart: always
volumes:
- ./config.template.yml:/etc/authelia/config.yml:ro
- ./notifications:/var/lib/authelia/notifications
depends_on:
- redis
networks:
- example-network

View File

@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
DC_SCRIPT=./scripts/example/dc-example.sh DC_SCRIPT=./scripts/example-commit/dc-example.sh
$DC_SCRIPT build $DC_SCRIPT build
$DC_SCRIPT up -d mongo redis openldap authelia nginx $DC_SCRIPT up -d mongo redis openldap authelia nginx

View File

@ -0,0 +1,5 @@
#!/bin/bash
DC_SCRIPT=./scripts/example-commit/dc-example.sh
$DC_SCRIPT down

View File

@ -0,0 +1,11 @@
#!/bin/bash
set -e
docker-compose \
-f docker-compose.base.yml \
-f example/authelia/docker-compose.yml \
-f example/mongo/docker-compose.yml \
-f example/redis/docker-compose.yml \
-f example/nginx/docker-compose.yml \
-f example/ldap/docker-compose.yml $*

View File

@ -0,0 +1,6 @@
#!/bin/bash
DC_SCRIPT=./scripts/example-dockerhub/dc-example.sh
#$DC_SCRIPT build
$DC_SCRIPT up -d mongo redis openldap authelia nginx

View File

@ -0,0 +1,5 @@
#!/bin/bash
DC_SCRIPT=./scripts/example-dockerhub/dc-example.sh
$DC_SCRIPT down

View File

@ -1,5 +0,0 @@
#!/bin/bash
DC_SCRIPT=./scripts/example/dc-example.sh
$DC_SCRIPT down

View File

@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
DC_SCRIPT=./scripts/example/dc-example.sh DC_SCRIPT=./scripts/example-commit/dc-example.sh
EXPECTED_SERVICES_COUNT=5 EXPECTED_SERVICES_COUNT=5
start_services() { start_services() {
@ -40,7 +40,13 @@ run_other_tests() {
echo "Test dev environment deployment (commands in README)" echo "Test dev environment deployment (commands in README)"
npm install --only=dev npm install --only=dev
./node_modules/.bin/grunt build-dist ./node_modules/.bin/grunt build-dist
./scripts/example/deploy-example.sh ./scripts/example-commit/deploy-example.sh
expect_services_count 5
}
run_other_tests_docker() {
echo "Test dev docker deployment (commands in README)"
./scripts/example-dockerhub/deploy-example.sh
expect_services_count 5 expect_services_count 5
} }
@ -58,3 +64,6 @@ run_integration_tests
# Other tests like executing the deployment script # Other tests like executing the deployment script
run_other_tests run_other_tests
# Test example with precompiled container
run_other_tests_docker

View File

@ -11,10 +11,10 @@ Cucumber.defineSupportCode(function({ After, Before }) {
}); });
Before({tags: "@needs-test-config", timeout: 15 * 1000}, function () { Before({tags: "@needs-test-config", timeout: 15 * 1000}, function () {
return exec("./scripts/example/dc-example.sh -f docker-compose.test.yml up -d authelia && sleep 2"); return exec("./scripts/example-commit/dc-example.sh -f docker-compose.test.yml up -d authelia && sleep 2");
}); });
After({tags: "@needs-test-config", timeout: 15 * 1000}, function () { After({tags: "@needs-test-config", timeout: 15 * 1000}, function () {
return exec("./scripts/example/dc-example.sh up -d authelia && sleep 2"); return exec("./scripts/example-commit/dc-example.sh up -d authelia && sleep 2");
}); });
}); });

View File

@ -7,6 +7,6 @@ import BluebirdPromise = require("bluebird");
Cucumber.defineSupportCode(function ({ Given, When, Then }) { Cucumber.defineSupportCode(function ({ Given, When, Then }) {
When(/^the application restarts$/, {timeout: 15 * 1000}, function () { When(/^the application restarts$/, {timeout: 15 * 1000}, function () {
const exec = BluebirdPromise.promisify(ChildProcess.exec); const exec = BluebirdPromise.promisify(ChildProcess.exec);
return exec("./scripts/example/dc-example.sh restart authelia && sleep 2"); return exec("./scripts/example-commit/dc-example.sh restart authelia && sleep 2");
}); });
}); });