Skip to content

Commit 0da8392

Browse files
CID-3008: running release drafter and tag next version of merge to main, extract tag from release tag for main docker image
1 parent f66b58d commit 0da8392

File tree

2 files changed

+41
-33
lines changed

2 files changed

+41
-33
lines changed

.github/workflows/publish-dev-docker-image.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,39 @@ jobs:
2626
- name: Checkout
2727
uses: actions/checkout@v3
2828

29+
- name: Tag next version
30+
id: tag-action
31+
uses: K-Phoen/semver-release-action@master
32+
with:
33+
release_branch: main
34+
release_strategy: tag
35+
env:
36+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
37+
38+
- name: Publish Release Draft
39+
uses: actions/github-script@v6.4.1
40+
if: (steps.tag-action.outputs.tag != '')
41+
with:
42+
github-token: ${{secrets.GITHUB_TOKEN}}
43+
script: |
44+
const tag = "${{ steps.tag-action.outputs.tag }}";
45+
const { data: releases } = await github.rest.repos.listReleases({
46+
owner: context.repo.owner,
47+
repo: context.repo.repo
48+
});
49+
const draftRelease = releases.find(release => release.tag_name === tag && release.draft === true);
50+
if (!draftRelease) {
51+
console.log(`No draft release found for tag ${tag}`);
52+
return;
53+
}
54+
await github.rest.repos.updateRelease({
55+
owner: context.repo.owner,
56+
repo: context.repo.repo,
57+
release_id: draftRelease.id,
58+
draft: false
59+
});
60+
console.log(`Published draft release for tag ${tag}`);
61+
2962
- name: Setup Java
3063
uses: actions/setup-java@v3
3164
with:

.github/workflows/publish-package-to-ghcr.yml

Lines changed: 8 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -22,38 +22,13 @@ jobs:
2222
environment: ghcr:leanix-github-agent
2323

2424
steps:
25-
- name: Tag next version
26-
id: tag-action
27-
uses: K-Phoen/semver-release-action@master
28-
with:
29-
release_branch: main
30-
release_strategy: tag
31-
env:
32-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
33-
34-
- name: Publish Release Draft
35-
uses: actions/github-script@v6.4.1
36-
if: (steps.tag-action.outputs.tag != '')
37-
with:
38-
github-token: ${{secrets.GITHUB_TOKEN}}
39-
script: |
40-
const tag = "${{ steps.tag-action.outputs.tag }}";
41-
const { data: releases } = await github.rest.repos.listReleases({
42-
owner: context.repo.owner,
43-
repo: context.repo.repo
44-
});
45-
const draftRelease = releases.find(release => release.tag_name === tag && release.draft === true);
46-
if (!draftRelease) {
47-
console.log(`No draft release found for tag ${tag}`);
48-
return;
49-
}
50-
await github.rest.repos.updateRelease({
51-
owner: context.repo.owner,
52-
repo: context.repo.repo,
53-
release_id: draftRelease.id,
54-
draft: false
55-
});
56-
console.log(`Published draft release for tag ${tag}`);
25+
- name: Extract Docker image tag
26+
id: extract_tag
27+
run: |
28+
TAG=${GITHUB_REF#refs/tags/}
29+
CLEAN_TAG=${TAG//[^0-9.]/}
30+
echo "Docker image tag: ${CLEAN_TAG}"
31+
echo "::set-output name=tag::${CLEAN_TAG}"
5732
5833
- name: Checkout
5934
uses: actions/checkout@v3
@@ -92,7 +67,7 @@ jobs:
9267
with:
9368
context: .
9469
push: true
95-
tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.tag-action.outputs.tag }}
70+
tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.extract_tag.outputs.tag }}
9671
labels: ${{ steps.meta.outputs.labels }}
9772

9873
- name: Generate artifact attestation

0 commit comments

Comments
 (0)