47 lines
1.8 KiB
YAML
47 lines
1.8 KiB
YAML
version: "3"
|
|
|
|
tasks:
|
|
|
|
pull:
|
|
desc: Pull remote Gitea DB into local DB
|
|
aliases: [gp]
|
|
silent: true
|
|
cmds:
|
|
- task db:reset
|
|
- |
|
|
ssh {{.REMOTE_USER}}@{{.REMOTE_HOST}} \
|
|
"docker exec {{.GITEA_SERVICE}} pg_dump -U {{.GITEA_USER}} {{.GITEA_DB}}" | docker compose -p {{.PROJECT}} exec -T {{.DB_SERVICE_NAME}} sh -c "PGPASSWORD='{{.DB_PASSWORD}}' psql -U {{.DB_USER}} -d {{.DB_NAME}}"
|
|
|
|
|
|
dump:
|
|
desc: Dump remote Gitea DB to file
|
|
aliases: [gd]
|
|
silent: true
|
|
cmds:
|
|
- |
|
|
ssh {{.REMOTE_USER}}@{{.REMOTE_HOST}} "docker exec {{.GITEA_SERVICE}} pg_dump -U {{.GITEA_USER}} {{.GITEA_DB}}" > {{.DUMP_FILE_NAME}}
|
|
|
|
|
|
gitea_pull_db_to_file_ma_al_pl:
|
|
desc: Pull remote Gitea DB and upload to file.ma-al.pl
|
|
aliases: [rdbtfmpl]
|
|
silent: true
|
|
vars:
|
|
SERVER: https://file.ma-al.pl
|
|
TARGET_DIR: maal_internal/timetracker/dumps
|
|
TMP_DIR: /tmp
|
|
TOKEN:
|
|
sh: |
|
|
curl -s -u "{{.FILE_MAAL_PL_USER}}:{{.FILE_MAAL_PL_PASSWORD}}" "{{.SERVER}}/api/v2/user/token" | jq -r .access_token
|
|
preconditions:
|
|
- sh: '[ -n "{{.FILE_MAAL_PL_USER}}" ]'
|
|
msg: "Missing FILE_MAAL_PL_USER in .env"
|
|
- sh: '[ -n "{{.FILE_MAAL_PL_PASSWORD}}" ]'
|
|
msg: "Missing FILE_MAAL_PL_PASSWORD in .env"
|
|
cmds:
|
|
- |
|
|
ssh {{.REMOTE_USER}}@{{.REMOTE_HOST}} "docker exec {{.GITEA_REMOTE_SERVICE}} pg_dump -U {{.GITEA_REMOTE_DB_USER}} {{.GITEA_REMOTE_DB_NAME}}" > {{.TMP_DIR}}/{{.DUMP_FILE_NAME}}
|
|
- >
|
|
curl -X POST "{{.SERVER}}/api/v2/user/files/upload?path={{.TARGET_DIR}}/{{.DUMP_FILE_NAME}}&mkdir_parents=true" -H "Authorization: Bearer {{.TOKEN}}" -H "Content-Type: application/x-tar" --data-binary "@{{.TMP_DIR}}/{{.DUMP_FILE_NAME}}"
|
|
- |
|
|
rm -f {{.TMP_DIR}}/{{.DUMP_FILE_NAME}} |