Skip to content

Commit 95e9946

Browse files
author
Geoffrey Borough
authored
initial commit (#1)
* initial commit * initial commit
1 parent 3c95986 commit 95e9946

File tree

118 files changed

+72568
-4
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

118 files changed

+72568
-4
lines changed

.envrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
use flake

.github/dependabot.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: cargo
4+
directory: "/"
5+
schedule:
6+
interval: daily
7+
open-pull-requests-limit: 10
8+
9+
- package-ecosystem: github-actions
10+
directory: "/"
11+
schedule:
12+
interval: daily
13+
open-pull-requests-limit: 10

.github/workflows/ci.yaml

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
name: CI
2+
3+
run-name: "CI run '${{ github.head_ref || github.ref_name }}'"
4+
5+
on:
6+
workflow_dispatch:
7+
push:
8+
branches:
9+
- main
10+
pull_request:
11+
12+
concurrency:
13+
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
14+
cancel-in-progress: true
15+
16+
jobs:
17+
format:
18+
name: Cargo format
19+
runs-on: ubuntu-latest
20+
steps:
21+
22+
- name: Install toolchain
23+
uses: dtolnay/rust-toolchain@stable
24+
with:
25+
toolchain: 1.76.0
26+
components: rustfmt
27+
28+
- name: Checkout source
29+
uses: actions/checkout@v4
30+
31+
- name: Setup cache
32+
uses: Swatinem/rust-cache@v2
33+
with:
34+
save-if: ${{ github.ref == 'refs/heads/main' }}
35+
36+
- name: Check format
37+
run: cargo fmt --all
38+
39+
security-check:
40+
name: Security check
41+
runs-on: ubuntu-latest
42+
steps:
43+
44+
- name: Install toolchain
45+
uses: dtolnay/rust-toolchain@stable
46+
with:
47+
toolchain: 1.76.0
48+
components: rustfmt
49+
50+
- name: Checkout sources
51+
uses: actions/checkout@v4
52+
53+
- name: Install cargo-deny
54+
run: cargo install cargo-deny --locked
55+
56+
- name: Install cargo-vet
57+
run: cargo install cargo-vet --locked
58+
59+
- name: Run cargo deny
60+
run: cargo deny check
61+
62+
- name: Run cargo vet
63+
run: cargo vet init && cargo vet
64+
65+
- name: Report failure
66+
if: failure()
67+
run: |
68+
echo "## Security Check Failed" >> $GITHUB_STEP_SUMMARY
69+
70+
clippy:
71+
name: Check clippy
72+
runs-on: ubuntu-latest
73+
steps:
74+
75+
- name: Install toolchain
76+
uses: dtolnay/rust-toolchain@stable
77+
with:
78+
toolchain: 1.76.0
79+
components: clippy
80+
81+
- name: Checkout sources
82+
uses: actions/checkout@v4
83+
84+
- name: Setup cache
85+
uses: Swatinem/rust-cache@v2
86+
with:
87+
save-if: ${{ github.ref == 'refs/heads/main' }}
88+
89+
- name: Install dependencies
90+
run: |
91+
sudo apt-get -y update
92+
sudo apt-get -y install npm
93+
npm install -g quicktype
94+
95+
- name: Run clippy
96+
run: cargo clippy -- -D warnings
97+
98+
build-test:
99+
name: Cargo test
100+
runs-on: ubuntu-latest
101+
steps:
102+
103+
- name: Install stable toolchain
104+
uses: dtolnay/rust-toolchain@stable
105+
with:
106+
toolchain: 1.76.0
107+
108+
- name: Checkout sources
109+
uses: actions/checkout@v4
110+
111+
- name: Setup cache
112+
uses: Swatinem/rust-cache@v2
113+
with:
114+
save-if: ${{ github.ref == 'refs/heads/main' }}
115+
116+
- name: Install dependencies
117+
run: |
118+
sudo apt-get -y update
119+
sudo apt-get -y install npm
120+
npm install -g quicktype
121+
122+
- name: Run test
123+
run: cargo test

0 commit comments

Comments
 (0)