test: Test GCP upload as part of cloudapi test case
Refactor test/cases/api.sh to incorporate testing of cloudapi with multiple cloud providers as the target. Since all variables in Bash are by default global, don't declare them as empty in advance. The only place where underclared variables can be potentially expanded are the cleanup functions. Ensure that there are no unbound variables expanded inside cleanup functions. Rename all AWS-specific variables to contain "AWS_" prefix to make their purpose explicit. Modify provision.sh to append the GCP credentials file path to the worker configuration. Add GCP api.sh test case to integration tests in Jenkins and run it only if the appropriate GCP credentials environment variable is defined. Run the GCP test case for RHEL images. Signed-off-by: Tomas Hozza <thozza@redhat.com>
This commit is contained in:
parent
02ad5a3199
commit
31d4d4648f
3 changed files with 266 additions and 69 deletions
|
|
@ -19,6 +19,16 @@ sudo mkdir -p /etc/osbuild-worker
|
|||
sudo cp -a /usr/share/tests/osbuild-composer/worker/osbuild-worker.toml \
|
||||
/etc/osbuild-worker/
|
||||
|
||||
# if GCP credentials are defined in the ENV, add them to the worker's configuration
|
||||
GOOGLE_APPLICATION_CREDENTIALS="${GOOGLE_APPLICATION_CREDENTIALS:-}"
|
||||
if [ -n "$GOOGLE_APPLICATION_CREDENTIALS" ]; then
|
||||
# The credentials file must be copied to a different location. Jenkins places
|
||||
# it into /tmp and as a restult, the worker would not see it due to using PrivateTmp=true.
|
||||
GCP_CREDS_WORKER_PATH="/etc/osbuild-worker/gcp-credentials.json"
|
||||
sudo cp "$GOOGLE_APPLICATION_CREDENTIALS" "$GCP_CREDS_WORKER_PATH"
|
||||
echo -e "\n[gcp]\ncredentials = \"$GCP_CREDS_WORKER_PATH\"\n" | sudo tee -a /etc/osbuild-worker/osbuild-worker.toml
|
||||
fi
|
||||
|
||||
# Copy rpmrepo snapshots for use in weldr tests
|
||||
sudo mkdir -p /etc/osbuild-composer/repositories
|
||||
# Copy all fedora repo overrides
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue