TugboatQA / docs

Tugboat Docs
https://docs.tugboat.qa
MIT License
9 stars 18 forks source link

Document how to pull database dumps from Acquia Cloud Next into a Tugboat preview #374

Open q0rban opened 11 months ago

q0rban commented 11 months ago

We have #207 , but this is not suited for Acquia Cloud Next. We need different documentation for pulling database dumps on the command-line for ACN.

q0rban commented 11 months ago

Here is an example shell script for doing this:

#!/bin/bash
set -euo pipefail

# Gets the latest database backup. 
# This requires:
#   - curl and jq be installed on the Tugboat service.
#   - two custom environment variables:
#     1. ACQUIA_CLOUD_API_KEY
#     2. ACQUIA_CLOUD_API_SECRET
# Also, specify your environment id, e.g. example.prod
environment_id=[your-environment-id]
# And specify your database name, e.g. example
database_name=[your-database-name]

# Install Acquia CLI.
curl --remote-name --location https://github.com/acquia/cli/releases/latest/download/acli.phar
chmod +x acli.phar
mv acli.phar /usr/local/bin/acli

# Login.
acli auth:login --no-interaction --key "$ACQUIA_CLOUD_API_KEY" --secret "$ACQUIA_CLOUD_API_SECRET"

# Get last backup id.
backup_id=$(acli --no-interaction api:environments:database-backup-list "$environment_id" "$database_name" | jq '.[0].id')
# Get DB backup URL.
backup_url=$(acli --no-interaction api:environments:database-backup-download "$environment_id" "$database_name" "$backup_id" | jq --raw-output '.url')

# Debug info.
echo "🤖 backup_id > $backup_id"
echo "🤖 backup_url > $backup_url"

# Download DB backup.
curl -o db-dump.sql.gz "$backup_url"
vauxia commented 11 months ago

Thank you for this. I also moved environment ID and database name to ENV so this is more cut-and-pasteable :)