@codfish/actions-playground 0.0.0-PR-71--e70b676 → 0.0.0-PR-77--2cb1b74

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,6 +10,11 @@ on:
10
10
  - 'next-major'
11
11
  - '+([0-9])?(.{+([0-9]),x}).x'
12
12
 
13
+ permissions:
14
+ contents: write
15
+ pull-requests: write
16
+ issues: write
17
+
13
18
  jobs:
14
19
  release:
15
20
  runs-on: ubuntu-latest
@@ -19,13 +24,17 @@ jobs:
19
24
  cancel-in-progress: false
20
25
 
21
26
  steps:
22
- - uses: actions/checkout@v3
27
+ - uses: actions/checkout@v5
23
28
  with:
24
29
  persist-credentials: false
25
30
 
26
- - uses: actions/setup-node@v1
31
+ - name: 'Install pnpm'
32
+ id: pnpm-setup
33
+ uses: pnpm/action-setup@v4
27
34
  with:
28
- node-version: 18.x
35
+ run_install: false
36
+
37
+ - uses: codfish/actions/setup-node-and-install@v1
29
38
 
30
39
  - shell: bash
31
40
  run: |
@@ -60,14 +69,13 @@ jobs:
60
69
  if: github.ref == 'refs/heads/main'
61
70
  uses: actions/upload-artifact@v4
62
71
  with:
63
- github-token: ${{ secrets.GITHUB_TOKEN }}
64
72
  name: text-file-${{ github.ref_name }}
65
73
  path: text.txt
66
74
 
67
75
  - run: cat Dockerfile
68
76
 
69
77
  - name: semantic-release
70
- uses: docker://ghcr.io/codfish/semantic-release-action:upgrades
78
+ uses: docker://ghcr.io/codfish/semantic-release-action@sha256:327a3ce08284f9dd9b83b607e3f668dae90139e68ce90780b0a43a09d577dc3a
71
79
  id: semantic
72
80
  with:
73
81
  additional-packages: |
@@ -175,39 +183,3 @@ jobs:
175
183
  platforms: linux/arm64,linux/amd64
176
184
  push: true
177
185
  tags: ${{ steps.tags.outputs.tags }}
178
- # - name: push docker images to dockerhub & GCR
179
- # if: steps.semantic.outputs.new-release-published == 'true'
180
- # run: |
181
- # docker tag codfish/actions-playground ghcr.io/codfish/actions-playground:latest
182
- # docker tag codfish/actions-playground codfish/actions-playground:$VERSION_TAG
183
- # docker tag codfish/actions-playground codfish/actions-playground:$MAJOR_TAG
184
- # docker tag codfish/actions-playground ghcr.io/codfish/actions-playground:$VERSION_TAG
185
- # docker tag codfish/actions-playground ghcr.io/codfish/actions-playground:$MAJOR_TAG
186
- #
187
- # docker push codfish/actions-playground:latest
188
- # docker push codfish/actions-playground:$VERSION_TAG
189
- # docker push codfish/actions-playground:$MAJOR_TAG
190
- # docker push ghcr.io/codfish/actions-playground:latest
191
- # docker push ghcr.io/codfish/actions-playground:$VERSION_TAG
192
- # docker push ghcr.io/codfish/actions-playground:$MAJOR_TAG
193
- # env:
194
- # VERSION_TAG: v${{ steps.semantic.outputs.release-version }}
195
- # MAJOR_TAG: v${{ steps.semantic.outputs.release-major }}
196
-
197
- # - name: build docs
198
- # run: |
199
- # npm ci --no-save
200
- # npm run build:docs
201
- # rm ./docs/.gitignore
202
- # env:
203
- # NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
204
- # does not work...
205
- # Error: The deploy step encountered an error: The process '/usr/bin/git' failed with exit code 128 ❌
206
- # Deployment failed! ❌
207
- # ::set-output name=deployment-status::failed
208
- #
209
- # - name: deploy documentation
210
- # uses: jamesives/github-pages-deploy-action@4.1.0
211
- # with:
212
- # branch: gh-pages
213
- # folder: docs
@@ -7,7 +7,7 @@ jobs:
7
7
  runs-on: ubuntu-latest
8
8
 
9
9
  steps:
10
- - uses: actions/checkout@v3
10
+ - uses: actions/checkout@v5
11
11
 
12
12
  - run: printenv
13
13
 
@@ -7,7 +7,7 @@ jobs:
7
7
  runs-on: ubuntu-latest
8
8
 
9
9
  steps:
10
- - uses: actions/checkout@v3
10
+ - uses: actions/checkout@v5
11
11
 
12
12
  - run: printenv
13
13
 
@@ -13,12 +13,16 @@ jobs:
13
13
  cancel-in-progress: true
14
14
 
15
15
  steps:
16
- - uses: actions/setup-node@v3
16
+ - name: 'Install pnpm'
17
+ id: pnpm-setup
18
+ uses: pnpm/action-setup@v4
17
19
  with:
18
- node-version: 20
20
+ run_install: false
21
+
22
+ - uses: codfish/actions/setup-node-and-install@v1
19
23
 
20
24
  - name: install commitlint deps
21
- run: npm install @commitlint/{cli,config-angular}
25
+ run: pnpm add @commitlint/{cli,config-angular}
22
26
 
23
27
  # todo: loosen restrictions set in @commitlint/config-angular to allow for more flexibility
24
28
  - name: create commitlint config without yaml errors
@@ -11,17 +11,10 @@ jobs:
11
11
  cancel-in-progress: true
12
12
 
13
13
  steps:
14
- - uses: actions/checkout@v3
14
+ - uses: actions/checkout@v5
15
15
  with:
16
16
  fetch-depth: 0
17
17
 
18
- - uses: actions/setup-node@v3
19
- id: setup-node
20
- with:
21
- cache: 'npm'
22
- node-version-file: '.nvmrc'
23
- registry-url: 'https://registry.npmjs.org'
24
-
25
18
  - name: troubleshooting
26
19
  env:
27
20
  GITHUB_CONTEXT: ${{ toJson(github) }}
@@ -30,65 +23,121 @@ jobs:
30
23
  git branch -a
31
24
  echo "$GITHUB_CONTEXT"
32
25
 
33
- - uses: actions/cache@v3
34
- id: npm-cache
26
+ - name: 'Install pnpm'
27
+ id: pnpm-setup
28
+ uses: pnpm/action-setup@v4
35
29
  with:
36
- path: node_modules
37
- key:
38
- ${{ runner.os }}-node_modules-${{ steps.setup-node.outputs.node-version }}-${{
39
- hashFiles('**/package-lock.json') }}
30
+ run_install: false
31
+
32
+ - name: Dump pnpm outputs
33
+ env:
34
+ PNPM_CONTEXT: ${{ toJson(steps.pnpm-setup.outputs) }}
35
+ run: |
36
+ echo "$PNPM_CONTEXT"
37
+ echo "PNPM_HOME: $PNPM_HOME"
38
+
39
+ - uses: codfish/actions/setup-node-and-install@fixes
40
40
 
41
41
  - name: semantic release dry run
42
- uses: docker://ghcr.io/codfish/semantic-release-action@sha256:4c0955361cf42e5ab9bb05df3a1e2a781c443f9760b63a68957689445051a2fb
42
+ uses: docker://ghcr.io/codfish/semantic-release-action@sha256:327a3ce08284f9dd9b83b607e3f668dae90139e68ce90780b0a43a09d577dc3a
43
43
  with:
44
44
  dry-run: true
45
+ additional-packages: |
46
+ ['@google/semantic-release-replace-plugin', '@semantic-release/git', 'conventional-changelog-conventionalcommits@7']
47
+ plugins: |
48
+ [
49
+ '@semantic-release/commit-analyzer',
50
+ [
51
+ '@google/semantic-release-replace-plugin',
52
+ {
53
+ 'replacements': [
54
+ {
55
+ 'files': ['Dockerfile'],
56
+ 'from': 'RELEASE_VERSION=.*',
57
+ 'to': 'RELEASE_VERSION=${nextRelease.version}'
58
+ },
59
+ {
60
+ 'files': ['provisioning/Chart.yml'],
61
+ 'from': 'ersion: .*',
62
+ 'to': 'ersion: ${nextRelease.version}'
63
+ }
64
+ ]
65
+ }
66
+ ],
67
+ [ '@semantic-release/git', {'assets': ['Dockerfile', 'provisioning/Chart.yml']} ],
68
+ [
69
+ "@semantic-release/release-notes-generator",
70
+ {
71
+ "preset": "conventionalcommits",
72
+ "presetConfig": {
73
+ "types": [
74
+ { type: 'feat', section: 'Features', hidden: false },
75
+ { type: 'fix', section: 'Bug Fixes', hidden: false },
76
+ { type: 'perf', section: 'Performance Improvements', hidden: false },
77
+ { type: 'revert', section: 'Reverts', hidden: false },
78
+ { type: 'docs', section: 'Other Updates', hidden: false },
79
+ { type: 'style', section: 'Other Updates', hidden: false },
80
+ { type: 'chore', section: 'Other Updates', hidden: false },
81
+ { type: 'refactor', section: 'Other Updates', hidden: false },
82
+ { type: 'test', section: 'Other Updates', hidden: false },
83
+ { type: 'build', section: 'Other Updates', hidden: false },
84
+ { type: 'ci', section: 'Other Updates', hidden: false }
85
+ ]
86
+ }
87
+ }
88
+ ],
89
+ '@semantic-release/npm',
90
+ '@semantic-release/github'
91
+ ]
92
+ pnpm-dest: ${{ steps.pnpm-setup.outputs.dest }}
45
93
  env:
46
94
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
47
95
  NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
48
96
 
49
- - name: install dependencies
50
- if: steps.npm-cache.outputs.cache-hit != 'true'
51
- run: npm ci --prefer-offline --no-audit
52
-
53
97
  - name: Retrieve text file
54
98
  uses: actions/download-artifact@v4
55
99
  with:
56
100
  github-token: ${{ secrets.GITHUB_TOKEN }}
57
101
 
58
- - run:
59
- npm run lint:commit -- --from="origin/${{ github.base_ref }}"
60
- --to="origin/${{github.head_ref }}"
61
- env:
62
- NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
63
-
64
102
  - name: lint js
65
- run: npm run lint
103
+ run: pnpm lint
66
104
 
67
105
  - name: lint markdown
68
- run: npm run lint:md
106
+ run: pnpm lint:md
69
107
 
70
108
  - name: run tests
71
- run: npm run test
109
+ run: pnpm test
72
110
 
73
- - name: publish to npm
74
- id: pr-publish
75
- run: |
76
- version="0.0.0-PR-${PR}--$(echo ${SHA} | cut -c -7)"
77
- npm version $version --no-git-tag-version
78
- npm publish --access public --tag pr
79
- echo "::set-output name=pr_version::$version"
80
- env:
81
- NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
82
- PR: ${{ github.event.number }}
83
- SHA: ${{ github.event.pull_request.head.sha }}
111
+ - uses: codfish/actions/npm-publish-pr@fixes
112
+ with:
113
+ github-token: ${{ secrets.GITHUB_TOKEN }}
114
+ npm-token: ${{ secrets.NPM_TOKEN }}
84
115
 
85
- - uses: actions/github-script@v3
116
+ - name: Build package
117
+ run: pnpm build
118
+
119
+ - name: Calculate build size
120
+ run: |
121
+ if [ -d "dist" ]; then
122
+ size=$(du -sh dist | cut -f1)
123
+ elif [ -d "build" ]; then
124
+ size=$(du -sh build | cut -f1)
125
+ elif [ -f "package.json" ]; then
126
+ size=$(du -sh . --exclude=node_modules | cut -f1)
127
+ else
128
+ size="unknown"
129
+ fi
130
+ echo "size=$size" >> $GITHUB_OUTPUT
131
+ id: build
132
+
133
+ - uses: codfish/actions/comment@v1
86
134
  with:
87
- github-token: ${{secrets.GITHUB_TOKEN}}
88
- script: |
89
- github.issues.createComment({
90
- issue_number: context.issue.number,
91
- owner: context.repo.owner,
92
- repo: context.repo.repo,
93
- body: '🚀 PR version published: `${{ steps.pr-publish.outputs.pr_version }}`'
94
- })
135
+ message: |
136
+ ## 🚀 **Build Summary**
137
+
138
+ **Build**: ✅ completed successfully
139
+ **Size**: ${{ steps.build.outputs.size }}
140
+
141
+ Ready for testing! 🎉
142
+ tag: 'build-summary'
143
+ upsert: true
File without changes
package/.nvmrc CHANGED
@@ -1 +1 @@
1
- 18.7.0
1
+ 22.18.0
package/Dockerfile CHANGED
@@ -1,18 +1,20 @@
1
- FROM node:18.7.0
1
+ FROM node:22.18.0
2
2
 
3
3
  RUN mkdir /app
4
4
  WORKDIR /app
5
5
 
6
- COPY ./package.json ./package-lock.json ./
7
-
8
- RUN npm ci
6
+ COPY ./package.json ./pnpm-lock.yaml ./
7
+ ENV PNPM_HOME="/pnpm"
8
+ ENV PATH="$PNPM_HOME:$PATH"
9
+ RUN corepack enable
10
+ RUN pnpm install
9
11
 
10
12
  COPY ./src ./src
11
13
  COPY ./public ./public
12
14
 
13
- ENV RELEASE_VERSION=6.3.0
15
+ ENV RELEASE_VERSION=6.10.0
14
16
 
15
- RUN npm run build
17
+ RUN pnpm build
16
18
 
17
19
  EXPOSE 80
18
- CMD ["npm", "start"]
20
+ CMD ["pnpm", "start"]
package/package.json CHANGED
@@ -1,23 +1,11 @@
1
1
  {
2
2
  "name": "@codfish/actions-playground",
3
- "version": "0.0.0-PR-71--e70b676",
3
+ "version": "0.0.0-PR-77--2cb1b74",
4
4
  "description": "My own testing ground for messing around with GitHub Actions.",
5
5
  "private": false,
6
6
  "publishConfig": {
7
7
  "access": "public"
8
8
  },
9
- "scripts": {
10
- "start": "PUBLIC_URL=/ react-scripts start",
11
- "build": "react-scripts build",
12
- "build:docs": "jsdoc src -d docs",
13
- "eject": "react-scripts eject",
14
- "format": "cod-scripts format",
15
- "lint": "cod-scripts lint",
16
- "lint:md": "markdownlint -i node_modules -i dist .",
17
- "lint:commit": "cod-scripts commitlint",
18
- "test": "echo \"No tests yet.\"",
19
- "validate": "cod-scripts validate"
20
- },
21
9
  "repository": {
22
10
  "type": "git",
23
11
  "url": "git+https://github.com/codfish/actions-playground.git"
@@ -53,12 +41,6 @@
53
41
  "./node_modules/cod-scripts/eslint.js"
54
42
  ]
55
43
  },
56
- "husky": {
57
- "hooks": {
58
- "pre-commit": "cod-scripts pre-commit",
59
- "commit-msg": "cod-scripts commitlint -E HUSKY_GIT_PARAMS"
60
- }
61
- },
62
44
  "browserslist": {
63
45
  "production": [
64
46
  ">0.2%",
@@ -70,5 +52,21 @@
70
52
  "last 1 firefox version",
71
53
  "last 1 safari version"
72
54
  ]
55
+ },
56
+ "volta": {
57
+ "node": "22.18.0",
58
+ "yarn": "4.10.3"
59
+ },
60
+ "scripts": {
61
+ "start": "PUBLIC_URL=/ react-scripts start",
62
+ "build": "react-scripts build",
63
+ "build:docs": "jsdoc src -d docs",
64
+ "eject": "react-scripts eject",
65
+ "format": "cod-scripts format",
66
+ "lint": "cod-scripts lint",
67
+ "lint:md": "markdownlint -i node_modules -i dist .",
68
+ "lint:commit": "cod-scripts commitlint",
69
+ "test": "echo \"No tests yet.\"",
70
+ "validate": "cod-scripts validate"
73
71
  }
74
- }
72
+ }
@@ -1,3 +1,3 @@
1
- appVersion: 6.3.0
1
+ appVersion: 6.10.0
2
2
  name: actions-playground
3
- version: 6.3.0
3
+ version: 6.10.0
package/test.txt CHANGED
@@ -4,6 +4,3 @@ test release with a chore
4
4
 
5
5
  test latest release
6
6
 
7
- feature release 2
8
-
9
- breaking update