Skip to content

Commit 3e83a20

Browse files
authored
Merge pull request #5 from hellofresh/feature/PCCS-11868-update-workflow
[PCCS-11868] Update Worklfow
2 parents 58929c7 + 6bf1796 commit 3e83a20

File tree

1 file changed

+32
-74
lines changed

1 file changed

+32
-74
lines changed

.github/workflows/release.yml

Lines changed: 32 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -6,108 +6,66 @@ on:
66
- created
77

88
jobs:
9-
linux:
10-
name: linux@amd64
11-
runs-on: ubuntu-latest
9+
build:
10+
strategy:
11+
fail-fast: true
12+
matrix:
13+
config:
14+
- name: linux@amd64
15+
os: ubuntu-latest
16+
platform: linux
17+
- name: macos@amd64
18+
os: macos-latest
19+
platform: darwin
1220

21+
runs-on: ${{ matrix.config.os }}
22+
name: ${{ matrix.config.name }}
1323
steps:
14-
- name: Get release
24+
- uses: actions/github-script@v7
1525
id: get_release
16-
uses: bruceadams/[email protected]
17-
env:
18-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
19-
20-
- name: Checkout
21-
uses: actions/checkout@v2
22-
with:
23-
repository: grpc/grpc
24-
ref: ${{ steps.get_release.outputs.tag_name }}
25-
26-
- name: Install Basilisk
27-
run: |
28-
wget https://github.com/bazelbuild/bazelisk/releases/download/v1.7.5/bazelisk-linux-amd64
29-
chmod a+x bazelisk-linux-amd64
30-
sudo mv bazelisk-linux-amd64 /usr/local/bin/bazel
31-
32-
- name: Build grpc_php_plugin and grpc_pyhon_plugin
33-
run: |
34-
bazel build src/compiler:grpc_php_plugin
35-
bazel build src/compiler:grpc_python_plugin
36-
- name: Archive artifacts
37-
env:
38-
VERSION: ${{ steps.get_release.outputs.tag_name }}
39-
run: |
40-
cd bazel-bin/src/compiler/
41-
cp grpc_php_plugin grpc-php-plugin
42-
tar czf grpc-php-plugin.${VERSION}.linux.amd64.tar.gz grpc-php-plugin
43-
cp grpc_python_plugin grpc-python-plugin
44-
tar czf grpc-python-plugin.${VERSION}.linux.amd64.tar.gz grpc-python-plugin
45-
46-
- name: Upload Release Asset for grpc_php_plugin
47-
uses: actions/upload-release-asset@v1
48-
env:
49-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5026
with:
51-
upload_url: ${{ steps.get_release.outputs.upload_url }}
52-
asset_path: bazel-bin/src/compiler/grpc-php-plugin.${{ steps.get_release.outputs.tag_name }}.linux.amd64.tar.gz
53-
asset_name: grpc-php-plugin.${{ steps.get_release.outputs.tag_name }}.linux.amd64.tar.gz
54-
asset_content_type: application/gzip
27+
script: |
28+
const tag = context.ref.replace('refs/tags/', '');
29+
const { owner, repo } = context.repo;
30+
const { data: { upload_url } } = await github.rest.repos.getReleaseByTag({ owner, repo, tag });
5531
56-
- name: Upload Release Asset for grpc_python_plugin
57-
uses: actions/upload-release-asset@v1
58-
env:
59-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
60-
with:
61-
upload_url: ${{ steps.get_release.outputs.upload_url }}
62-
asset_path: bazel-bin/src/compiler/grpc-python-plugin.${{ steps.get_release.outputs.tag_name }}.linux.amd64.tar.gz
63-
asset_name: grpc-python-plugin.${{ steps.get_release.outputs.tag_name }}.linux.amd64.tar.gz
64-
asset_content_type: application/gzip
65-
66-
macos:
67-
name: macos@amd64
68-
runs-on: macos-latest
69-
70-
steps:
71-
- name: Get release
72-
id: get_release
73-
uses: bruceadams/[email protected]
74-
env:
75-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
32+
core.setOutput('upload_url', upload_url);
33+
core.setOutput('tag', tag);
7634
7735
- name: Checkout
7836
uses: actions/checkout@v2
7937
with:
8038
repository: grpc/grpc
81-
ref: ${{ steps.get_release.outputs.tag_name }}
39+
ref: ${{ steps.get_release.outputs.tag }}
8240

8341
- name: Install Basilisk
8442
run: |
85-
wget https://github.com/bazelbuild/bazelisk/releases/download/v1.7.5/bazelisk-darwin-amd64
86-
chmod a+x bazelisk-darwin-amd64
87-
sudo mv bazelisk-darwin-amd64 /usr/local/bin/bazel
43+
wget https://github.com/bazelbuild/bazelisk/releases/download/v1.7.5/bazelisk-${{ matrix.config.platform }}-amd64
44+
chmod a+x bazelisk-${{ matrix.config.platform }}-amd64
45+
sudo mv bazelisk-${{ matrix.config.platform }}-amd64 /usr/local/bin/bazel
8846
89-
- name: Build grpc_php_plugin and grpc_python_plugin
47+
- name: Build grpc_php_plugin and grpc_pyhon_plugin
9048
run: |
9149
bazel build src/compiler:grpc_php_plugin
9250
bazel build src/compiler:grpc_python_plugin
9351
- name: Archive artifacts
9452
env:
95-
VERSION: ${{ steps.get_release.outputs.tag_name }}
53+
VERSION: ${{ steps.get_release.outputs.tag }}
9654
run: |
9755
cd bazel-bin/src/compiler/
9856
cp grpc_php_plugin grpc-php-plugin
99-
tar czf grpc-php-plugin.${VERSION}.darwin.amd64.tar.gz grpc-php-plugin
57+
tar czf grpc-php-plugin.${VERSION}.${{ matrix.config.platform }}.amd64.tar.gz grpc-php-plugin
10058
cp grpc_python_plugin grpc-python-plugin
101-
tar czf grpc-python-plugin.${VERSION}.darwin.amd64.tar.gz grpc-python-plugin
59+
tar czf grpc-python-plugin.${VERSION}.${{ matrix.config.platform }}.amd64.tar.gz grpc-python-plugin
10260
10361
- name: Upload Release Asset for grpc_php_plugin
10462
uses: actions/upload-release-asset@v1
10563
env:
10664
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
10765
with:
10866
upload_url: ${{ steps.get_release.outputs.upload_url }}
109-
asset_path: bazel-bin/src/compiler/grpc-php-plugin.${{ steps.get_release.outputs.tag_name }}.darwin.amd64.tar.gz
110-
asset_name: grpc-php-plugin.${{ steps.get_release.outputs.tag_name }}.darwin.amd64.tar.gz
67+
asset_path: bazel-bin/src/compiler/grpc-php-plugin.${{ steps.get_release.outputs.tag }}.${{ matrix.config.platform }}.amd64.tar.gz
68+
asset_name: grpc-php-plugin.${{ steps.get_release.outputs.tag }}.${{ matrix.config.platform }}.amd64.tar.gz
11169
asset_content_type: application/gzip
11270

11371
- name: Upload Release Asset for grpc_python_plugin
@@ -116,6 +74,6 @@ jobs:
11674
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
11775
with:
11876
upload_url: ${{ steps.get_release.outputs.upload_url }}
119-
asset_path: bazel-bin/src/compiler/grpc-python-plugin.${{ steps.get_release.outputs.tag_name }}.darwin.amd64.tar.gz
120-
asset_name: grpc-python-plugin.${{ steps.get_release.outputs.tag_name }}.darwin.amd64.tar.gz
77+
asset_path: bazel-bin/src/compiler/grpc-python-plugin.${{ steps.get_release.outputs.tag }}.${{ matrix.config.platform }}.amd64.tar.gz
78+
asset_name: grpc-python-plugin.${{ steps.get_release.outputs.tag }}.${{ matrix.config.platform }}.amd64.tar.gz
12179
asset_content_type: application/gzip

0 commit comments

Comments
 (0)