Add action for database backup
This action adds support to backup databases using the following command: ccp action run backup-db -p db=<your-database-name> Change-Id: Ia84b3eb99f817256c338a94b6baaa72b3cf50fd7 Depends-on: Ic0d13c92827b12edd720b772195eaca8fcfc5ede
This commit is contained in:
parent
74b76de1fa
commit
6bdc186bc4
|
@ -0,0 +1,6 @@
|
||||||
|
FROM {{ image_spec("base-tools") }}
|
||||||
|
MAINTAINER {{ maintainer }}
|
||||||
|
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get install -y --force-yes --no-install-recommends mysql-client \
|
||||||
|
&& apt-get clean
|
|
@ -0,0 +1,13 @@
|
||||||
|
actions:
|
||||||
|
- name: backup-db
|
||||||
|
image: mysql-client
|
||||||
|
dependencies:
|
||||||
|
- {{ serivce.database }}
|
||||||
|
parameters:
|
||||||
|
- key: db
|
||||||
|
default_value: null
|
||||||
|
command: /opt/ccp/bin/backup-db.sh
|
||||||
|
files:
|
||||||
|
- path: /opt/ccp/bin/backup-db.sh
|
||||||
|
content: backup-db.sh.j2
|
||||||
|
perm: "0700"
|
|
@ -0,0 +1,12 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
DB_NAME="{{ action_parameters.db }}"
|
||||||
|
BACKUP_FILE="/var/ccp/backup/${DB_NAME}/backup-$(date "+%Y%m%d%H%M%S").sql"
|
||||||
|
|
||||||
|
mkdir -p "$(dirname ${BACKUP_FILE})"
|
||||||
|
|
||||||
|
mysqldump {% if db.tls.enabled %} --ssl-mode REQUIRED {% endif %} -h {{ address(service.database) }} \
|
||||||
|
-uroot -p{{ db.root_password }} \
|
||||||
|
--single-transaction --routines --triggers "${DB_NAME}" > "${BACKUP_FILE}"
|
Loading…
Reference in New Issue