chore: copy iox images skopeo gar registry (#6172)
* chore: copy the iox images to the gar registry with skopeo * chore: add quotespull/24376/head
parent
d2b66ff42c
commit
d41c1290cf
|
@ -85,6 +85,16 @@ commands:
|
||||||
- /usr/local/cargo/registry
|
- /usr/local/cargo/registry
|
||||||
key: cargo-cache-{{ arch }}-{{ .Branch }}-{{ checksum "Cargo.lock" }}
|
key: cargo-cache-{{ arch }}-{{ .Branch }}-{{ checksum "Cargo.lock" }}
|
||||||
|
|
||||||
|
login_to_gcloud:
|
||||||
|
steps:
|
||||||
|
- run:
|
||||||
|
name: Login to gcloud
|
||||||
|
command: |
|
||||||
|
echo "${GCLOUD_SERVICE_ACCOUNT_KEY}" >/tmp/gcloud.json
|
||||||
|
gcloud auth activate-service-account "${GCLOUD_SERVICE_ACCOUNT_EMAIL}" --key-file /tmp/gcloud.json --quiet
|
||||||
|
rm -f /tmp/gcloud.json
|
||||||
|
gcloud auth configure-docker us-docker.pkg.dev
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
fmt:
|
fmt:
|
||||||
docker:
|
docker:
|
||||||
|
@ -417,7 +427,7 @@ jobs:
|
||||||
|
|
||||||
deploy_release:
|
deploy_release:
|
||||||
docker:
|
docker:
|
||||||
- image: cimg/base:2021.04
|
- image: cimg/gcp:2022.11.1
|
||||||
steps:
|
steps:
|
||||||
- setup_remote_docker:
|
- setup_remote_docker:
|
||||||
version: 19.03.13
|
version: 19.03.13
|
||||||
|
@ -425,10 +435,46 @@ jobs:
|
||||||
- checkout
|
- checkout
|
||||||
- attach_workspace:
|
- attach_workspace:
|
||||||
at: /tmp/images
|
at: /tmp/images
|
||||||
|
- login_to_gcloud
|
||||||
- run:
|
- run:
|
||||||
name: quay login
|
name: quay login
|
||||||
command: |
|
command: |
|
||||||
echo "$QUAY_INFLUXDB_IOX_PASS" | docker login quay.io --username $QUAY_INFLUXDB_IOX_USER --password-stdin
|
echo "$QUAY_INFLUXDB_IOX_PASS" | docker login quay.io --username $QUAY_INFLUXDB_IOX_USER --password-stdin
|
||||||
|
- run:
|
||||||
|
name: install skopeo
|
||||||
|
command: |
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
readonly attempts=5
|
||||||
|
|
||||||
|
install() {
|
||||||
|
# install skopeo via kubic on Ubuntu 20.04
|
||||||
|
if [ "$(sh -c '. /etc/os-release && echo $VERSION_ID')" = "20.04" ] ; then
|
||||||
|
sudo sh -c '. /etc/os-release && echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_${VERSION_ID}/ /" >/etc/apt/sources.list.d/kubic-stable.list'
|
||||||
|
sudo sh -c '. /etc/os-release && curl -L "https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_${VERSION_ID}/Release.key" | apt-key add -'
|
||||||
|
fi
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get -y install skopeo
|
||||||
|
}
|
||||||
|
|
||||||
|
# retry installing skopeo up to 5 times to avoid temporary networking issues
|
||||||
|
for attempt in $(seq 1 "${attempts}") ; do
|
||||||
|
# run installation, if successful, exit and return 0
|
||||||
|
if install ; then
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
if [ "${attempt}" -ne ${attempts} ] ; then
|
||||||
|
# if installing failed, wait for a bit and retry
|
||||||
|
sleep $(( attempt * 5 ))
|
||||||
|
else
|
||||||
|
# if this was the last attempt, exit with an error
|
||||||
|
echo >&2 "Failed to install skopeo"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
- run:
|
- run:
|
||||||
name: Upload images
|
name: Upload images
|
||||||
command: |
|
command: |
|
||||||
|
@ -446,6 +492,12 @@ jobs:
|
||||||
docker push quay.io/influxdb/iox:"$BRANCH"
|
docker push quay.io/influxdb/iox:"$BRANCH"
|
||||||
docker push quay.io/influxdb/iox_data_generator:"$BRANCH"
|
docker push quay.io/influxdb/iox_data_generator:"$BRANCH"
|
||||||
|
|
||||||
|
# copy image to Google as well
|
||||||
|
skopeo copy docker://quay.io/influxdb/iox:${COMMIT_SHA} docker://us-docker.pkg.dev/influxdb2-artifacts/iox/iox:${COMMIT_SHA} --quiet
|
||||||
|
skopeo copy docker://quay.io/influxdb/iox:${BRANCH} docker://us-docker.pkg.dev/influxdb2-artifacts/iox/iox:${BRANCH} --quiet
|
||||||
|
skopeo copy docker://quay.io/influxdb/iox_data_generator:${COMMIT_SHA} docker://us-docker.pkg.dev/influxdb2-artifacts/iox/iox_data_generator:${COMMIT_SHA} --quiet
|
||||||
|
skopeo copy docker://quay.io/influxdb/iox_data_generator:${BRANCH} docker://us-docker.pkg.dev/influxdb2-artifacts/iox/iox_data_generator:${BRANCH} --quiet
|
||||||
|
|
||||||
# for next step
|
# for next step
|
||||||
echo "export COMMIT_SHA=${COMMIT_SHA}" >> $BASH_ENV
|
echo "export COMMIT_SHA=${COMMIT_SHA}" >> $BASH_ENV
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue