Skip to content

Commit 4402147

Browse files
author
Gabor Solya
committed
Get Azure image id (part of CB-22440)
1 parent ddfea34 commit 4402147

File tree

2 files changed

+40
-0
lines changed

2 files changed

+40
-0
lines changed

Dockerfile

+1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ WORKDIR /bin
77
RUN apk update && apk add bash coreutils jq curl
88

99
ADD ./azure-copy /bin/
10+
ADD ./azure-get-rhel8-source-image-id /bin/
1011

1112
RUN curl -Lsf https://github.com/hortonworks/pollprogress/releases/download/0.2.4/pollprogress_0.2.4_Linux_x86_64.tgz | tar -xz -C /bin
1213
ENV PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/azure/bin

azure-get-rhel8-source-image-id

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
#!/bin/bash
2+
3+
: ${AZURE_IMAGE_PUBLISHER?= required}
4+
: ${AZURE_IMAGE_OFFER?= required}
5+
: ${AZURE_IMAGE_SKU?= required}
6+
: ${AZURE_IMAGE_VERSION?= required}
7+
#AZURE_IMAGE_PUBLISHER="RedHat"
8+
#AZURE_IMAGE_OFFER="rhel-byos"
9+
#AZURE_IMAGE_SKU="rhel-lvm88"
10+
#AZURE_IMAGE_VERSION="8.8"
11+
#SKIP_IF_CONTAINS_STRING="gen2" Where the souruce image id contains this substring will be skipped.
12+
13+
debug() {
14+
[[ "$DEBUG" ]] && echo "-----> $*" 1>&2
15+
}
16+
17+
alias r="source $BASH_SOURCE"
18+
19+
azure_login() {
20+
if [[ "$ARM_CLIENT_ID" ]] && [[ "$ARM_CLIENT_SECRET" ]]; then
21+
az login --username $ARM_CLIENT_ID --password $ARM_CLIENT_SECRET --service-principal --tenant $ARM_TENANT_ID
22+
fi
23+
}
24+
25+
azure_get_rhel8_source_image_id() {
26+
if [[ "$SKIP_IF_CONTAINS_STRING" ]]; then
27+
az vm image list --publisher $AZURE_IMAGE_PUBLISHER --offer $AZURE_IMAGE_OFFER --all | jq -r --arg version $AZURE_IMAGE_VERSION --arg offer $AZURE_IMAGE_OFFER --arg skipthis $SKIP_IF_CONTAINS_STRING '.[] | select(.version | startswith($version)) | select(.urn | contains($offer)) | select(.urn | contains($skipthis) | not) | .urn'
28+
else
29+
az vm image list --publisher $AZURE_IMAGE_PUBLISHER --offer $AZURE_IMAGE_OFFER --all | jq -r --arg version $AZURE_IMAGE_VERSION --arg offer $AZURE_IMAGE_OFFER '.[] | select(.version | startswith($version)) | select(.urn | contains($offer)) | .urn'
30+
fi
31+
}
32+
33+
main() {
34+
: ${DEBUG:=1}
35+
azure_login
36+
azure_get_rhel8_source_image_id > rhel8_base_image_id.out
37+
}
38+
39+
[[ "$0" == "$BASH_SOURCE" ]] && main "$@"

0 commit comments

Comments
 (0)