Skip to content

Commit 51c4415

Browse files
authored
Ported recent shell script changes to PHP tooling package. (#2415)
1 parent 4162a2c commit 51c4415

12 files changed

Lines changed: 301 additions & 133 deletions

.vortex/tooling/src/deploy-artifact

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,10 +62,18 @@ $deploy_ssh_fingerprint = getenv_default('VORTEX_DEPLOY_ARTIFACT_SSH_FINGERPRINT
6262
// Falls back to VORTEX_DEPLOY_SSH_FILE, then VORTEX_SSH_FILE.
6363
$deploy_ssh_file = getenv_default('VORTEX_DEPLOY_ARTIFACT_SSH_FILE', 'VORTEX_DEPLOY_SSH_FILE', 'VORTEX_SSH_FILE', getenv('HOME') . '/.ssh/id_rsa');
6464

65+
// Version of git-artifact to download.
66+
$git_artifact_version = getenv_default('VORTEX_DEPLOY_ARTIFACT_GIT_ARTIFACT_VERSION', '1.4.0');
67+
68+
// SHA256 checksum of the git-artifact binary.
69+
$git_artifact_sha256 = getenv_default('VORTEX_DEPLOY_ARTIFACT_GIT_ARTIFACT_SHA256', '1fa99ff2a6f8dc6c1a42bcfc87ce75d04b2eab375216b0e3195a0e3b51a47646');
70+
6571
// -----------------------------------------------------------------------------
6672

6773
info('Started ARTIFACT deployment.');
6874

75+
command_must_exist('curl');
76+
6977
// Configure global git settings, if they do not exist.
7078
$global_git_name = trim((string) shell_exec('git config --global user.name'));
7179
if (empty($global_git_name)) {
@@ -86,7 +94,20 @@ putenv('VORTEX_SSH_PREFIX=DEPLOY_ARTIFACT');
8694
passthru_or_fail(__DIR__ . '/setup-ssh');
8795

8896
task('Installing artifact builder.');
89-
passthru_or_fail('composer global require --dev -n --ansi --prefer-source --ignore-platform-reqs drevops/git-artifact:~1.2');
97+
$tmp_dir = getenv('TMPDIR') ?: '/tmp';
98+
$git_artifact_bin = $tmp_dir . '/git-artifact';
99+
$git_artifact_url = sprintf('https://github.com/drevops/git-artifact/releases/download/%s/git-artifact', $git_artifact_version);
100+
$dl_response = request($git_artifact_url, ['method' => 'GET', 'save_to' => $git_artifact_bin, 'timeout' => 120]);
101+
if (!$dl_response['ok']) {
102+
fail('Failed to download git-artifact binary.');
103+
}
104+
105+
$actual_sha256 = hash_file('sha256', $git_artifact_bin);
106+
if ($actual_sha256 !== $git_artifact_sha256) {
107+
@unlink($git_artifact_bin);
108+
fail('SHA256 checksum verification failed for git-artifact binary.');
109+
}
110+
chmod($git_artifact_bin, 0755);
90111

91112
$deploy_artifact_root = realpath($deploy_artifact_root);
92113
$deploy_artifact_src = realpath($deploy_artifact_src);
@@ -106,7 +127,6 @@ if (file_exists($deploy_artifact_root . '/.gitignore.artifact')) {
106127
}
107128

108129
task('Running artifact builder.');
109-
$git_artifact_bin = getenv('HOME') . '/.composer/vendor/bin/git-artifact';
110130
$git_artifact_args = [
111131
escapeshellarg($git_artifact_bin),
112132
escapeshellarg($deploy_git_remote),

.vortex/tooling/src/download-db

Lines changed: 34 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -19,55 +19,64 @@ execute_override(basename(__FILE__));
1919

2020
// -----------------------------------------------------------------------------
2121

22+
// Database index suffix. When set (e.g., "2"), all DB-related variable lookups
23+
// use the indexed variant (e.g., VORTEX_DOWNLOAD_DB2_SOURCE instead of
24+
// VORTEX_DOWNLOAD_DB_SOURCE).
25+
$db_index = getenv_default('VORTEX_DB_INDEX', '');
26+
2227
// Database download source.
23-
$source = getenv_default('VORTEX_DOWNLOAD_DB_SOURCE', 'url');
28+
$source = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_SOURCE', 'VORTEX_DOWNLOAD_DB_SOURCE', 'url'])));
2429

2530
// Force DB download even if the cache exists.
26-
$force = getenv_default('VORTEX_DOWNLOAD_DB_FORCE', '');
31+
$force = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_FORCE', 'VORTEX_DOWNLOAD_DB_FORCE', ''])));
2732

2833
// Proceed with download.
29-
$proceed = getenv_default('VORTEX_DOWNLOAD_DB_PROCEED', '1');
34+
$proceed = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_PROCEED', 'VORTEX_DOWNLOAD_DB_PROCEED', '1'])));
3035

3136
// Database dump file name.
32-
$db_file = getenv_default('VORTEX_DOWNLOAD_DB_FILE', 'VORTEX_DB_FILE', 'db.sql');
37+
$db_file = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_FILE', 'VORTEX_DB' . $db_index . '_FILE', 'VORTEX_DOWNLOAD_DB_FILE', 'VORTEX_DB_FILE', 'db.sql'])));
3338

3439
// Directory with database dump file.
35-
$db_dir = getenv_default('VORTEX_DOWNLOAD_DB_DIR', 'VORTEX_DB_DIR', './.data');
40+
$db_dir = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_DIR', 'VORTEX_DB' . $db_index . '_DIR', 'VORTEX_DOWNLOAD_DB_DIR', 'VORTEX_DB_DIR', './.data'])));
3641

3742
// Semaphore file to indicate download completion.
3843
$semaphore = getenv_default('VORTEX_DOWNLOAD_DB_SEMAPHORE', '');
3944

4045
// -----------------------------------------------------------------------------
4146

42-
info('Started database download.');
47+
info('Started database%s download.', $db_index !== '' ? ' ' . $db_index : '');
4348

4449
if ($proceed !== '1') {
4550
pass('Skipping database download as VORTEX_DOWNLOAD_DB_PROCEED is not set to 1.');
4651
quit(0);
4752
}
4853

49-
// Check for existing dump files.
50-
$db_file_basename = pathinfo($db_file, PATHINFO_FILENAME);
51-
$found_db = '';
52-
if (is_dir($db_dir)) {
53-
$files = glob($db_dir . '/' . $db_file_basename . '.{sql,tar}', GLOB_BRACE);
54-
if ($files !== FALSE && count($files) > 0) {
55-
$found_db = implode("\n", $files);
54+
// Skip file existence check for container_registry source as the database is
55+
// stored as a Docker image, not a file.
56+
if ($source !== 'container_registry') {
57+
// Check for existing dump files.
58+
$db_file_basename = pathinfo($db_file, PATHINFO_FILENAME);
59+
$found_db = '';
60+
if (is_dir($db_dir)) {
61+
$files = glob($db_dir . '/' . $db_file_basename . '.{sql,tar}', GLOB_BRACE);
62+
if ($files !== FALSE && count($files) > 0) {
63+
$found_db = implode("\n", $files);
64+
}
5665
}
57-
}
5866

59-
if ($found_db !== '') {
60-
note('Found existing database dump file(s).');
61-
passthru('ls -Alh ' . escapeshellarg($db_dir) . ' 2>/dev/null || true');
67+
if ($found_db !== '') {
68+
note('Found existing database dump file(s).');
69+
passthru('ls -Alh ' . escapeshellarg($db_dir) . ' 2>/dev/null || true');
6270

63-
if ($force !== '1') {
64-
note('Using existing database dump file(s).');
65-
note('Download will not proceed.');
66-
note('Remove existing database file or set VORTEX_DOWNLOAD_DB_FORCE value to 1 to force download.');
67-
quit(0);
68-
}
71+
if ($force !== '1') {
72+
note('Using existing database dump file(s).');
73+
note('Download will not proceed.');
74+
note('Remove existing database file or set VORTEX_DOWNLOAD_DB_FORCE value to 1 to force download.');
75+
quit(0);
76+
}
6977

70-
note('Will download a fresh copy of the database.');
78+
note('Will download a fresh copy of the database.');
79+
}
7180
}
7281

7382
$sources = [
@@ -92,4 +101,4 @@ if ($semaphore !== '') {
92101
touch($semaphore);
93102
}
94103

95-
pass('Finished database download.');
104+
pass('Finished database%s download.', $db_index !== '' ? ' ' . $db_index : '');

.vortex/tooling/src/download-db-acquia

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,35 +21,38 @@ execute_override(basename(__FILE__));
2121

2222
// -----------------------------------------------------------------------------
2323

24+
// Database index suffix.
25+
$db_index = getenv_default('VORTEX_DB_INDEX', '');
26+
2427
// Acquia Cloud API key.
25-
$acquia_key = getenv_required('VORTEX_DOWNLOAD_DB_ACQUIA_KEY', 'VORTEX_ACQUIA_KEY');
28+
$acquia_key = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_ACQUIA_KEY', 'VORTEX_DOWNLOAD_DB_ACQUIA_KEY', 'VORTEX_ACQUIA_KEY'])));
2629

2730
// Acquia Cloud API secret.
28-
$acquia_secret = getenv_required('VORTEX_DOWNLOAD_DB_ACQUIA_SECRET', 'VORTEX_ACQUIA_SECRET');
31+
$acquia_secret = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_ACQUIA_SECRET', 'VORTEX_DOWNLOAD_DB_ACQUIA_SECRET', 'VORTEX_ACQUIA_SECRET'])));
2932

3033
// Application name. Used to discover UUID.
31-
$app_name = getenv_required('VORTEX_DOWNLOAD_DB_ACQUIA_APP_NAME', 'VORTEX_ACQUIA_APP_NAME');
34+
$app_name = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_ACQUIA_APP_NAME', 'VORTEX_DOWNLOAD_DB_ACQUIA_APP_NAME', 'VORTEX_ACQUIA_APP_NAME'])));
3235

3336
// Source environment name used to download the database dump from.
34-
$environment = getenv_required('VORTEX_DOWNLOAD_DB_ENVIRONMENT');
37+
$environment = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_ENVIRONMENT', 'VORTEX_DOWNLOAD_DB_ENVIRONMENT'])));
3538

3639
// Database name within source environment.
37-
$db_name = getenv_required('VORTEX_DOWNLOAD_DB_ACQUIA_DB_NAME');
40+
$db_name = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_ACQUIA_DB_NAME', 'VORTEX_DOWNLOAD_DB_ACQUIA_DB_NAME'])));
3841

3942
// Directory where DB dumps are stored.
40-
$db_dir = getenv_default('VORTEX_DOWNLOAD_DB_ACQUIA_DB_DIR', 'VORTEX_DOWNLOAD_DB_DIR', 'VORTEX_DB_DIR', './.data');
43+
$db_dir = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_ACQUIA_DB_DIR', 'VORTEX_DOWNLOAD_DB' . $db_index . '_DIR', 'VORTEX_DB' . $db_index . '_DIR', 'VORTEX_DOWNLOAD_DB_ACQUIA_DB_DIR', 'VORTEX_DOWNLOAD_DB_DIR', 'VORTEX_DB_DIR', './.data'])));
4144

4245
// Database dump file name.
43-
$db_file = getenv_default('VORTEX_DOWNLOAD_DB_ACQUIA_DB_FILE', 'VORTEX_DOWNLOAD_DB_FILE', 'VORTEX_DB_FILE', 'db.sql');
46+
$db_file = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_ACQUIA_DB_FILE', 'VORTEX_DOWNLOAD_DB' . $db_index . '_FILE', 'VORTEX_DB' . $db_index . '_FILE', 'VORTEX_DOWNLOAD_DB_ACQUIA_DB_FILE', 'VORTEX_DOWNLOAD_DB_FILE', 'VORTEX_DB_FILE', 'db.sql'])));
4447

4548
// Flag to download a fresh copy by triggering a new backup.
46-
$fresh = getenv_default('VORTEX_DOWNLOAD_DB_FRESH', '');
49+
$fresh = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_FRESH', 'VORTEX_DOWNLOAD_DB_FRESH', ''])));
4750

4851
// Interval in seconds to wait between backup status checks.
49-
$backup_wait_interval = (int) getenv_default('VORTEX_DOWNLOAD_DB_ACQUIA_BACKUP_WAIT_INTERVAL', '10');
52+
$backup_wait_interval = (int) getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_ACQUIA_BACKUP_WAIT_INTERVAL', 'VORTEX_DOWNLOAD_DB_ACQUIA_BACKUP_WAIT_INTERVAL', '10'])));
5053

5154
// Maximum time in seconds to wait for backup completion.
52-
$backup_max_wait = (int) getenv_default('VORTEX_DOWNLOAD_DB_ACQUIA_BACKUP_MAX_WAIT', '600');
55+
$backup_max_wait = (int) getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_ACQUIA_BACKUP_MAX_WAIT', 'VORTEX_DOWNLOAD_DB_ACQUIA_BACKUP_MAX_WAIT', '600'])));
5356

5457
// -----------------------------------------------------------------------------
5558

.vortex/tooling/src/download-db-container-registry

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,25 +17,28 @@ execute_override(basename(__FILE__));
1717

1818
// -----------------------------------------------------------------------------
1919

20+
// Database index suffix.
21+
$db_index = getenv_default('VORTEX_DB_INDEX', '');
22+
2023
// The container image containing database in a form of `<org>/<repository>`.
21-
$image = getenv_required('VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY_IMAGE', 'VORTEX_DB_IMAGE');
24+
$image = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_CONTAINER_REGISTRY_IMAGE', 'VORTEX_DB' . $db_index . '_IMAGE', 'VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY_IMAGE', 'VORTEX_DB_IMAGE'])));
2225

2326
// Container registry name.
2427
//
2528
// Provide port, if required as `<server_name>:<port>`.
26-
$registry = getenv_default('VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY', 'VORTEX_CONTAINER_REGISTRY', 'docker.io');
29+
$registry = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_CONTAINER_REGISTRY', 'VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY', 'VORTEX_CONTAINER_REGISTRY', 'docker.io'])));
2730

2831
// The username to login into the container registry.
29-
$registry_user = getenv_required('VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY_USER', 'VORTEX_CONTAINER_REGISTRY_USER');
32+
$registry_user = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_CONTAINER_REGISTRY_USER', 'VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY_USER', 'VORTEX_CONTAINER_REGISTRY_USER'])));
3033

3134
// The password to login into the container registry.
32-
$registry_pass = getenv_required('VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY_PASS', 'VORTEX_CONTAINER_REGISTRY_PASS');
35+
$registry_pass = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_CONTAINER_REGISTRY_PASS', 'VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY_PASS', 'VORTEX_CONTAINER_REGISTRY_PASS'])));
3336

3437
// Directory with database dump file.
35-
$db_dir = getenv_default('VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY_DB_DIR', 'VORTEX_DOWNLOAD_DB_DIR', 'VORTEX_DB_DIR', './.data');
38+
$db_dir = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_CONTAINER_REGISTRY_DB_DIR', 'VORTEX_DOWNLOAD_DB' . $db_index . '_DIR', 'VORTEX_DB' . $db_index . '_DIR', 'VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY_DB_DIR', 'VORTEX_DOWNLOAD_DB_DIR', 'VORTEX_DB_DIR', './.data'])));
3639

3740
// The base container image used as a fallback when the archive does not exist.
38-
$image_base = getenv_default('VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY_IMAGE_BASE', 'VORTEX_DB_IMAGE_BASE', '');
41+
$image_base = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_CONTAINER_REGISTRY_IMAGE_BASE', 'VORTEX_DB' . $db_index . '_IMAGE_BASE', 'VORTEX_DOWNLOAD_DB_CONTAINER_REGISTRY_IMAGE_BASE', 'VORTEX_DB_IMAGE_BASE', ''])));
3942

4043
// -----------------------------------------------------------------------------
4144

.vortex/tooling/src/download-db-ftp

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,26 +17,29 @@ execute_override(basename(__FILE__));
1717

1818
// -----------------------------------------------------------------------------
1919

20+
// Database index suffix.
21+
$db_index = getenv_default('VORTEX_DB_INDEX', '');
22+
2023
// The FTP user.
21-
$ftp_user = getenv_required('VORTEX_DOWNLOAD_DB_FTP_USER');
24+
$ftp_user = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_FTP_USER', 'VORTEX_DOWNLOAD_DB_FTP_USER'])));
2225

2326
// The FTP password.
24-
$ftp_pass = getenv_required('VORTEX_DOWNLOAD_DB_FTP_PASS');
27+
$ftp_pass = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_FTP_PASS', 'VORTEX_DOWNLOAD_DB_FTP_PASS'])));
2528

2629
// The FTP host.
27-
$ftp_host = getenv_required('VORTEX_DOWNLOAD_DB_FTP_HOST');
30+
$ftp_host = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_FTP_HOST', 'VORTEX_DOWNLOAD_DB_FTP_HOST'])));
2831

2932
// The FTP port.
30-
$ftp_port = getenv_required('VORTEX_DOWNLOAD_DB_FTP_PORT');
33+
$ftp_port = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_FTP_PORT', 'VORTEX_DOWNLOAD_DB_FTP_PORT'])));
3134

3235
// The file name, including any directories.
33-
$ftp_file = getenv_required('VORTEX_DOWNLOAD_DB_FTP_FILE');
36+
$ftp_file = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_FTP_FILE', 'VORTEX_DOWNLOAD_DB_FTP_FILE'])));
3437

3538
// Directory with database dump file.
36-
$db_dir = getenv_default('VORTEX_DOWNLOAD_DB_FTP_DB_DIR', 'VORTEX_DOWNLOAD_DB_DIR', 'VORTEX_DB_DIR', './.data');
39+
$db_dir = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_FTP_DB_DIR', 'VORTEX_DOWNLOAD_DB' . $db_index . '_DIR', 'VORTEX_DB' . $db_index . '_DIR', 'VORTEX_DOWNLOAD_DB_FTP_DB_DIR', 'VORTEX_DOWNLOAD_DB_DIR', 'VORTEX_DB_DIR', './.data'])));
3740

3841
// Database dump file name.
39-
$db_file = getenv_default('VORTEX_DOWNLOAD_DB_FTP_DB_FILE', 'VORTEX_DOWNLOAD_DB_FILE', 'VORTEX_DB_FILE', 'db.sql');
42+
$db_file = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_FTP_DB_FILE', 'VORTEX_DOWNLOAD_DB' . $db_index . '_FILE', 'VORTEX_DB' . $db_index . '_FILE', 'VORTEX_DOWNLOAD_DB_FTP_DB_FILE', 'VORTEX_DOWNLOAD_DB_FILE', 'VORTEX_DB_FILE', 'db.sql'])));
4043

4144
// -----------------------------------------------------------------------------
4245

.vortex/tooling/src/download-db-lagoon

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -26,41 +26,47 @@ execute_override(basename(__FILE__));
2626

2727
// -----------------------------------------------------------------------------
2828

29+
// Database index suffix.
30+
$db_index = getenv_default('VORTEX_DB_INDEX', '');
31+
2932
// Flag to download a fresh copy of the database.
30-
$fresh = getenv_default('VORTEX_DOWNLOAD_DB_FRESH', '');
33+
$fresh = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_FRESH', 'VORTEX_DOWNLOAD_DB_FRESH', ''])));
3134

3235
// Lagoon project name.
33-
$lagoon_project = getenv_required('VORTEX_DOWNLOAD_DB_LAGOON_PROJECT', 'LAGOON_PROJECT');
36+
$lagoon_project = getenv_required(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_LAGOON_PROJECT', 'VORTEX_DOWNLOAD_DB_LAGOON_PROJECT', 'LAGOON_PROJECT'])));
3437

3538
// The source environment branch for the database source.
36-
$environment = getenv_default('VORTEX_DOWNLOAD_DB_ENVIRONMENT', 'main');
39+
$environment = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_ENVIRONMENT', 'VORTEX_DOWNLOAD_DB_ENVIRONMENT', 'main'])));
3740

3841
// Remote DB dump directory location.
3942
$remote_dir = '/tmp';
4043

4144
// Remote DB dump file name. Cached by the date suffix.
42-
$remote_file = getenv_default('VORTEX_DOWNLOAD_DB_LAGOON_REMOTE_FILE', 'db_' . date('Ymd') . '.sql');
45+
$remote_file = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_LAGOON_REMOTE_FILE', 'VORTEX_DOWNLOAD_DB_LAGOON_REMOTE_FILE', 'db_' . date('Ymd') . '.sql'])));
4346

4447
// Wildcard file name to cleanup previously created dump files.
45-
$remote_file_cleanup = getenv_default('VORTEX_DOWNLOAD_DB_LAGOON_REMOTE_FILE_CLEANUP', 'db_*.sql');
48+
$remote_file_cleanup = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_LAGOON_REMOTE_FILE_CLEANUP', 'VORTEX_DOWNLOAD_DB_LAGOON_REMOTE_FILE_CLEANUP', 'db_*.sql'])));
49+
50+
// SSH key fingerprint used to connect to a remote.
51+
$ssh_fingerprint = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_SSH_FINGERPRINT', 'VORTEX_DOWNLOAD_DB_SSH_FINGERPRINT', ''])));
4652

4753
// Default SSH file used if custom fingerprint is not provided.
48-
$ssh_file = getenv_default('VORTEX_DOWNLOAD_DB_SSH_FILE', getenv('HOME') . '/.ssh/id_rsa');
54+
$ssh_file = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_SSH_FILE', 'VORTEX_DOWNLOAD_DB_SSH_FILE', getenv('HOME') . '/.ssh/id_rsa'])));
4955

5056
// The SSH host of the Lagoon environment.
51-
$ssh_host = getenv_default('VORTEX_DOWNLOAD_DB_LAGOON_SSH_HOST', 'ssh.lagoon.amazeeio.cloud');
57+
$ssh_host = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_LAGOON_SSH_HOST', 'VORTEX_DOWNLOAD_DB_LAGOON_SSH_HOST', 'ssh.lagoon.amazeeio.cloud'])));
5258

5359
// The SSH port of the Lagoon environment.
54-
$ssh_port = getenv_default('VORTEX_DOWNLOAD_DB_LAGOON_SSH_PORT', '32222');
60+
$ssh_port = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_LAGOON_SSH_PORT', 'VORTEX_DOWNLOAD_DB_LAGOON_SSH_PORT', '32222'])));
5561

5662
// The SSH user of the Lagoon environment.
57-
$ssh_user = getenv_default('VORTEX_DOWNLOAD_DB_LAGOON_SSH_USER', $lagoon_project . '-' . $environment);
63+
$ssh_user = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_LAGOON_SSH_USER', 'VORTEX_DOWNLOAD_DB_LAGOON_SSH_USER', $lagoon_project . '-' . $environment])));
5864

5965
// Directory where DB dumps are stored on the host.
60-
$db_dir = getenv_default('VORTEX_DOWNLOAD_DB_LAGOON_DB_DIR', 'VORTEX_DOWNLOAD_DB_DIR', 'VORTEX_DB_DIR', './.data');
66+
$db_dir = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_LAGOON_DB_DIR', 'VORTEX_DOWNLOAD_DB' . $db_index . '_DIR', 'VORTEX_DB' . $db_index . '_DIR', 'VORTEX_DOWNLOAD_DB_LAGOON_DB_DIR', 'VORTEX_DOWNLOAD_DB_DIR', 'VORTEX_DB_DIR', './.data'])));
6167

6268
// Database dump file name on the host.
63-
$db_file = getenv_default('VORTEX_DOWNLOAD_DB_LAGOON_DB_FILE', 'VORTEX_DOWNLOAD_DB_FILE', 'VORTEX_DB_FILE', 'db.sql');
69+
$db_file = getenv_default(...array_values(array_unique(['VORTEX_DOWNLOAD_DB' . $db_index . '_LAGOON_DB_FILE', 'VORTEX_DOWNLOAD_DB' . $db_index . '_FILE', 'VORTEX_DB' . $db_index . '_FILE', 'VORTEX_DOWNLOAD_DB_LAGOON_DB_FILE', 'VORTEX_DOWNLOAD_DB_FILE', 'VORTEX_DB_FILE', 'db.sql'])));
6470

6571
// Name of the webroot directory with Drupal codebase.
6672
$webroot = getenv_default('WEBROOT', 'web');

0 commit comments

Comments
 (0)