|
2 | 2 |
|
3 | 3 | set -euo pipefail |
4 | 4 |
|
5 | | -export EC_REGISTER_BACKEND=buildkite |
6 | | -export EC_ENV=qa |
7 | | -export EC_REGION=aws-eu-west-1 |
8 | 5 | # Using BUILDKITE_JOB_ID for the name to make it unique: |
9 | 6 | export EC_PROJECT_NAME="$EC_PROJECT_PREFIX-$BUILDKITE_JOB_ID" |
10 | 7 |
|
11 | | -# fetch cloud creds used by qaf |
12 | | -CLOUD_ACCESS_KEY=$(vault read -field="$EC_ENV" $CLOUD_CREDENTIALS_PATH) |
13 | | -echo "{\"api_key\":{\"$EC_ENV\":\"$CLOUD_ACCESS_KEY\"}}" > "$(pwd)/cloud.json" |
14 | | - |
15 | | -echo -e "--- Buildkite: ${BUILDKITE}" |
16 | | - |
17 | | -run_qaf() { |
18 | | - cmd=$1 |
19 | | - docker run --rm \ |
20 | | - -e EC_REGISTER_BACKEND \ |
21 | | - -e EC_ENV \ |
22 | | - -e EC_REGION \ |
23 | | - -e EC_PROJECT_NAME \ |
24 | | - -e VAULT_TOKEN \ |
25 | | - -e "BUILDKITE=${BUILDKITE}" \ |
26 | | - -v "$(pwd)/cloud.json:/root/.elastic/cloud.json" \ |
27 | | - docker.elastic.co/appex-qa/qaf:latest \ |
28 | | - bash -c "$cmd" |
29 | | -} |
30 | | - |
31 | 8 | # ensure serverless instance is deleted even if script errors |
32 | 9 | cleanup() { |
33 | 10 | echo -e "--- :elasticsearch: :broom::sparkles: Tear down serverless instance $EC_PROJECT_NAME" |
34 | | - run_qaf 'qaf elastic-cloud projects delete' |
35 | | - rm -rf "$(pwd)/cloud.json" |
| 11 | + qaf elastic-cloud projects delete |
| 12 | + rm -rf "~/.elastic/cloud.json" |
36 | 13 | } |
37 | 14 | trap cleanup EXIT |
38 | 15 |
|
39 | 16 | echo -e "--- :elasticsearch: Start serverless instance $EC_PROJECT_NAME" |
40 | 17 |
|
41 | | -run_qaf "qaf elastic-cloud projects create --project-type elasticsearch" |
42 | | -deployment=$(run_qaf "qaf elastic-cloud projects describe $EC_PROJECT_NAME --as-json --show-credentials") |
| 18 | +qaf elastic-cloud projects create --project-type elasticsearch |
| 19 | +deployment=$(qaf elastic-cloud projects describe $EC_PROJECT_NAME --as-json --show-credentials) |
43 | 20 |
|
44 | 21 | # Set ELASTICSEARCH_URL and API_KEY variables |
45 | 22 | export ES_API_SECRET_KEY=$(echo "$deployment" | jq -r '.credentials.api_key') |
|
0 commit comments