mirror of
https://github.com/offen/docker-volume-backup.git
synced 2024-11-26 23:20:28 +01:00
Frederik Ring
1e39ac41f4
* Try running tests in Docker * Spawn new container for each test * Store test artifacts outside of mount * When requested, build up to date image in test script * sudo is unneccessary in containerized test env * Skip azure test * Backdate fixture file in JSON database * Pin versions for azure tools * Mount temp volume for /var/lib/docker to prevent dangling ones created by VOLUME instruction * Fail backdating tests with message * Add some documentation on test setup * Cache images * Run compose stacks with shortened default timeout
51 lines
1.3 KiB
YAML
51 lines
1.3 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
database:
|
|
image: mariadb:10.7
|
|
deploy:
|
|
restart_policy:
|
|
condition: on-failure
|
|
environment:
|
|
MARIADB_ROOT_PASSWORD: test
|
|
MARIADB_DATABASE: backup
|
|
labels:
|
|
# this is testing the deprecated label on purpose
|
|
- docker-volume-backup.exec-pre=/bin/sh -c 'mysqldump -ptest --all-databases > /tmp/volume/dump.sql'
|
|
- docker-volume-backup.copy-post=/bin/sh -c 'echo "post" > /tmp/volume/post.txt'
|
|
- docker-volume-backup.exec-label=test
|
|
volumes:
|
|
- app_data:/tmp/volume
|
|
|
|
other_database:
|
|
image: mariadb:10.7
|
|
deploy:
|
|
restart_policy:
|
|
condition: on-failure
|
|
environment:
|
|
MARIADB_ROOT_PASSWORD: test
|
|
MARIADB_DATABASE: backup
|
|
labels:
|
|
- docker-volume-backup.archive-pre=touch /tmp/volume/not-relevant.txt
|
|
- docker-volume-backup.exec-label=not-relevant
|
|
volumes:
|
|
- app_data:/tmp/volume
|
|
|
|
backup:
|
|
image: offen/docker-volume-backup:${TEST_VERSION:-canary}
|
|
deploy:
|
|
restart_policy:
|
|
condition: on-failure
|
|
environment:
|
|
BACKUP_FILENAME: test.tar.gz
|
|
BACKUP_CRON_EXPRESSION: 0 0 5 31 2 ?
|
|
EXEC_LABEL: test
|
|
EXEC_FORWARD_OUTPUT: "true"
|
|
volumes:
|
|
- ${LOCAL_DIR:-./local}:/archive
|
|
- app_data:/backup/data:ro
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
volumes:
|
|
app_data:
|