Skip to content

chore(deps): bump next in /examples/nextjs-file-upload #825

chore(deps): bump next in /examples/nextjs-file-upload

chore(deps): bump next in /examples/nextjs-file-upload #825

Workflow file for this run

name: build
on:
# Run for pushes from collaborators
push:
branches-ignore:
- master
# Allow manually triggering the workflow
workflow_dispatch:
permissions:
contents: write
checks: write
pull-requests: write
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Use node 22
uses: actions/setup-node@v2
with:
node-version: "22"
- name: Enable Corepack
run: corepack enable
- name: Install dependencies
run: pnpm install
- name: Build packages
run: pnpm build
- name: Run tests
run: pnpm test
- name: Validate CJS and ESM resolution for SDK
# Catch issues like https://github.com/linear/linear/issues/830
run: npx @arethetypeswrong/cli@0.18.2 --pack packages/sdk
- name: Compare schema for changes
uses: kamilkisiela/graphql-inspector@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
schema: "master:packages/sdk/src/schema.graphql"
fail-on-breaking: false
- name: Check for no generated changes
run: git update-index --refresh && git diff-index HEAD
- name: Package SDK for smoke tests
run: |
cd packages/sdk
pnpm pack --out linear-sdk.tar.gz
- name: Upload SDK artifact
uses: actions/upload-artifact@v4
with:
name: linear-sdk
path: packages/sdk/linear-sdk.tar.gz
retention-days: 1
- name: Package import for smoke tests
run: |
cd packages/import
pnpm pack --out linear-import.tar.gz
- name: Upload import artifact
uses: actions/upload-artifact@v4
with:
name: linear-import
path: packages/import/linear-import.tar.gz
retention-days: 1
smoke:
name: Smoke Test ${{ matrix.module }} (Node ${{ matrix.node }} / TS ${{ matrix.typescript }})
runs-on: ubuntu-latest
needs: build
strategy:
fail-fast: false
matrix:
node: ["20", "24"]
typescript: ["5.7", "5.9"]
module: ["cjs", "esm"]
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node }}
- name: Download SDK artifact
uses: actions/download-artifact@v4
with:
name: linear-sdk
- name: Install dependencies
run: |
cd e2e/smoke-${{ matrix.module }}
npm install typescript@${{ matrix.typescript }} @types/node
npm install ../../linear-sdk.tar.gz
- name: Run smoke test
run: |
cd e2e/smoke-${{ matrix.module }}
npm test
smoke-import:
name: Smoke Test Import (Node ${{ matrix.node }})
runs-on: ubuntu-latest
needs: build
strategy:
fail-fast: false
matrix:
node: ["18", "20", "22", "24"]
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node }}
- name: Download import artifact
uses: actions/download-artifact@v4
with:
name: linear-import
- name: Install dependencies
run: |
npm install -g linear-import.tar.gz
- name: Run smoke test
run: |
linear-import --version
OUTPUT=$(yes '' | linear-import 2>&1 || true)
echo "$OUTPUT" | grep -q "No Linear API key"
notify-slack:
runs-on: ubuntu-latest
timeout-minutes: 10
needs: [build]
if: ${{ always() && github.ref_name == 'master' && contains(needs.*.result, 'failure') }}
steps:
- uses: ravsamhq/notify-slack-action@bca2d7f5660b833a27bda4f6b8bef389ebfefd25 # 2.3.0
with:
status: ${{ job.status }}
token: ${{ secrets.GITHUB_TOKEN }}
notification_title: "SDK CI check failed on master branch"
message_format: ":x: Check failed in <{repo_url}|{repo}@{branch}> on <{commit_url}|{commit_sha}>"
footer: <{run_url}|View Run>
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}