ci(forgejo): drop setup-dotnet/setup-node/pnpm actions on Forgejo
code.forgejo.org does not mirror actions/setup-dotnet — the Forgejo runner was failing at 'workflow prepared' with 'Unauthorized' trying to clone it. Rather than fork a bunch of actions, install the tooling directly on the runner host (apt dotnet-sdk-8.0, nodesource node 20, npm -g pnpm) and call dotnet/node/pnpm inline. This keeps CI fully independent from external action registries. GitHub Actions copy in .github/workflows still uses the stock actions (and the cloud-backed setup-dotnet); it will be disabled in a follow-up once the Forgejo run is green end-to-end. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
3c17b963f3
commit
2b0a677221
|
|
@ -33,9 +33,9 @@ jobs:
|
|||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-dotnet@v4
|
||||
with:
|
||||
dotnet-version: '8.0.x'
|
||||
# dotnet 8 SDK is pre-installed on the self-hosted runner host.
|
||||
- name: Dotnet version
|
||||
run: dotnet --version
|
||||
|
||||
- name: Restore
|
||||
run: dotnet restore food-market.sln
|
||||
|
|
@ -57,15 +57,9 @@ jobs:
|
|||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: pnpm/action-setup@v4
|
||||
with:
|
||||
version: 10
|
||||
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: '20'
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: src/food-market.web/pnpm-lock.yaml
|
||||
# node 20 + pnpm are pre-installed on the self-hosted runner host.
|
||||
- name: Node + pnpm version
|
||||
run: node --version && pnpm --version
|
||||
|
||||
- name: Install
|
||||
run: pnpm install --frozen-lockfile
|
||||
|
|
@ -73,38 +67,15 @@ jobs:
|
|||
- name: Build (tsc + vite)
|
||||
run: pnpm build
|
||||
|
||||
- name: Upload dist
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: web-dist-${{ github.sha }}
|
||||
path: src/food-market.web/dist
|
||||
retention-days: 14
|
||||
|
||||
# POS build costs 2x Windows minutes — run only on tags / manual trigger,
|
||||
# not on every commit. Releases are built from tags anyway.
|
||||
# POS build requires Windows — no Forgejo runner for it; skipped silently.
|
||||
pos:
|
||||
name: POS (WPF, Windows)
|
||||
if: startsWith(github.ref, 'refs/tags/v') || github.event_name == 'workflow_dispatch'
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-dotnet@v4
|
||||
with:
|
||||
dotnet-version: '8.0.x'
|
||||
|
||||
- name: Restore
|
||||
run: dotnet restore src/food-market.pos/food-market.pos.csproj
|
||||
|
||||
- name: Build POS
|
||||
run: dotnet build src/food-market.pos/food-market.pos.csproj --no-restore -c Release
|
||||
|
||||
- name: Publish self-contained win-x64
|
||||
run: dotnet publish src/food-market.pos/food-market.pos.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -o publish
|
||||
|
||||
- name: Upload POS executable
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: food-market-pos-${{ github.sha }}
|
||||
path: publish
|
||||
retention-days: 14
|
||||
run: |
|
||||
dotnet restore src/food-market.pos/food-market.pos.csproj
|
||||
dotnet build src/food-market.pos/food-market.pos.csproj --no-restore -c Release
|
||||
dotnet publish src/food-market.pos/food-market.pos.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -o publish
|
||||
|
|
|
|||
Loading…
Reference in a new issue