mirror of https://github.com/boa-dev/boa.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
242 lines
6.1 KiB
242 lines
6.1 KiB
on: |
|
pull_request: |
|
branches: |
|
- master |
|
push: |
|
branches: |
|
- master |
|
|
|
name: Continuous integration |
|
|
|
jobs: |
|
check_on_linux: |
|
name: Check on Linux |
|
runs-on: ubuntu-latest |
|
steps: |
|
- uses: actions/checkout@v2.3.4 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- name: Cache cargo |
|
uses: actions/cache@v2.1.6 |
|
with: |
|
path: | |
|
target |
|
~/.cargo/git |
|
~/.cargo/registry |
|
key: ${{ runner.os }}-cargo-check-${{ hashFiles('**/Cargo.lock') }} |
|
- uses: actions-rs/cargo@v1 |
|
with: |
|
command: check |
|
args: -v |
|
|
|
check_on_windows: |
|
name: Check on Windows |
|
runs-on: windows-latest |
|
steps: |
|
- uses: actions/checkout@v2.3.4 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- name: Cache cargo build |
|
uses: actions/cache@v2.1.6 |
|
with: |
|
path: target |
|
key: ${{ runner.os }}-cargo-check-${{ hashFiles('**/Cargo.lock') }} |
|
- uses: actions-rs/cargo@v1 |
|
with: |
|
command: check |
|
args: -v |
|
|
|
check_on_macos: |
|
name: Check on MacOS |
|
runs-on: macos-latest |
|
steps: |
|
- uses: actions/checkout@v2.3.4 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- uses: actions-rs/cargo@v1 |
|
with: |
|
command: check |
|
args: -v |
|
|
|
test_on_linux: |
|
name: Test Suite on Linux |
|
runs-on: ubuntu-latest |
|
steps: |
|
- uses: actions/checkout@v2.3.4 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- name: Cache cargo |
|
uses: actions/cache@v2.1.6 |
|
with: |
|
path: | |
|
target |
|
~/.cargo/git |
|
~/.cargo/registry |
|
key: ${{ runner.os }}-cargo-test-${{ hashFiles('**/Cargo.lock') }} |
|
- uses: actions-rs/cargo@v1 |
|
with: |
|
command: test |
|
args: -v |
|
# Waiting for https://github.com/rust-lang/cargo/pull/9229 to land |
|
# - name: Run cargo-tarpaulin |
|
# uses: actions-rs/tarpaulin@v0.1 |
|
# with: |
|
# args: --ignore-tests |
|
# - name: Upload to codecov.io |
|
# uses: codecov/codecov-action@v1 |
|
test_vm_on_linux: |
|
name: Test VM on Linux |
|
runs-on: ubuntu-latest |
|
steps: |
|
- uses: actions/checkout@v2.3.4 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- name: Cache cargo |
|
uses: actions/cache@v2.1.6 |
|
with: |
|
path: | |
|
target |
|
~/.cargo/git |
|
~/.cargo/registry |
|
key: ${{ runner.os }}-cargo-test-${{ hashFiles('**/Cargo.lock') }} |
|
- uses: actions-rs/cargo@v1 |
|
with: |
|
command: test |
|
args: ---package Boa --lib --features=vm -- vm --nocapture |
|
|
|
test_on_windows: |
|
name: Test Suite on Windows |
|
runs-on: windows-latest |
|
steps: |
|
- uses: actions/checkout@v2.3.4 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- name: Cache cargo |
|
uses: actions/cache@v2.1.6 |
|
with: |
|
path: target |
|
key: ${{ runner.os }}-cargo-test-${{ hashFiles('**/Cargo.lock') }} |
|
- uses: actions-rs/cargo@v1 |
|
with: |
|
command: test |
|
args: -v |
|
|
|
test_on_macos: |
|
name: Test Suite on MacOS |
|
runs-on: macos-latest |
|
steps: |
|
- uses: actions/checkout@v2.3.4 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- uses: actions-rs/cargo@v1 |
|
with: |
|
command: test |
|
args: -v |
|
|
|
fmt: |
|
name: Rustfmt |
|
runs-on: ubuntu-latest |
|
steps: |
|
- uses: actions/checkout@v2.3.4 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
components: rustfmt |
|
- uses: actions-rs/cargo@v1 |
|
with: |
|
command: fmt |
|
args: --all -- --check |
|
|
|
clippy: |
|
name: Clippy |
|
runs-on: ubuntu-latest |
|
steps: |
|
- uses: actions/checkout@v2.3.4 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
components: clippy |
|
- name: Cache cargo |
|
uses: actions/cache@v2.1.6 |
|
with: |
|
path: | |
|
target |
|
~/.cargo/git |
|
~/.cargo/registry |
|
key: ${{ runner.os }}-cargo-clippy-${{ hashFiles('**/Cargo.lock') }} |
|
- uses: actions-rs/cargo@v1 |
|
with: |
|
command: clippy |
|
args: -- --verbose |
|
|
|
examples: |
|
name: Examples |
|
runs-on: ubuntu-latest |
|
steps: |
|
- uses: actions/checkout@v2.3.4 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- name: Cache cargo |
|
uses: actions/cache@v2.1.6 |
|
with: |
|
path: | |
|
target |
|
~/.cargo/git |
|
~/.cargo/registry |
|
key: ${{ runner.os }}-cargo-examples-${{ hashFiles('**/Cargo.lock') }} |
|
- uses: actions-rs/cargo@v1 |
|
with: |
|
command: build |
|
args: --examples -v |
|
|
|
doc: |
|
name: Documentation check |
|
runs-on: ubuntu-latest |
|
steps: |
|
- uses: actions/checkout@v2.3.4 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- name: Cache cargo |
|
uses: actions/cache@v2.1.6 |
|
with: |
|
path: | |
|
target |
|
~/.cargo/git |
|
~/.cargo/registry |
|
key: ${{ runner.os }}-cargo-doc-${{ hashFiles('**/Cargo.lock') }} |
|
- name: Generate documentation |
|
uses: actions-rs/cargo@v1 |
|
with: |
|
command: doc |
|
args: -v --document-private-items
|
|
|