123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- name: Build and Test
- on:
- pull_request:
- push:
- branches:
- - master
- - releases/*
- jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1 # todo: switch to v2
- - run: npm ci
- - run: npm run build
- - run: npm run format-check
- - run: npm run lint
- - run: npm run pack
- - run: npm run gendocs
- - name: Verify no unstaged changes
- run: __test__/verify-no-unstaged-changes.sh
- test:
- strategy:
- matrix:
- runs-on: [ubuntu-latest, macos-latest, windows-latest]
- runs-on: ${{ matrix.runs-on }}
- steps:
- # Clone this repo
- - name: Checkout
- uses: actions/checkout@v2-beta
- # Basic checkout
- - name: Basic checkout
- uses: ./
- with:
- ref: test-data/v2/basic
- path: basic
- - name: Verify basic
- shell: bash
- run: __test__/verify-basic.sh
- # Clean
- - name: Modify work tree
- shell: bash
- run: __test__/modify-work-tree.sh
- - name: Clean checkout
- uses: ./
- with:
- ref: test-data/v2/basic
- path: basic
- - name: Verify clean
- shell: bash
- run: __test__/verify-clean.sh
- # Side by side
- - name: Side by side checkout 1
- uses: ./
- with:
- ref: test-data/v2/side-by-side-1
- path: side-by-side-1
- - name: Side by side checkout 2
- uses: ./
- with:
- ref: test-data/v2/side-by-side-2
- path: side-by-side-2
- - name: Verify side by side
- shell: bash
- run: __test__/verify-side-by-side.sh
- # LFS
- - name: LFS checkout
- uses: ./
- with:
- repository: actions/checkout # hardcoded, otherwise doesn't work from a fork
- ref: test-data/v2/lfs
- path: lfs
- lfs: true
- - name: Verify LFS
- shell: bash
- run: __test__/verify-lfs.sh
- test-job-container:
- runs-on: ubuntu-latest
- container: pstauffer/curl:latest
- steps:
- # Clone this repo
- # todo: after v2-beta contains the latest changes, switch this to "uses: actions/checkout@v2-beta". Also check if can switch to "alpine:latest"
- - name: Checkout
- run: |
- curl --location --user token:${{ github.token }} --output checkout.tar.gz https://api.github.com/repos/actions/checkout/tarball/${{ github.sha }}
- tar -xzf checkout.tar.gz
- mv */* ./
- # Basic checkout
- - name: Basic checkout
- uses: ./
- with:
- ref: test-data/v2/basic
- path: basic
- - name: Verify basic
- run: __test__/verify-basic.sh container
|