Fix tagging of fleetdm/fleet and fleetdm/fleetctl when releasing (#28251)

For #26988.
This commit is contained in:
Lucas Manuel Rodriguez 2025-04-16 15:48:47 -03:00 committed by GitHub
parent ce9467070e
commit 243ca206bf
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 20 additions and 11 deletions

View file

@ -124,6 +124,19 @@ jobs:
subject-name: "docker.io/fleetdm/fleetctl" subject-name: "docker.io/fleetdm/fleetctl"
push-to-registry: true push-to-registry: true
- name: Update fleetdm/fleet:latest and fleetdm/fleetctl:latest
run: |
highest_release=$(gh api -H "Accept: application/vnd.github+json" -H "X-GitHub-Api-Version: 2022-11-28" /repos/fleetdm/fleet/releases | jq -r '.[].tag_name' | sort -r | head -n 1 | sed -e "s/^fleet-//")
tag=${{ steps.docker.outputs.tag }}
if [[ $(printf "$highest_release\n$tag" | sort -r | head -n 1) = "$tag" ]]; then
docker tag fleetdm/fleet:$tag fleetdm/fleet:latest
docker push fleetdm/fleet:latest
docker tag fleetdm/fleetctl:$tag fleetdm/fleetctl:latest
docker push fleetdm/fleetctl:latest
else
echo "Skipping tagging of fleetdm/fleet:latest and fleetdm/fleetctl:latest because existing release $highest_release is higher than $tag"
fi
- name: List tags for push - name: List tags for push
run: | run: |
echo "The following TAGs are to be pushed: ${{ steps.docker.outputs.TAG }}" echo "The following TAGs are to be pushed: ${{ steps.docker.outputs.TAG }}"
@ -138,6 +151,6 @@ jobs:
- name: Tag and push to quay.io - name: Tag and push to quay.io
run: | run: |
for TAG in ${{ steps.docker.outputs.TAG }}; do for TAG in ${{ steps.docker.outputs.TAG }}; do
docker tag fleetdm/fleet:${TAG} quay.io/fleetdm/fleet:${TAG} docker tag fleetdm/fleet:${TAG} quay.io/fleetdm/fleet:${TAG}
docker push quay.io/fleetdm/fleet:${TAG} docker push quay.io/fleetdm/fleet:${TAG}
done done

View file

@ -119,10 +119,8 @@ dockers:
- fleetctl - fleetctl
dockerfile: tools/fleet-docker/Dockerfile dockerfile: tools/fleet-docker/Dockerfile
image_templates: image_templates:
- 'fleetdm/fleet:latest' - "fleetdm/fleet:{{ .Tag }}"
- 'fleetdm/fleet:{{ .Tag }}' - "fleetdm/fleet:v{{ .Major }}"
- 'fleetdm/fleet:{{ .Tag }}'
- 'fleetdm/fleet:v{{ .Major }}'
- goos: linux - goos: linux
goarch: amd64 goarch: amd64
@ -132,13 +130,11 @@ dockers:
build_flag_templates: build_flag_templates:
- "--build-arg=binpath=fleetctl" - "--build-arg=binpath=fleetctl"
image_templates: image_templates:
- 'fleetdm/fleetctl:latest' - "fleetdm/fleetctl:{{ .Tag }}"
- 'fleetdm/fleetctl:{{ .Tag }}' - "fleetdm/fleetctl:v{{ .Major }}"
- 'fleetdm/fleetctl:{{ .Tag }}'
- 'fleetdm/fleetctl:v{{ .Major }}'
checksum: checksum:
name_template: 'checksums.txt' name_template: "checksums.txt"
snapshot: snapshot:
version_template: "{{ .Tag }}-untagged" version_template: "{{ .Tag }}-untagged"