Compare commits
6 Commits
940815cce1
...
abdc2c2119
| Author | SHA1 | Date | |
|---|---|---|---|
|
abdc2c2119
|
|||
|
4ee160a736
|
|||
|
748316beae
|
|||
|
ba35d3d0a6
|
|||
|
cb1575db25
|
|||
|
dbcefef43c
|
@@ -1,2 +1,5 @@
|
||||
[alias]
|
||||
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"
|
||||
edition = "2024"
|
||||
default-run = "crete"
|
||||
publish = ["infra"]
|
||||
|
||||
[workspace]
|
||||
members = ["xtask"]
|
||||
@@ -14,10 +15,14 @@ serde_json = "1.0.149"
|
||||
[dependencies]
|
||||
clap = { version = "4.6.0", features = ["derive"] }
|
||||
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"] }
|
||||
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 }
|
||||
semver = { version = "1.0.27", features = ["serde"] }
|
||||
serde = { version = "1.0.228", features = ["derive"] }
|
||||
@@ -25,3 +30,7 @@ serde_json = { workspace = true }
|
||||
serde_yaml = "0.9.34"
|
||||
thiserror = "2.0.18"
|
||||
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