9 Commits

3 changed files with 31 additions and 19 deletions

View File

@ -3,10 +3,12 @@ kind: pipeline
name: deploy to swarm-test.autonomic.zone
steps:
- name: deployment
image: decentral1se/stack-ssh-deploy:latest
image: git.coopcloud.tech/coop-cloud/stack-ssh-deploy:latest
settings:
host: swarm-test.autonomic.zone
stack: kimai
networks:
- proxy
deploy_key:
from_secret: drone_ssh_swarm_test
generate_secrets: true
@ -16,19 +18,26 @@ steps:
STACK_NAME: kimai
LETS_ENCRYPT_ENV: production
ENTRYPOINT_CONF_VERSION: v1
ADMIN_PASSWORD_VERSION: v1
DB_PASSWORD_VERSION: v1
DB_ROOT_PASSWORD_VERSION: v1
LOCAL_CONF_VERSION: v1
SECRET_DB_PASSWORD_VERSION: v1
SECRET_DB_ROOT_PASSWORD_VERSION: v1
SECRET_ADMIN_PASSWORD_VERSION: v1
trigger:
branch:
- main
---
kind: pipeline
name: recipe release
name: generate recipe catalogue
steps:
- name: release a new version
image: thecoopcloud/drone-abra:latest
image: plugins/downstream
settings:
command: recipe kimai release
deploy_key:
from_secret: abra_bot_deploy_key
server: https://build.coopcloud.tech
token:
from_secret: drone_abra-bot_token
fork: true
repositories:
- coop-cloud/auto-recipes-catalogue-json
trigger:
event: tag

View File

@ -20,9 +20,9 @@ Based on the recommended [`tobybatch/kimai2`] compose file.
1. Set up Docker Swarm and [`abra`]
2. Deploy [`coop-cloud/traefik`]
3. `abra app new kimai --secrets`
4. `abra app YOURAPPDOMAIN config` - be sure to change `$DOMAIN` to something that resolves to
4. `abra app config YOURAPPDOMAIN` - be sure to change `$DOMAIN` to something that resolves to
your Docker swarm box
5. `abra app YOURAPPDOMAIN deploy`
5. `abra app deploy YOURAPPDOMAIN`
6. `abra app run YOURAPPDOMAIN app create_admin`
[Kimai]: https://www.kimai.org/

View File

@ -1,7 +1,7 @@
version: '3.8'
services:
app:
image: kimai/kimai2:apache-1.26.0-prod
image: kimai/kimai2:apache-1.29.1-prod
environment:
- APP_ENV=prod
- TRUSTED_HOSTS=localhost,traefik,${DOMAIN},127.0.0.1
@ -36,7 +36,6 @@ services:
- admin_password
depends_on:
- db
#entrypoint: ['tail', '-f', '/dev/null']
entrypoint: /docker-entrypoint.sh
#healthcheck:
# test: curl -s -o /dev/null http://localhost:8001 || exit 1
@ -57,7 +56,7 @@ services:
- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect"
- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true"
- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}"
- coop-cloud.${STACK_NAME}.app.version=0.1.0+apache-debian-1.26.0-prod
- "coop-cloud.${STACK_NAME}.version=0.2.0+apache-debian-1.29.1-prod"
db:
image: mysql:5.7
environment:
@ -79,18 +78,19 @@ services:
# start_period: 10s
# timeout: 10s
# retries: 3
deploy:
labels:
- backupbot.backup="true"
- backupbot.backup.pre-hook='mkdir -p /tmp/backup/ && mysqldump --single-transaction -u root -p"$$(cat /run/secrets/db_root_password)" kimai > /tmp/backup/backup.sql'
- backupbot.backup.post-hook="rm -rf /tmp/backup"
- backupbot.backup.path="/tmp/backup/"
- "backupbot.backup=true"
- "backupbot.backup.pre-hook=sh -c 'mysqldump --single-transaction -u root -p\"$$(cat /run/secrets/db_root_password)\" kimai > /tmp/backup.sql'"
- "backupbot.backup.post-hook=rm -rf /tmp/backup.sql"
- "backupbot.backup.path=/tmp/backup.sql"
volumes:
kimai_var:
kimai_public:
mariadb:
secrets:
db_password:
external: true
@ -101,10 +101,13 @@ secrets:
admin_password:
external: true
name: ${STACK_NAME}_admin_password_${SECRET_ADMIN_PASSWORD_VERSION}
networks:
proxy:
external: true
internal:
configs:
entrypoint_conf:
name: ${STACK_NAME}_entrypoint_${ENTRYPOINT_CONF_VERSION}