From ca1dffdabc55c2cd399091a6d23889673aa16e98 Mon Sep 17 00:00:00 2001 From: Matthew R Kasun Date: Mon, 8 May 2023 10:09:39 -0400 Subject: [PATCH 1/4] release workflows --- .github/workflows/packages.yml | 46 ------------------------- .github/workflows/pre-release.yml | 19 +++++++++++ .github/workflows/pull-request.yml | 32 ------------------ .github/workflows/release-assets.yml | 50 ---------------------------- .github/workflows/release-branch.yml | 39 ---------------------- .github/workflows/release.yml | 44 +++--------------------- .github/workflows/upgraderelease.yml | 41 ----------------------- 7 files changed, 23 insertions(+), 248 deletions(-) delete mode 100644 .github/workflows/packages.yml create mode 100644 .github/workflows/pre-release.yml delete mode 100644 .github/workflows/pull-request.yml delete mode 100644 .github/workflows/release-assets.yml delete mode 100644 .github/workflows/release-branch.yml delete mode 100644 .github/workflows/upgraderelease.yml diff --git a/.github/workflows/packages.yml b/.github/workflows/packages.yml deleted file mode 100644 index 28b9cb41..00000000 --- a/.github/workflows/packages.yml +++ /dev/null @@ -1,46 +0,0 @@ -name: Build linux packages -on: - workflow_call: - inputs: - version: - required: true - type: string - workflow_dispatch: - inputs: - version: - description: "netmaker version" - required: true - release: - types: [released] - -jobs: - - packages: - runs-on: ubuntu-latest - steps: - - name: setup ssh - run: | - mkdir -p ~/.ssh/ - echo "$SSH_KEY" > ~/.ssh/id_devops - chmod 600 ~/.ssh/id_devops - cat >>~/.ssh/config <> $GITHUB_ENV - echo ${VERSION} - - name: apt/rpm - run: | - ssh fileserver.clustercat.com "cd packages/nmcli; export VERSION=${{ ENV.version }}; export REVISION=0; ./buildall.sh " diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml new file mode 100644 index 00000000..39e42ace --- /dev/null +++ b/.github/workflows/pre-release.yml @@ -0,0 +1,19 @@ +# creates a release from develop +# creates release branch, generates release assets, publishes docker image and copies release.md to release +# linux packages are generated and a PR from release branch to master is created +name: Release + +on: + workflow_dispatch: + inputs: + version: + description: "new version number" + required: true + +jobs: + + release: + uses: gravitl/devops/.github/workflows/netmakerPrerelease.yml@master + with: + version: ${{ inputs.version }} + secrets: inherit diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml deleted file mode 100644 index 8dc3dc60..00000000 --- a/.github/workflows/pull-request.yml +++ /dev/null @@ -1,32 +0,0 @@ -# creates a PR from release branch to master -name: Create Release PR to master -on: - workflow_call: - inputs: - version: - required: true - type: string - workflow_dispatch: - inputs: - version: - description: "netmaker version" - required: true - release: - types: [released] - -jobs: - pr-to-main: - runs-on: ubuntu-latest - steps: - - name: create pr - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - gh api --method POST \ - -H 'Accept: application/vnd.github+json' -H 'X-GitHub-Api-Version: 2022-11-28' \ - /repos/${{ github.repository }}/pulls \ - -f title='${{ github.event.inputs.version }}' \ - -f head='release_${{ github.event.inputs.version }}' \ - -f base="master" - - diff --git a/.github/workflows/release-assets.yml b/.github/workflows/release-assets.yml deleted file mode 100644 index 1d164bad..00000000 --- a/.github/workflows/release-assets.yml +++ /dev/null @@ -1,50 +0,0 @@ -# generates release assets and uploads to release -name: Upload Release Assets -on: - workflow_call: - inputs: - version: - required: true - type: string - prerelease: - required: true - type: boolean - workflow_dispatch: - inputs: - version: - description: "netmaker version" - required: true - prerelease: - required: true - type: boolean - description: "prerelease" -jobs: - release-assets: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - ref: release_${{ github.event.inputs.version}} - fetch-depth: 0 - - name: Get Tags - run: | - git fetch --force --tags - - name: Setup go - uses: actions/setup-go@v4 - with: - go-version: 1.19 - - name: GoReleaser (full release) - if: ${{ github.event.inputs.prerelease == 'false'}} - uses: goreleaser/goreleaser-action@v4 - with: - args: release --clean --release-notes release.md - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: GoReleaser (prerelease) - if: ${{ github.event.inputs.prerelease == 'false'}} - uses: goreleaser/goreleaser-action@v4 - with: - args: release --clean --release-notes release.md -f .goreleaser.prerelease.yaml - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/release-branch.yml b/.github/workflows/release-branch.yml deleted file mode 100644 index c244b725..00000000 --- a/.github/workflows/release-branch.yml +++ /dev/null @@ -1,39 +0,0 @@ -# creates new branch (release_{{ version }} with tag {{ version }} from develop -# will fail if branch or tag already exists on github -name: Create Release Branch -on: - workflow_call: - inputs: - version: - required: true - type: string - workflow_dispatch: - inputs: - version: - description: "netmaker version" - required: true -jobs: - release-branch: - runs-on: ubuntu-latest - steps: - - name: checkout develop - uses: actions/checkout@v3 - with: - ref: develop - - name: setup go - uses: actions/setup-go@v4 - with: - go-version: 1.19 - - name: setup git - run: | - git config user.name "Github Actions" - git config user.emaail "info@netmaker.io" - - name: create release Branch - run: | - git switch -c release_${{ github.event.inputs.version }} - git tag -f ${{ github.event.inputs.version }} - #push branch - git push origin release_${{ github.event.inputs.version }} - #push tag - git push origin ${{ github.event.inputs.version }} - diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 45650017..1990d8bb 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,6 +1,6 @@ # creates a release from develop # creates release branch, generates release assets, publishes docker image and copies release.md to release -# if formal release, linux packages are generated and a PR from release branch to master is created +# linux packages are generated and a PR from release branch to master is created name: Release on: @@ -9,47 +9,11 @@ on: version: description: "new version number" required: true - prerelease: - required: true - type: boolean - description: Is this a pre-release jobs: - release-branch: - uses: ./.github/workflows/release-branch.yml + release: + uses: gravitl/devops/.github/workflows/netmakerRelease.yml@master with: - version: ${{ github.event.inputs.version }} - secrets: inherit - - - release-assets: - needs: release-branch - uses: ./.github/workflows/release-assets.yml - with: - version: ${{ github.event.inputs.version }} - prerelease: ${{ github.event.inputs.prerelease == 'true' }} - secrets: inherit - - docker: - needs: release-branch - uses: ./.github/workflows/publish-docker.yml - with: - tag: ${{ github.event.inputs.version }} - secrets: inherit - - packages: - if: ${{ github.event.inputs.prerelease == 'false' }} - needs: release-branch - uses: ./.github/workflows/packages.yml - with: - version: ${{ github.event.inputs.version }} - secrets: inherit - - pull-request: - if: ${{ github.event.inputs.prerelease == 'false' }} - needs: release-branch - uses: ./.github/workflows/pull-request.yml - with: - version: ${{ github.event.inputs.version }} + version: ${{ inputs.version }} secrets: inherit diff --git a/.github/workflows/upgraderelease.yml b/.github/workflows/upgraderelease.yml deleted file mode 100644 index ec3199a6..00000000 --- a/.github/workflows/upgraderelease.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: UpgradeRelease - -on: - workflow_dispatch: - inputs: - version: - description: "release/version to update" - required: true - -jobs: - - update: - runs-on: ubuntu-latest - steps: - - name: checkout - uses: actions/checkout@v3 - with: - ref: release_${{ github.event.inputs.version }} - fetch-depth: 0 - - run: | - git fetch --force --tags - - name: Setup go - uses: actions/setup-go@v4 - with: - go-version: 1.19 - - name: goreleaser - uses: goreleaser/goreleaser-action@v4 - with: - args: release --clean --release-notes release.md -f .goreleaser.update.yaml - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - packages: - uses: ./.github/workflows/packages.yml - with: - version: ${{ github.event.inputs.version }} - - pull-request: - uses: ./.github/workflows/pull-request.yml - with: - version: ${{ github.event.inputs.version }} \ No newline at end of file From 730aca7ed88bc01ffbd4c2a66a2e429aafd82da6 Mon Sep 17 00:00:00 2001 From: Matthew R Kasun Date: Mon, 8 May 2023 10:42:39 -0400 Subject: [PATCH 2/4] use forked repo --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1990d8bb..1847f73f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,7 +13,7 @@ on: jobs: release: - uses: gravitl/devops/.github/workflows/netmakerRelease.yml@master + uses: mattkasun/devops/.github/workflows/netmakerRelease.yml@master with: version: ${{ inputs.version }} secrets: inherit From c6fa4c03caad2d62985154d491955dd8c8787d13 Mon Sep 17 00:00:00 2001 From: Matthew R Kasun Date: Mon, 8 May 2023 10:43:23 -0400 Subject: [PATCH 3/4] Revert "use forked repo" This reverts commit 730aca7ed88bc01ffbd4c2a66a2e429aafd82da6. --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1847f73f..1990d8bb 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,7 +13,7 @@ on: jobs: release: - uses: mattkasun/devops/.github/workflows/netmakerRelease.yml@master + uses: gravitl/devops/.github/workflows/netmakerRelease.yml@master with: version: ${{ inputs.version }} secrets: inherit From ac65576d96c7a6314bdb330fc269782f0339d01a Mon Sep 17 00:00:00 2001 From: Matthew R Kasun Date: Mon, 8 May 2023 14:10:17 -0400 Subject: [PATCH 4/4] fix typo --- .github/workflows/deletedroplets.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deletedroplets.yml b/.github/workflows/deletedroplets.yml index 6c37084a..f6a40306 100644 --- a/.github/workflows/deletedroplets.yml +++ b/.github/workflows/deletedroplets.yml @@ -23,7 +23,7 @@ jobs: webhook_token: ${{ secrets.DISCORD_WEBHOOK_TOKEN }} color: "#42f545" username: "GitHub Bot" - message: "${{ github.respository }}: ${{ github.event.workflow_run.name }} was successful" + message: "${{ github.repository }}: ${{ github.event.workflow_run.name }} was successful" file: ./results/results.log - name: discord server message uses: appleboy/discord-action@master @@ -62,7 +62,7 @@ jobs: webhook_token: ${{ secrets.DISCORD_WEBHOOK_TOKEN }} color: "#990000" username: "GitHub Bot" - message: "${{ github.respository }}: ${{ github.event.workflow_run.name }} failed" + message: "${{ github.repository }}: ${{ github.event.workflow_run.name }} failed" file: ./results/results.log - name: discord server message uses: appleboy/discord-action@master