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.
166 lines
4.0 KiB
166 lines
4.0 KiB
on: |
|
pull_request: |
|
branches: |
|
- main |
|
push: |
|
branches: |
|
- main |
|
|
|
name: Continuous integration |
|
|
|
jobs: |
|
test_on_linux: |
|
name: Tests on Linux |
|
runs-on: ubuntu-latest |
|
steps: |
|
- uses: actions/checkout@v3 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- name: Cache cargo |
|
uses: actions/cache@v3 |
|
with: |
|
path: | |
|
target |
|
~/.cargo/git |
|
~/.cargo/registry |
|
key: ${{ runner.os }}-cargo-test-${{ hashFiles('**/Cargo.lock') }} |
|
- name: Run cargo-tarpaulin |
|
uses: actions-rs/tarpaulin@v0.1 |
|
with: |
|
args: --ignore-tests |
|
- name: Upload to codecov.io |
|
uses: codecov/codecov-action@v3 |
|
|
|
test_on_windows: |
|
name: Tests on Windows |
|
runs-on: windows-latest |
|
steps: |
|
- uses: actions/checkout@v3 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- name: Cache cargo |
|
uses: actions/cache@v3 |
|
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 |
|
|
|
test_on_macos: |
|
name: Tests on MacOS |
|
runs-on: macos-latest |
|
steps: |
|
- uses: actions/checkout@v3 |
|
- 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@v3 |
|
- 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@v3 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
components: clippy |
|
- name: Cache cargo |
|
uses: actions/cache@v3 |
|
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@v3 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- name: Cache cargo |
|
uses: actions/cache@v3 |
|
with: |
|
path: | |
|
target |
|
~/.cargo/git |
|
~/.cargo/registry |
|
key: ${{ runner.os }}-cargo-examples-${{ hashFiles('**/Cargo.lock') }} |
|
- run: cd boa_examples |
|
- name: Build examples |
|
uses: actions-rs/cargo@v1 |
|
with: |
|
command: build |
|
- name: Run example classes |
|
uses: actions-rs/cargo@v1 |
|
with: |
|
command: run |
|
args: --bin classes |
|
|
|
doc: |
|
name: Documentation |
|
runs-on: ubuntu-latest |
|
steps: |
|
- uses: actions/checkout@v3 |
|
- uses: actions-rs/toolchain@v1.0.7 |
|
with: |
|
toolchain: stable |
|
override: true |
|
profile: minimal |
|
- name: Cache cargo |
|
uses: actions/cache@v3 |
|
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
|
|
|