Compare commits
6 Commits
940815cce1
...
abdc2c2119
| Author | SHA1 | Date | |
|---|---|---|---|
|
abdc2c2119
|
|||
|
4ee160a736
|
|||
|
748316beae
|
|||
|
ba35d3d0a6
|
|||
|
cb1575db25
|
|||
|
dbcefef43c
|
@@ -1,2 +1,5 @@
|
|||||||
[alias]
|
[alias]
|
||||||
xtask = "run --package xtask --"
|
xtask = "run --package xtask --"
|
||||||
|
|
||||||
|
[registries.infra]
|
||||||
|
index = "sparse+https://git.huizinga.dev/api/packages/infra/cargo/"
|
||||||
|
|||||||
@@ -0,0 +1,23 @@
|
|||||||
|
name: Audit
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
paths:
|
||||||
|
- "**/Cargo.toml"
|
||||||
|
- "**/Cargo.lock"
|
||||||
|
schedule:
|
||||||
|
- cron: "0 0 * * *"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
audit:
|
||||||
|
name: cargo audit
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
issues: write
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v6
|
||||||
|
- uses: dtolnay/rust-toolchain@nightly
|
||||||
|
- uses: Swatinem/rust-cache@v2
|
||||||
|
- uses: rustsec/audit-check@v2.0.0
|
||||||
|
with:
|
||||||
|
token: ${{ secrets.GITEA_TOKEN }}
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
name: CI
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- "main"
|
||||||
|
tags:
|
||||||
|
- "*"
|
||||||
|
pull_request:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
prek:
|
||||||
|
name: prek
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v6
|
||||||
|
- uses: dtolnay/rust-toolchain@nightly
|
||||||
|
with:
|
||||||
|
components: rustfmt, clippy
|
||||||
|
- uses: Swatinem/rust-cache@v2
|
||||||
|
- uses: j178/prek-action@v2
|
||||||
|
|
||||||
|
cargo-shear:
|
||||||
|
name: cargo shear
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v6
|
||||||
|
- uses: dtolnay/rust-toolchain@nightly
|
||||||
|
- uses: Swatinem/rust-cache@v2
|
||||||
|
- uses: taiki-e/install-action@v2
|
||||||
|
with:
|
||||||
|
tool: cargo-shear
|
||||||
|
- run: cargo shear --deny-warnings
|
||||||
@@ -0,0 +1,53 @@
|
|||||||
|
name: Release-plz
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
release-plz:
|
||||||
|
name: Release-plz Release
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
pull-requests: read
|
||||||
|
steps:
|
||||||
|
- &checkout
|
||||||
|
uses: actions/checkout@v6
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
persist-credentials: false
|
||||||
|
- uses: dtolnay/rust-toolchain@nightly
|
||||||
|
- uses: Swatinem/rust-cache@v2
|
||||||
|
- uses: taiki-e/install-action@v2
|
||||||
|
with:
|
||||||
|
tool: release-plz
|
||||||
|
- &git-setup
|
||||||
|
name: Configure git
|
||||||
|
run: |
|
||||||
|
git config user.name "Release-plz"
|
||||||
|
git config user.email "release-plz@noreply.huizinga.dev"
|
||||||
|
git config url.https://${{ gitea.actor }}:${{ secrets.GITEA_TOKEN }}@git.huizinga.dev/.insteadOf https://git.huizinga.dev/
|
||||||
|
- env:
|
||||||
|
CARGO_REGISTRIES_INFRA_TOKEN: "Bearer ${{ secrets.REGISTRY_TOKEN }}"
|
||||||
|
run: release-plz release --git-token "${{ secrets.GITEA_TOKEN }}" --forge gitea --dry-run
|
||||||
|
|
||||||
|
release-plz-pr:
|
||||||
|
name: Release-plz PR
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
concurrency:
|
||||||
|
group: release-plz-${{ github.ref }}
|
||||||
|
cancel-in-progress: false
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
pull-requests: write
|
||||||
|
steps:
|
||||||
|
- *checkout
|
||||||
|
- uses: dtolnay/rust-toolchain@nightly
|
||||||
|
- uses: Swatinem/rust-cache@v2
|
||||||
|
- uses: taiki-e/install-action@v2
|
||||||
|
with:
|
||||||
|
tool: release-plz
|
||||||
|
- *git-setup
|
||||||
|
- run: release-plz release-pr --git-token "${{ secrets.GITEA_TOKEN }}" --forge gitea
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
[[package]]
|
||||||
|
name = "xtask"
|
||||||
|
release = false
|
||||||
Generated
+228
-813
File diff suppressed because it is too large
Load Diff
+11
-2
@@ -3,6 +3,7 @@ name = "crete"
|
|||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
default-run = "crete"
|
default-run = "crete"
|
||||||
|
publish = ["infra"]
|
||||||
|
|
||||||
[workspace]
|
[workspace]
|
||||||
members = ["xtask"]
|
members = ["xtask"]
|
||||||
@@ -14,10 +15,14 @@ serde_json = "1.0.149"
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
clap = { version = "4.6.0", features = ["derive"] }
|
clap = { version = "4.6.0", features = ["derive"] }
|
||||||
clap_complete = "4.6.0"
|
clap_complete = "4.6.0"
|
||||||
gix-discover = "0.48.0"
|
gix-discover = { version = "0.49.0", features = ["sha1"] }
|
||||||
minijinja = { version = "2.18.0", features = ["json", "loader"] }
|
minijinja = { version = "2.18.0", features = ["json", "loader"] }
|
||||||
optional_struct = "0.5.2"
|
optional_struct = "0.5.2"
|
||||||
reqwest = { version = "0.13.2", features = ["blocking"] }
|
reqwest = { version = "0.13.2", default-features = false, features = [
|
||||||
|
"blocking",
|
||||||
|
"stream",
|
||||||
|
"native-tls",
|
||||||
|
] }
|
||||||
schemars = { workspace = true }
|
schemars = { workspace = true }
|
||||||
semver = { version = "1.0.27", features = ["serde"] }
|
semver = { version = "1.0.27", features = ["serde"] }
|
||||||
serde = { version = "1.0.228", features = ["derive"] }
|
serde = { version = "1.0.228", features = ["derive"] }
|
||||||
@@ -25,3 +30,7 @@ serde_json = { workspace = true }
|
|||||||
serde_yaml = "0.9.34"
|
serde_yaml = "0.9.34"
|
||||||
thiserror = "2.0.18"
|
thiserror = "2.0.18"
|
||||||
walkdir = "2.5.0"
|
walkdir = "2.5.0"
|
||||||
|
|
||||||
|
[lib]
|
||||||
|
test = false
|
||||||
|
doctest = false
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
# Crete
|
||||||
|
|
||||||
|
A tool that takes node and cluster configs and uses it to generate talos configs
|
||||||
|
and render jinja templates.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
Add the following to `~/.cargo.config.toml`:
|
||||||
|
|
||||||
|
```toml
|
||||||
|
[registries.infra]
|
||||||
|
index = "sparse+https://git.huizinga.dev/api/packages/infra/cargo/"
|
||||||
|
```
|
||||||
|
|
||||||
|
You can then install `crete` by running:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cargo install --registry infra crete
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user