mirror of
https://github.com/colbymchenry/codegraph.git
synced 2026-10-29 06:46:49 +08:00
73 lines
3.2 KiB
YAML
73 lines
3.2 KiB
YAML
name: Linux release candidate validation
|
|
on:
|
|
push:
|
|
branches: [candidate/extensions-release-20260923]
|
|
paths:
|
|
- '.github/workflows/release-linux-candidate.yml'
|
|
- 'docs/validation/release-package-proof.cjs'
|
|
- 'docs/validation/release-command.py'
|
|
- 'docs/validation/release-linux-shards.py'
|
|
permissions:
|
|
contents: read
|
|
jobs:
|
|
linux:
|
|
if: github.repository == 'colbymchenry/codegraph'
|
|
runs-on: ubuntu-24.04
|
|
timeout-minutes: 40
|
|
env:
|
|
CODEGRAPH_TELEMETRY: '0'
|
|
npm_config_cache: ${{ github.workspace }}/.qa/npm-cache
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
persist-credentials: false
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: '22.23.2'
|
|
- run: npm ci --no-audit --no-fund
|
|
- name: Build coherent archive
|
|
run: python3 docs/validation/release-command.py release-linux-bundle bash scripts/build-bundle.sh linux-x64 v24.16.0
|
|
- name: Assemble npm packages
|
|
run: python3 docs/validation/release-command.py release-linux-pack bash scripts/pack-npm.sh
|
|
- name: Actual archive and npm CLI, SDK, extension lifecycle and companion
|
|
run: python3 docs/validation/release-command.py release-linux-package node docs/validation/release-package-proof.cjs
|
|
- name: Full Linux regression with exactly-once coverage
|
|
if: success() || failure()
|
|
run: python3 docs/validation/release-linux-shards.py "$GITHUB_SHA"
|
|
- name: Compiled workers and native paths
|
|
if: success() || failure()
|
|
run: |
|
|
python3 docs/validation/release-command.py release-linux-workers node --test scripts/validation/extensions-runtime.test.cjs
|
|
python3 docs/validation/release-command.py release-linux-paths node scripts/validation/native-paths.cjs
|
|
- name: Semantic update recovery
|
|
if: success() || failure()
|
|
env:
|
|
SEMANTIC_RECOVERY_OUTPUT: .qa/release-semantic-recovery
|
|
run: python3 docs/validation/release-command.py release-linux-semantic node scripts/validation/semantic-update-recovery.cjs
|
|
- name: Managed extension recovery
|
|
if: success() || failure()
|
|
env:
|
|
RECOVERY_OUTPUT: .qa/release-managed-recovery
|
|
run: python3 docs/validation/release-command.py release-linux-managed node scripts/validation/extensions-recovery.cjs
|
|
- name: Managed recovery with custom directory
|
|
if: success() || failure()
|
|
env:
|
|
CODEGRAPH_DIR: .codegraph-release
|
|
RECOVERY_OUTPUT: .qa/release-managed-custom
|
|
run: python3 docs/validation/release-command.py release-linux-managed-custom node scripts/validation/extensions-recovery.cjs
|
|
- name: Retain exact candidate evidence and artifacts
|
|
if: always()
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: release-linux-${{ github.sha }}-${{ github.run_attempt }}
|
|
include-hidden-files: true
|
|
retention-days: 7
|
|
path: |
|
|
.qa/recovery/
|
|
.qa/release-package/
|
|
.qa/release-full/
|
|
.qa/release-semantic-recovery/
|
|
.qa/release-managed-recovery/
|
|
.qa/release-managed-custom/
|
|
release/codegraph-linux-x64.tar.gz
|