Skip to content

TypeScript Beta Test #26

TypeScript Beta Test

TypeScript Beta Test #26

Workflow file for this run

name: TypeScript Beta Test
on:
schedule: # Run every monday at midnight
- cron: '0 0 * * 1'
jobs:
test-ts-beta:
name: TypeScript Beta - Runs Entire Test Suite with Linting
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 18
- name: Install pnpm
uses: pnpm/action-setup@v2
with:
version: 8
- name: Get pnpm store directory
id: pnpm-cache
shell: bash
run: |
pnpm_store=$(pnpm store path)
echo "STORE_PATH<<EOF" >> $GITHUB_OUTPUT
echo "$pnpm_store" >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
- name: Set up pnpm cache
uses: actions/cache@v3
with:
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- name: Set up npm cache
uses: actions/cache@v3
with:
path: '~/.npm'
key: ${{ runner.os }}-npm-store-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-store-
- name: Install dependencies
run: pnpm install
- name: Install TypeScript Beta
run: pnpm add -d -w typescript@beta
- name: Build
run: pnpm build
- name: Lint
run: pnpm lint
- name: Test
run: pnpm test
- name: Test Slow
run: pnpm test:slow
- uses: JasonEtco/create-an-issue@v2
name: Create GitHub issue if tests fail
if: failure() && github.event_name == 'schedule'
env:
GITHUB_TOKEN: ${{ secrets.G_ACCESS_TOKEN }}
REPO: ${{ github.repository }}
WORKFLOW: ${{ github.workflow }}
JOB: ${{ github.job }}
ID: ${{ github.run_id }}
with:
filename: .github/failed_cron_job_issue_template.md