Add tests for main, app, accessory, traefik and lock commands. Other commands are generally covered by the main tests. Also adds some changes to speed up the integration specs: - Use a persistent volume for the registry so we can push images to to reuse between runs (also gets around docker hub rate limits) - Use persistent volume for mrsk gem install, to avoid re-installing between tests - Shorter stop wait time - Shorter connection timeouts on the load balancer Takes just over 2 minutes to run all tests locally on an M1 Mac after docker caches are primed.
28 lines
551 B
YAML
28 lines
551 B
YAML
service: app
|
|
image: app
|
|
servers:
|
|
- vm1
|
|
- vm2
|
|
registry:
|
|
server: registry:4443
|
|
username: root
|
|
password: root
|
|
builder:
|
|
multiarch: false
|
|
args:
|
|
COMMIT_SHA: <%= `git rev-parse HEAD` %>
|
|
healthcheck:
|
|
cmd: wget -qO- http://localhost > /dev/null
|
|
traefik:
|
|
args:
|
|
accesslog: true
|
|
accesslog.format: json
|
|
image: registry:4443/traefik:v2.9
|
|
accessories:
|
|
busybox:
|
|
image: registry:4443/busybox:1.36.0
|
|
cmd: sh -c 'echo "Starting busybox..."; trap exit term; while true; do sleep 1; done'
|
|
roles:
|
|
- web
|
|
stop_wait_time: 1
|