Merge pull request #6 from usrpro/feat-travis-deploy

Tavis-ci to upload images to the Docker hub, after succesfull tests.
master
Tim Möhlmann 6 years ago committed by GitHub
commit 9c266cc8e5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -11,3 +11,9 @@ script:
- docker-compose -f tests/build.yml -p Mailu build
- tests/compose/test-script.sh
deploy:
provider: script
script: bash tests/deploy.sh
on:
all_branches: true

@ -3,45 +3,45 @@ version: '3'
services:
front:
image: mailu/nginx:$VERSION
image: $DOCKER_ORG/nginx:$VERSION
build: ../core/nginx
imap:
image: mailu/dovecot:$VERSION
image: $DOCKER_ORG/dovecot:$VERSION
build: ../core/dovecot
smtp:
image: mailu/postfix:$VERSION
image: $DOCKER_ORG/postfix:$VERSION
build: ../core/postfix
antispam:
image: mailu/rspamd:$VERSION
image: $DOCKER_ORG/rspamd:$VERSION
build: ../services/rspamd
antivirus:
image: mailu/clamav:$VERSION
image: $DOCKER_ORG/clamav:$VERSION
build: ../optional/clamav
webdav:
image: mailu/radicale:$VERSION
image: $DOCKER_ORG/radicale:$VERSION
build: ../optional/radicale
admin:
image: mailu/admin:$VERSION
image: $DOCKER_ORG/admin:$VERSION
build: ../core/admin
roundcube:
image: mailu/roundcube:$VERSION
image: $DOCKER_ORG/roundcube:$VERSION
build: ../webmails/roundcube
rainloop:
image: mailu/rainloop:$VERSION
image: $DOCKER_ORG/rainloop:$VERSION
build: ../webmails/rainloop
fetchmail:
image: mailu/fetchmail:$VERSION
image: $DOCKER_ORG/fetchmail:$VERSION
build: ../services/fetchmail
none:
image: mailu/none:$VERSION
image: $DOCKER_ORG/none:$VERSION
build: ../core/none

@ -121,7 +121,7 @@ WEBSITE=https://mailu.io
###################################
# Docker-compose project name, this will prepended to containers names.
COMPOSE_PROJECT_NAME=mailu
#COMPOSE_PROJECT_NAME=mailu
# Default password scheme used for newly created accounts and changed passwords
# (value: SHA512-CRYPT, SHA256-CRYPT, MD5-CRYPT, CRYPT)

@ -3,7 +3,7 @@ version: '2'
services:
front:
image: mailu/nginx:$VERSION
image: $DOCKER_ORG/nginx:$VERSION
restart: 'no'
env_file: $PWD/.env
ports:
@ -26,7 +26,7 @@ services:
- "$ROOT/redis:/data"
imap:
image: mailu/dovecot:$VERSION
image: $DOCKER_ORG/dovecot:$VERSION
restart: 'no'
env_file: $PWD/.env
volumes:
@ -37,7 +37,7 @@ services:
- front
smtp:
image: mailu/postfix:$VERSION
image: $DOCKER_ORG/postfix:$VERSION
restart: 'no'
env_file: $PWD/.env
volumes:
@ -47,7 +47,7 @@ services:
- front
antispam:
image: mailu/rspamd:$VERSION
image: $DOCKER_ORG/rspamd:$VERSION
restart: 'no'
env_file: $PWD/.env
volumes:
@ -58,21 +58,21 @@ services:
- front
antivirus:
image: mailu/$ANTIVIRUS:$VERSION
image: $DOCKER_ORG/$ANTIVIRUS:$VERSION
restart: 'no'
env_file: $PWD/.env
volumes:
- "$ROOT/filter:/data"
webdav:
image: mailu/$WEBDAV:$VERSION
image: $DOCKER_ORG/$WEBDAV:$VERSION
restart: 'no'
env_file: $PWD/.env
volumes:
- "$ROOT/dav:/data"
admin:
image: mailu/admin:$VERSION
image: $DOCKER_ORG/admin:$VERSION
restart: 'no'
env_file: $PWD/.env
volumes:
@ -83,7 +83,7 @@ services:
- redis
webmail:
image: "mailu/$WEBMAIL:$VERSION"
image: "$DOCKER_ORG/$WEBMAIL:$VERSION"
restart: 'no'
env_file: $PWD/.env
volumes:
@ -92,7 +92,7 @@ services:
- imap
fetchmail:
image: mailu/fetchmail:$VERSION
image: $DOCKER_ORG/fetchmail:$VERSION
restart: 'no'
env_file: $PWD/.env
volumes:

@ -1,36 +1,36 @@
#!/bin/bash
containers=(
mailu_webmail_1
mailu_imap_1
mailu_smtp_1
mailu_antispam_1
mailu_admin_1
mailu_redis_1
mailu_antivirus_1
mailu_webdav_1
# mailu_fetchmail_1
mailu_front_1
webmail_1
imap_1
smtp_1
antispam_1
admin_1
redis_1
antivirus_1
webdav_1
# fetchmail_1
front_1
)
containers_check() {
STATUS=0
for container in "${containers[@]}"; do
echo "Checking $container"
docker inspect $container | grep '"Status": "running"' || STATUS=1
echo "Checking ${DOCKER_ORG}_${container}"
docker inspect "${DOCKER_ORG}_${container}" | grep '"Status": "running"' || STATUS=1
done
return $STATUS
}
container_logs() {
for container in "${containers[@]}"; do
echo "Showing logs for $container"
docker container logs $container
echo "Showing logs for ${DOCKER_ORG}_${container}"
docker container logs "${DOCKER_ORG}_${container}"
done
}
for file in tests/compose/*.env ; do
cp $file .env
docker-compose -f tests/compose/run.yml up -d
docker-compose -f tests/compose/run.yml -p $DOCKER_ORG up -d
sleep 1m
docker ps
container_logs

@ -0,0 +1,4 @@
#!/bin/bash
docker login -u $DOCKER_UN -p $DOCKER_PW
docker-compose -f tests/build.yml push
Loading…
Cancel
Save