diff --git a/.github/workflows/deps-release-detect.yaml b/.github/workflows/deps-release-detect.yaml index 97a0e28f..3f8b4057 100644 --- a/.github/workflows/deps-release-detect.yaml +++ b/.github/workflows/deps-release-detect.yaml @@ -66,16 +66,19 @@ jobs: echo "prevVersion : $prevVersion" echo "newVersion : $newVersion" - tag_deps_version="$(git ls-remote 2>/dev/null \ + tagPrevVersion="$(git ls-remote 2>/dev/null \ | grep -oE 'refs/tags/v[0-9]+\.[0-9]+\.[0-9]+' \ | cut -d'/' -f3 \ | xargs semver \ - | tail -n 1 \ - | xargs semver -i patch)" + | tail -n 1)" + + tagNewVersion="$(semver -i patch "$tagPrevVersion")" - echo "$tag_deps_version" > ./cicd/tag-base-version.txt + echo "$tagPrevVersion" > ./cicd/tag-deps-version.txt + echo "$tagNewVersion" >> ./cicd/tag-deps-version.txt + git add ./cicd/tag-base-version.txt - if git commit -m "bump dependency release to $tag_deps_version"; then + if git commit -m "bump dependency release to $tagNewVersion"; then push=1 fi done diff --git a/.github/workflows/deps-release-tag.yaml b/.github/workflows/deps-release-tag.yaml index 40735bdf..3a4eb5f6 100644 --- a/.github/workflows/deps-release-tag.yaml +++ b/.github/workflows/deps-release-tag.yaml @@ -14,24 +14,38 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 + with: + fetch-depth: 0 - id: tag name: Determine tag run: | - version="$(head -n 1 ./cicd/tag_deps_version.txt)" - ref_name="v$version" + old_version="$(head -n 1 ./cicd/tag-deps-version.txt)" + old_ref_name="v$old_version" + new_version="$(tail -n 1 ./cicd/tag-deps-version.txt)" + new_ref_name="v$new_version" + create=true - if [ "$(git ls-remote origin "refs/tags/$ref_name" | wc -l)" = "1" ]; then + if [ "$(git ls-remote origin "refs/tags/$new_ref_name" | wc -l)" = "1" ]; then create=false fi - echo "version=$version" | tee -a "$GITHUB_OUTPUT" - echo "ref-name=$ref_name" | tee -a "$GITHUB_OUTPUT" + echo "old-version=$old_version" | tee -a "$GITHUB_OUTPUT" + echo "old-ref-name=$old_ref_name" | tee -a "$GITHUB_OUTPUT" + echo "new-version=$new_version" | tee -a "$GITHUB_OUTPUT" + echo "new-ref-name=$new_ref_name" | tee -a "$GITHUB_OUTPUT" echo "create=$create" | tee -a "$GITHUB_OUTPUT" - if: ${{ fromJSON(steps.tag.outputs.create) }} name: Tag run: | - git tag "${{ steps.tag.outputs.ref-name }}" - git push origin "${{ steps.tag.outputs.ref-name }}" + commit="$(git rev-parse HEAD)" + git fetch origin refs/tags/"${{ steps.tag.outputs.old-ref-name }}" + git checkout -b deps "${{ steps.tag.outputs.old-ref-name }}" + git restore --source="$commit" ./cicd + git add ./cicd + if git commit -m "bump dependency release to ${{ steps.tag.outputs.new-version }}"; then + git tag "${{ steps.tag.outputs.new-ref-name }}" + git push origin "${{ steps.tag.outputs.new-ref-name }}" + fi diff --git a/cicd/tag-deps-version.txt b/cicd/tag-deps-version.txt new file mode 100644 index 00000000..21226110 --- /dev/null +++ b/cicd/tag-deps-version.txt @@ -0,0 +1,2 @@ +0.14.0 +0.14.1 diff --git a/cicd/tag_deps_version.txt b/cicd/tag_deps_version.txt deleted file mode 100644 index c39e9c5f..00000000 --- a/cicd/tag_deps_version.txt +++ /dev/null @@ -1 +0,0 @@ -0.14.1 \ No newline at end of file