New CI job to automatically generate the Github release (#4094)

* New CI job to automatically generate the Github release

Fixes #4083

New `gh_release` job in the `release.yml` for creating the release in
Github and uploading the CLI binaries for each platform, along with
their checksum files.

This job only gets triggered upon successful docker images building and
pushing, and kind and cloud integration tests passing.

The Helm chart deploying job gets now triggered upon the success of this
new job.

Signed-off-by: Alejandro Pedraza <alejandro@buoyant.io>
This commit is contained in:
Alejandro Pedraza 2020-02-26 09:05:55 -05:00 committed by GitHub
parent d9956f3b35
commit c355ae8ff0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 30 additions and 9 deletions

View File

@ -14,10 +14,6 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set environment variables from scripts
run: |
. bin/_tag.sh
echo ::set-env name=TAG::$(CI_FORCE_CLEAN=1 bin/root-tag)
- name: Setup SSH config for Packet
run: |
mkdir -p ~/.ssh/

View File

@ -19,10 +19,6 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set environment variables from scripts
run: |
. bin/_tag.sh
echo ::set-env name=TAG::$(CI_FORCE_CLEAN=1 bin/root-tag)
- name: Setup SSH config for Packet
run: |
mkdir -p ~/.ssh/
@ -212,10 +208,39 @@ jobs:
run: |
export TAG="$($HOME/.linkerd version --client --short)"
go test -cover -race -v -mod=readonly ./cni-plugin/test -integration-tests
gh_release:
name: Create GH release
if: startsWith(github.ref, 'refs/tags/stable') || startsWith(github.ref, 'refs/tags/edge')
runs-on: ubuntu-18.04
needs: [kind_integration_tests, cloud_integration_tests]
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set environment variables from scripts
run: |
. bin/_tag.sh
echo ::set-env name=TAG::$(CI_FORCE_CLEAN=1 bin/root-tag)
- name: Pull CLI binaries
run : bin/docker-pull-binaries $TAG
- name: Create release
id: create_release
uses: softprops/action-gh-release@91409e7
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
draft: false
prelease: false
files: |
./target/release/linkerd2-cli-*-darwin
./target/release/linkerd2-cli-*-darwin.sha256
./target/release/linkerd2-cli-*-linux
./target/release/linkerd2-cli-*-linux.sha256
./target/release/linkerd2-cli-*-windows.exe
./target/release/linkerd2-cli-*-windows.exe.sha256
chart_deploy:
name: Helm chart deploy
runs-on: ubuntu-18.04
needs: [kind_integration_tests, cloud_integration_tests]
needs: [gh_release]
steps:
- name: Checkout code
uses: actions/checkout@v2