Skip to content

oxlint ecosystem ci #32

oxlint ecosystem ci

oxlint ecosystem ci #32

Workflow file for this run

name: oxlint ecosystem ci
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * *"
pull_request:
types: [opened, synchronize]
push:
branches:
- main
defaults:
run:
shell: bash
jobs:
build:
name: Build
timeout-minutes: 30
runs-on: ubuntu-latest
steps:
- name: Checkout oxc
uses: actions/checkout@v4
with:
repository: oxc-project/oxc
ref: 05-16-fix_linter_react_rules_of_hooks_add_support_for_property_hooks_components
- name: Install Rust
uses: moonrepo/setup-rust@v1
with:
bins: just
cache-base: main
cache-target: release
- name: Build oxlint
run: just oxlint
- name: Upload Binary
uses: actions/upload-artifact@v4
with:
if-no-files-found: error
name: oxlint
path: ./target/release/oxlint
test-ecosystem:
needs: build
timeout-minutes: 30
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- repository: rolldown/rolldown
ref: main
path: rolldown
command: ./oxlint --deny-warnings --ignore-path=.oxlintignore --import-plugin
- repository: napi-rs/napi-rs
ref: main
path: napi-rs
command: ./oxlint --deny-warnings --ignore-path=.oxlintignore --import-plugin -D correctness -A no-export
- repository: toeverything/affine
ref: canary
path: affine
command: ./oxlint -c oxlint.json --import-plugin --deny-warnings -D correctness -D nursery -D prefer-array-some -D no-useless-promise-resolve-reject -D perf -A no-undef -A consistent-type-exports -A default -A named -A ban-ts-comment -A export -A no-unresolved -A no-default-export -A no-duplicates -A no-side-effects-in-initialization -A no-named-as-default -A getter-return -A no-barrel-file -A no-await-in-loop
- repository: preactjs/preact
ref: main
path: preact
command: ./oxlint --deny-warnings -c oxlint.json oxlint src test debug compat hooks test-utils
name: ${{ matrix.repository }}
steps:
- name: Clone ${{ matrix.repository }}
uses: actions/checkout@v4
with:
repository: ${{ matrix.repository }}
ref: ${{ matrix.ref }}
path: ${{ matrix.path }}
- name: Download Artifacts
uses: actions/download-artifact@v4
with:
name: oxlint
path: ${{ matrix.path }}
- name: chmod +x oxlint
run: chmod +x ./oxlint
working-directory: ${{ matrix.path }}
- name: Run
working-directory: ${{ matrix.path }}
run: ${{ matrix.command }}