about summary refs log tree commit diff
path: root/.github/workflows
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-02-03 11:15:54 +0000
committerbors <bors@rust-lang.org>2023-02-03 11:15:54 +0000
commit3bc33c7e9f041c5aef69a5c33b3d29d19a341ece (patch)
tree1cf1a978269d6452b6cc81670d2149805046420d /.github/workflows
parent10891ef0908705315388213885773baecb1ab046 (diff)
parent05d7d33a0f1f4a96bbf0619f648e5343451fe0e0 (diff)
downloadrust-3bc33c7e9f041c5aef69a5c33b3d29d19a341ece.tar.gz
rust-3bc33c7e9f041c5aef69a5c33b3d29d19a341ece.zip
Auto merge of #14010 - silvergasp:ci, r=lnicola
fuzz: Fixes broken Cargo.toml for fuzz tests

Fixes broken Cargo.toml for fuzz tests and adds building of fuzz tests to the CI.
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/fuzz.yml43
1 files changed, 43 insertions, 0 deletions
diff --git a/.github/workflows/fuzz.yml b/.github/workflows/fuzz.yml
new file mode 100644
index 00000000000..5af8aa1f77a
--- /dev/null
+++ b/.github/workflows/fuzz.yml
@@ -0,0 +1,43 @@
+name: Fuzz
+on:
+  schedule:
+    # Once a week
+    - cron: '0 0 * * 0'
+  push:
+    paths:
+    - '.github/workflows/fuzz.yml'
+  # Allow manual trigger
+  workflow_dispatch:
+
+env:
+  CARGO_INCREMENTAL: 0
+  CARGO_NET_RETRY: 10
+  CI: 1
+  RUST_BACKTRACE: short
+  RUSTFLAGS: "-D warnings -W unreachable-pub -W bare-trait-objects"
+  RUSTUP_MAX_RETRIES: 10
+
+jobs:
+  rust:
+    if: ${{ github.repository == 'rust-lang/rust-analyzer' || github.event.action == 'workflow_dispatch' }}
+    name: Rust
+    runs-on: ubuntu-latest
+    env:
+      CC: deny_c
+
+    steps:
+      - name: Checkout repository
+        uses: actions/checkout@v3
+        with:
+          ref: ${{ github.event.pull_request.head.sha }}
+          fetch-depth: 1
+
+      - name: Install Rust toolchain
+        run: |
+          rustup install --profile minimal nightly
+
+      - name: Build fuzzers
+        run: |
+          cargo install cargo-fuzz
+          cd crates/syntax
+          cargo +nightly fuzz build