Skip to content

Commit 99e3b4d

Browse files
committed
ci: add release-please workflows (testing)
1 parent fdb709b commit 99e3b4d

2 files changed

Lines changed: 148 additions & 102 deletions

File tree

Lines changed: 32 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -1,116 +1,46 @@
1-
name: Trigger Package Publishing
1+
name: Release Please
22

33
on:
4-
pull_request:
5-
types: [closed]
4+
push:
65
branches:
7-
# - develop TODO: enable after testing
8-
- fre/release-please
6+
# - develop # TODO: enable after testing
7+
- fre/release-please # Test branch
98

109
permissions:
1110
contents: write
12-
actions: write
11+
pull-requests: write
1312

1413
jobs:
15-
check-releases:
16-
if: |
17-
github.event.pull_request.merged == true &&
18-
contains(github.event.pull_request.title, 'chore: release')
14+
release-please:
1915
runs-on: ubuntu-latest
2016
outputs:
21-
core-react: ${{ steps.check.outputs.core-react }}
22-
lab-react: ${{ steps.check.outputs.lab-react }}
23-
data-grid-react: ${{ steps.check.outputs.data-grid-react }}
24-
icons: ${{ steps.check.outputs.icons }}
17+
releases_created: ${{ steps.release.outputs.releases_created }}
18+
eds-core-react--release_created: ${{ steps.release.outputs['packages/eds-core-react--release_created'] }}
19+
eds-core-react--tag_name: ${{ steps.release.outputs['packages/eds-core-react--tag_name'] }}
20+
eds-data-grid-react--release_created: ${{ steps.release.outputs['packages/eds-data-grid-react--release_created'] }}
21+
eds-data-grid-react--tag_name: ${{ steps.release.outputs['packages/eds-data-grid-react--tag_name'] }}
22+
eds-icons--release_created: ${{ steps.release.outputs['packages/eds-icons--release_created'] }}
23+
eds-icons--tag_name: ${{ steps.release.outputs['packages/eds-icons--tag_name'] }}
24+
eds-lab-react--release_created: ${{ steps.release.outputs['packages/eds-lab-react--release_created'] }}
25+
eds-lab-react--tag_name: ${{ steps.release.outputs['packages/eds-lab-react--tag_name'] }}
26+
eds-tokens--release_created: ${{ steps.release.outputs['packages/eds-tokens--release_created'] }}
27+
eds-tokens--tag_name: ${{ steps.release.outputs['packages/eds-tokens--tag_name'] }}
28+
eds-tokens-build--release_created: ${{ steps.release.outputs['packages/eds-tokens-build--release_created'] }}
29+
eds-tokens-build--tag_name: ${{ steps.release.outputs['packages/eds-tokens-build--tag_name'] }}
30+
eds-tokens-sync--release_created: ${{ steps.release.outputs['packages/eds-tokens-sync--release_created'] }}
31+
eds-tokens-sync--tag_name: ${{ steps.release.outputs['packages/eds-tokens-sync--tag_name'] }}
32+
eds-utils--release_created: ${{ steps.release.outputs['packages/eds-utils--release_created'] }}
33+
eds-utils--tag_name: ${{ steps.release.outputs['packages/eds-utils--tag_name'] }}
2534
steps:
26-
- name: Checkout
27-
uses: actions/checkout@v4
35+
- uses: google-github-actions/release-please-action@v4
36+
id: release
2837
with:
29-
fetch-depth: 2
38+
config-file: .github/release-please-config.json
39+
manifest-file: .github/release-please-manifest.json
40+
token: ${{ secrets.GITHUB_TOKEN }}
3041

31-
- name: Check which packages changed
32-
id: check
42+
- name: Print release outputs for debugging
43+
if: ${{ steps.release.outputs.releases_created }}
3344
run: |
34-
# Check if package.json files were modified in the PR
35-
if git diff HEAD~1 HEAD --name-only | grep -q "packages/eds-core-react/package.json"; then
36-
echo "core-react=true" >> $GITHUB_OUTPUT
37-
else
38-
echo "core-react=false" >> $GITHUB_OUTPUT
39-
fi
40-
41-
if git diff HEAD~1 HEAD --name-only | grep -q "packages/eds-lab-react/package.json"; then
42-
echo "lab-react=true" >> $GITHUB_OUTPUT
43-
else
44-
echo "lab-react=false" >> $GITHUB_OUTPUT
45-
fi
46-
47-
if git diff HEAD~1 HEAD --name-only | grep -q "packages/eds-data-grid-react/package.json"; then
48-
echo "data-grid-react=true" >> $GITHUB_OUTPUT
49-
else
50-
echo "data-grid-react=false" >> $GITHUB_OUTPUT
51-
fi
52-
53-
if git diff HEAD~1 HEAD --name-only | grep -q "packages/eds-icons/package.json"; then
54-
echo "icons=true" >> $GITHUB_OUTPUT
55-
else
56-
echo "icons=false" >> $GITHUB_OUTPUT
57-
fi
58-
59-
trigger-core-react:
60-
needs: check-releases
61-
if: needs.check-releases.outputs.core-react == 'true'
62-
runs-on: ubuntu-latest
63-
steps:
64-
- name: Trigger core-react publish
65-
env:
66-
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
67-
run: |
68-
gh workflow run publish-core-react.yml \
69-
--repo ${{ github.repository }} \
70-
--ref develop \
71-
-f npm-tag=latest \
72-
-f environment=production
73-
74-
trigger-lab-react:
75-
needs: check-releases
76-
if: needs.check-releases.outputs.lab-react == 'true'
77-
runs-on: ubuntu-latest
78-
steps:
79-
- name: Trigger lab-react publish
80-
env:
81-
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
82-
run: |
83-
gh workflow run publish-lab-react.yml \
84-
--repo ${{ github.repository }} \
85-
--ref develop \
86-
-f npm-tag=latest \
87-
-f environment=production
88-
89-
trigger-data-grid-react:
90-
needs: check-releases
91-
if: needs.check-releases.outputs.data-grid-react == 'true'
92-
runs-on: ubuntu-latest
93-
steps:
94-
- name: Trigger data-grid-react publish
95-
env:
96-
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
97-
run: |
98-
gh workflow run publish-data-grid-react.yml \
99-
--repo ${{ github.repository }} \
100-
--ref develop \
101-
-f npm-tag=latest \
102-
-f environment=production
103-
104-
trigger-icons:
105-
needs: check-releases
106-
if: needs.check-releases.outputs.icons == 'true'
107-
runs-on: ubuntu-latest
108-
steps:
109-
- name: Trigger icons publish
110-
env:
111-
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
112-
run: |
113-
gh workflow run publish-icons.yml \
114-
--repo ${{ github.repository }} \
115-
--ref develop \
116-
-f npm-tag=latest
45+
echo "Releases created!"
46+
echo "${{ toJson(steps.release.outputs) }}"
Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
name: Trigger Package Publishing
2+
3+
on:
4+
pull_request:
5+
types: [closed]
6+
branches:
7+
# - develop TODO: enable after testing
8+
- fre/release-please
9+
10+
permissions:
11+
contents: write
12+
actions: write
13+
14+
jobs:
15+
check-releases:
16+
if: |
17+
github.event.pull_request.merged == true &&
18+
contains(github.event.pull_request.title, 'chore: release')
19+
runs-on: ubuntu-latest
20+
outputs:
21+
core-react: ${{ steps.check.outputs.core-react }}
22+
lab-react: ${{ steps.check.outputs.lab-react }}
23+
data-grid-react: ${{ steps.check.outputs.data-grid-react }}
24+
icons: ${{ steps.check.outputs.icons }}
25+
steps:
26+
- name: Checkout
27+
uses: actions/checkout@v4
28+
with:
29+
fetch-depth: 2
30+
31+
- name: Check which packages changed
32+
id: check
33+
run: |
34+
# Check if package.json files were modified in the PR
35+
if git diff HEAD~1 HEAD --name-only | grep -q "packages/eds-core-react/package.json"; then
36+
echo "core-react=true" >> $GITHUB_OUTPUT
37+
else
38+
echo "core-react=false" >> $GITHUB_OUTPUT
39+
fi
40+
41+
if git diff HEAD~1 HEAD --name-only | grep -q "packages/eds-lab-react/package.json"; then
42+
echo "lab-react=true" >> $GITHUB_OUTPUT
43+
else
44+
echo "lab-react=false" >> $GITHUB_OUTPUT
45+
fi
46+
47+
if git diff HEAD~1 HEAD --name-only | grep -q "packages/eds-data-grid-react/package.json"; then
48+
echo "data-grid-react=true" >> $GITHUB_OUTPUT
49+
else
50+
echo "data-grid-react=false" >> $GITHUB_OUTPUT
51+
fi
52+
53+
if git diff HEAD~1 HEAD --name-only | grep -q "packages/eds-icons/package.json"; then
54+
echo "icons=true" >> $GITHUB_OUTPUT
55+
else
56+
echo "icons=false" >> $GITHUB_OUTPUT
57+
fi
58+
59+
trigger-core-react:
60+
needs: check-releases
61+
if: needs.check-releases.outputs.core-react == 'true'
62+
runs-on: ubuntu-latest
63+
steps:
64+
- name: Trigger core-react publish
65+
env:
66+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
67+
run: |
68+
gh workflow run publish-core-react.yml \
69+
--repo ${{ github.repository }} \
70+
--ref develop \
71+
-f npm-tag=latest \
72+
-f environment=production
73+
74+
trigger-lab-react:
75+
needs: check-releases
76+
if: needs.check-releases.outputs.lab-react == 'true'
77+
runs-on: ubuntu-latest
78+
steps:
79+
- name: Trigger lab-react publish
80+
env:
81+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
82+
run: |
83+
gh workflow run publish-lab-react.yml \
84+
--repo ${{ github.repository }} \
85+
--ref develop \
86+
-f npm-tag=latest \
87+
-f environment=production
88+
89+
trigger-data-grid-react:
90+
needs: check-releases
91+
if: needs.check-releases.outputs.data-grid-react == 'true'
92+
runs-on: ubuntu-latest
93+
steps:
94+
- name: Trigger data-grid-react publish
95+
env:
96+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
97+
run: |
98+
gh workflow run publish-data-grid-react.yml \
99+
--repo ${{ github.repository }} \
100+
--ref develop \
101+
-f npm-tag=latest \
102+
-f environment=production
103+
104+
trigger-icons:
105+
needs: check-releases
106+
if: needs.check-releases.outputs.icons == 'true'
107+
runs-on: ubuntu-latest
108+
steps:
109+
- name: Trigger icons publish
110+
env:
111+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
112+
run: |
113+
gh workflow run publish-icons.yml \
114+
--repo ${{ github.repository }} \
115+
--ref develop \
116+
-f npm-tag=latest

0 commit comments

Comments
 (0)