From aa4864fa2fff472dc80961927c928ee8ea48fa1a Mon Sep 17 00:00:00 2001 From: xu yang Date: Mon, 22 Apr 2024 06:36:48 +0000 Subject: [PATCH] address comments Signed-off-by: xu yang --- .github/actions/generate/action.yml | 34 +++++++++------------------ .github/actions/rpm/action.yml | 15 ++++++++++-- .github/workflows/nightly-release.yml | 5 ++-- 3 files changed, 26 insertions(+), 28 deletions(-) diff --git a/.github/actions/generate/action.yml b/.github/actions/generate/action.yml index c4181667f..935ab0b1d 100644 --- a/.github/actions/generate/action.yml +++ b/.github/actions/generate/action.yml @@ -2,10 +2,6 @@ name: 'Generate warewulf metadata' description: 'Generate warewulf.spec and dist, collect commits info' inputs: - nightly: - description: "Whether it is nightly release" - required: true - default: 'false' token: description: "Github token" required: true @@ -29,14 +25,15 @@ runs: steps: - name: Extract current branch tag run: | - echo "TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV + echo "BRANCH=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV + echo "TAG=`./script/get-version.sh`" >> $GITHUB_ENV shell: bash - name: Extract last 24 hours commits info id: commits run: | - echo "raw=`git reflog ${{ env.TAG }} --since="24 hours ago"`" >> $GITHUB_OUTPUT - echo "commits=`git log ${{ env.TAG }} --pretty --since="24 hours ago" | jq --raw-input . | jq --slurp . | jq -c .`" >> $GITHUB_OUTPUT + echo "raw=`git reflog ${{ env.BRANCH }} --since="24 hours ago"`" >> $GITHUB_OUTPUT + echo "commits=`git log ${{ env.BRANCH }} --pretty --since="24 hours ago" | jq --raw-input . | jq --slurp . | jq -c .`" >> $GITHUB_OUTPUT shell: bash - name: Whether should continue @@ -50,13 +47,13 @@ runs: shell: bash - name: Build spec and dist - if: inputs.nightly == 'false' || inputs.nightly == 'true' && steps.should-continue.outputs.continue == 'true' + if: steps.should-continue.outputs.continue == 'true' run: | make warewulf.spec dist shell: bash - name: Set DIST - if: inputs.nightly == 'false' || inputs.nightly == 'true' && steps.should-continue.outputs.continue == 'true' + if: steps.should-continue.outputs.continue == 'true' id: dist run: | dist="warewulf-${{ env.TAG }}.tar.gz" @@ -76,30 +73,21 @@ runs: shell: bash - name: Upload warewulf.spec - if: inputs.nightly == 'false' || inputs.nightly == 'true' && steps.should-continue.outputs.continue == 'true' + if: steps.should-continue.outputs.continue == 'true' uses: actions/upload-artifact@v3 with: name: warewulf.spec path: warewulf.spec - name: Upload DIST - if: inputs.nightly == 'false' || inputs.nightly == 'true' && steps.should-continue.outputs.continue == 'true' + if: steps.should-continue.outputs.continue == 'true' uses: actions/upload-artifact@v3 with: name: ${{ env.DIST }} path: ${{ env.DIST }} - - name: Normal dist release - uses: xresloader/upload-to-github-release@v1 - if: inputs.nightly == 'false' - env: - GITHUB_TOKEN: ${{ inputs.token }} - with: - release_id: ${{ inputs.event-id }} - file: ${{ env.DIST }} - - name: Write nightly release content - if: inputs.nightly == 'true' && steps.should-continue.outputs.continue == 'true' + if: steps.should-continue.outputs.continue == 'true' run: | cat << EOF >> nightly.release.note THIS IS A NIGHTLY RELEASE @@ -116,7 +104,7 @@ runs: - name: Nightly dist release uses: xresloader/upload-to-github-release@v1 - if: inputs.nightly == 'true' && steps.should-continue.outputs.continue == 'true' + if: steps.should-continue.outputs.continue == 'true' env: GITHUB_TOKEN: ${{ inputs.token }} with: @@ -129,7 +117,7 @@ runs: default_release_name: "warewulf nightly release" - name: Update nightly release content - if: inputs.nightly == 'true' && steps.should-continue.outputs.continue == 'true' + if: steps.should-continue.outputs.continue == 'true' uses: tubone24/update_release@v1.3.1 id: release env: diff --git a/.github/actions/rpm/action.yml b/.github/actions/rpm/action.yml index 5900d6ac5..7d58e9654 100644 --- a/.github/actions/rpm/action.yml +++ b/.github/actions/rpm/action.yml @@ -55,8 +55,10 @@ runs: GENERIC_RELEASE=$(rpm -q --qf "%{RELEASE}\n" --specfile warewulf.spec | cut -d. -f1) RPM=warewulf-${VERSION}-${GENERIC_RELEASE}.${{ inputs.dist }}.${{ inputs.arch }}.rpm SRPM=warewulf-${VERSION}-${GENERIC_RELEASE}.${{ inputs.dist }}.src.rpm + DRACUT=wareful-dracut-${VERSION}-${GENERIC_RELEASE}.${{ inputs.dist }}.noarch.rpm echo "RPM=${RPM}" >> $GITHUB_ENV echo "SRPM=${SRPM}" >> $GITHUB_ENV + echo "DRACUT=${DRACUT}" >> $GITHUB_ENV shell: bash - name: Build RPMs and run tests @@ -77,10 +79,19 @@ runs: name: ${{ env.SRPM }} path: /var/lib/mock/${{ inputs.target }}/result/${{ env.SRPM }} - - name: Attach RPM and SRPM to release + - name: Upload dracut RPM + uses: actions/upload-artifact@v3 + with: + name: ${{ env.DRACUT }} + path: /var/lib/mock/${{ inputs.target }}/result/${{ env.DRACUT }} + if-no-files-found: 'ignore' + overwrite: true + + - name: Attach all files to release uses: xresloader/upload-to-github-release@v1 env: GITHUB_TOKEN: ${{ inputs.token }} with: release_id: ${{ inputs.event-id }} - file: "/var/lib/mock/${{ inputs.target }}/result/${{ env.RPM }};/var/lib/mock/${{ inputs.target }}/result/${{ env.SRPM }}" \ No newline at end of file + file: " warewulf-${{ env.EXPECTED_VERSION }}.tar.gz;/var/lib/mock/${{ inputs.target }}/result/${{ env.RPM }};/var/lib/mock/${{ inputs.target }}/result/${{ env.SRPM }};/var/lib/mock/${{ inputs.target }}/result/${{ env.DRACUT }}" + overwrite: true \ No newline at end of file diff --git a/.github/workflows/nightly-release.yml b/.github/workflows/nightly-release.yml index e801075f9..149a8db0d 100644 --- a/.github/workflows/nightly-release.yml +++ b/.github/workflows/nightly-release.yml @@ -19,12 +19,11 @@ jobs: - name: Checkout Code uses: actions/checkout@v4 with: - ref: 'main' # only work on 'main' branch + fetch-depth: 0 - uses: ./.github/actions/generate name: generate warewulf spec, dist and collect commits info id: generate with: - nightly: 'true' token: ${{ secrets.GITHUB_TOKEN }} event-id: ${{ github.event.release.id }} @@ -55,7 +54,7 @@ jobs: - name: Checkout Code uses: actions/checkout@v4 with: - ref: 'main' # only work on 'main' branch + fetch-depth: 0 - uses: ./.github/actions/rpm name: build rpms id: rpm