Skip to content

Commit faa15c7

Browse files
sh1pt-actions-fleet[bot]ralyodioclaude
authored
sh1pt: install Node pnpm CI (node-pnpm-ci@1.2.0) (#10)
* Add .github/workflows/ci.yml via sh1pt node-pnpm-ci@1.2.0 * Add pnpm-lock.yaml and stop gitignoring it so CI passes The CI (ci.yml) and test (test.yml) workflows use `cache: pnpm` and `pnpm install --frozen-lockfile`, both of which require a committed pnpm-lock.yaml. The repo declared `packageManager: pnpm@10.6.5` but .gitignore excluded the lockfile, so the workflows failed at the setup-node step with "Dependencies lock file is not found". - Remove pnpm-lock.yaml from .gitignore - Commit the lockfile generated with pnpm 10.6.5 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * CI: install ffmpeg and imagemagick before running tests The test suite is integration tests that shell out to ffmpeg/ffprobe and ImageMagick's `convert`. Without those binaries the tests fail with "FFmpeg is not installed or not available in PATH". Add an apt install step to both the CI and test workflows so the runner has them. Verified locally: 85 passing, 12 pending, 0 failing. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: sh1pt-actions-fleet[bot] <287014002+sh1pt-actions-fleet[bot]@users.noreply.github.com> Co-authored-by: Anthony <anthony@profullstack.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
1 parent a8abf44 commit faa15c7

4 files changed

Lines changed: 744 additions & 1 deletion

File tree

.github/workflows/ci.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# Managed by sh1pt Actions Fleet
2+
# pack: node-pnpm-ci@1.2.0
3+
# install: sh1pt-actions-store
4+
# hash: sha256:4c5b9b88dee99de5f463194b4784ab267b400789a6d0f1aaf5b5dede9236376f
5+
name: CI
6+
7+
on:
8+
push:
9+
branches: [main, master]
10+
pull_request:
11+
12+
permissions:
13+
contents: read
14+
15+
concurrency:
16+
group: ci-${{ github.workflow }}-${{ github.ref }}
17+
cancel-in-progress: true
18+
19+
jobs:
20+
build:
21+
runs-on: ubuntu-latest
22+
timeout-minutes: 15
23+
steps:
24+
- uses: actions/checkout@v4
25+
26+
# The test suite shells out to ffmpeg/ffprobe and ImageMagick's convert;
27+
# install them so the integration tests can run on the runner.
28+
- name: Install FFmpeg and ImageMagick
29+
run: sudo apt-get update && sudo apt-get install -y ffmpeg imagemagick
30+
31+
# pnpm version is read from the "packageManager" field in package.json.
32+
# Do not pin a version here — it conflicts with packageManager and fails
33+
# with ERR_PNPM_BAD_PM_VERSION.
34+
- uses: pnpm/action-setup@v4
35+
36+
- uses: actions/setup-node@v4
37+
with:
38+
node-version: '22'
39+
cache: pnpm
40+
41+
- run: pnpm install --frozen-lockfile
42+
43+
# typecheck / test default to `pnpm run --if-present <script>` so a repo
44+
# that hasn't defined these scripts yet gets a green workflow instead of
45+
# failing on the first step. Once the scripts exist they run normally.
46+
- run: pnpm run --if-present typecheck
47+
48+
- run: pnpm run --if-present test

.github/workflows/test.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,11 @@ jobs:
1919
steps:
2020
- uses: actions/checkout@v4
2121

22+
# The test suite shells out to ffmpeg/ffprobe and ImageMagick's convert;
23+
# install them so the integration tests can run on the runner.
24+
- name: Install FFmpeg and ImageMagick
25+
run: sudo apt-get update && sudo apt-get install -y ffmpeg imagemagick
26+
2227
# pnpm version is read from the "packageManager" field in package.json.
2328
# Do not pin a version here — it conflicts with packageManager and fails
2429
# with ERR_PNPM_BAD_PM_VERSION.

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ yarn-debug.log*
88
yarn-error.log*
99
.pnpm-debug.log*
1010

11-
pnpm-lock.yaml
1211
ffmpeg_build/
1312

1413
# Environment variables

0 commit comments

Comments
 (0)