-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathpatchImage.sh
More file actions
executable file
·53 lines (42 loc) · 1.2 KB
/
patchImage.sh
File metadata and controls
executable file
·53 lines (42 loc) · 1.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/bin/bash -e
export IMAGE="$1"
export HUB_ORG="$2"
export RELEASE="$3"
export IMAGE_RESOURCE="$IMAGE"_img
export IMAGE_RESOURCE_VERSION_NUMBER=$(shipctl get_resource_version_number "$IMAGE_RESOURCE")
export RELEASE_VERSION_NAME=$(shipctl get_resource_version_name "$RELEASE")
export TAG_TO_PULL="master"
export TAG_TO_PUSH="$RELEASE_VERSION_NAME-patch.$IMAGE_RESOURCE_VERSION_NUMBER"
export IMAGE_TO_PULL="$HUB_ORG/$IMAGE:$TAG_TO_PULL"
export IMAGE_TO_PUSH="$HUB_ORG/$IMAGE:$TAG_TO_PUSH"
show_context() {
echo "IMAGE=$IMAGE"
echo "HUB_ORG=$HUB_ORG"
echo "RELEASE=$RELEASE"
echo "IMAGE_RESOURCE=$IMAGE_RESOURCE"
echo "IMAGE_RESOURCE_VERSION_NUMBER=$IMAGE_RESOURCE_VERSION_NUMBER"
echo "RELEASE_VERSION_NAME=$RELEASE_VERSION_NAME"
echo "TAG_TO_PULL=$TAG_TO_PULL"
echo "TAG_TO_PUSH=$TAG_TO_PUSH"
echo "IMAGE_TO_PULL"="$IMAGE_TO_PULL"
echo "IMAGE_TO_PUSH"="$IMAGE_TO_PUSH"
}
pull_image() {
echo "Pulling $IMAGE_TO_PULL..."
docker pull $IMAGE_TO_PULL
}
tag_image() {
echo "Tagging $IMAGE_TO_PUSH..."
docker tag $IMAGE_TO_PULL $IMAGE_TO_PUSH
}
push_image() {
echo "Pushing $IMAGE_TO_PUSH..."
docker push $IMAGE_TO_PUSH
}
main() {
show_context
pull_image
tag_image
push_image
}
main