5 Commits

Author SHA1 Message Date
Dreaded_X 9c681c4b03 feat: Set user agent
Committed / committed (pull_request) Successful in 50s
CI / cargo shear (pull_request) Successful in 6m16s
CI / prek (pull_request) Successful in 6m21s
CI / cargo shear (push) Successful in 7m0s
CI / prek (push) Successful in 8m36s
Release-plz / Release-plz Release (push) Successful in 7m19s
Release-plz / Release-plz PR (push) Successful in 8m0s
2026-04-06 07:20:44 +02:00
Dreaded_X 8059c25767 chore(actions): Use commited to check pr commits
Committed / committed (pull_request) Successful in 29s
CI / cargo shear (pull_request) Successful in 5m19s
CI / prek (pull_request) Successful in 5m21s
CI / cargo shear (push) Successful in 6m45s
CI / prek (push) Successful in 6m49s
Release-plz / Release-plz PR (push) Successful in 6m56s
Release-plz / Release-plz Release (push) Successful in 3m15s
2026-04-05 08:15:17 +02:00
Dreaded_X 031ccb890e chore(actions): Cancel in-progress ci runs when pushing to pr 2026-04-05 06:32:10 +02:00
Dreaded_X 7c4b34cf9a chore(docs): Added README
CI / prek (push) Successful in 13m1s
Release-plz / Release-plz Release (push) Successful in 9m20s
CI / cargo shear (push) Successful in 4m17s
Release-plz / Release-plz PR (push) Successful in 4m26s
2026-04-05 06:12:07 +02:00
Dreaded_X 66373c0636 chore(actions): Setup workflows 2026-04-05 06:12:07 +02:00
8 changed files with 177 additions and 23 deletions
+23
View File
@@ -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 }}
+36
View File
@@ -0,0 +1,36 @@
name: CI
on:
push:
branches:
- "main"
tags:
- "*"
pull_request:
concurrency:
group: "${{ github.workflow }}-${{ github.ref }}"
cancel-in-progress: true
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
+19
View File
@@ -0,0 +1,19 @@
name: Committed
on:
pull_request:
concurrency:
group: "${{ github.workflow }}-${{ github.ref }}"
cancel-in-progress: true
jobs:
committed:
name: committed
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: crate-ci/committed@master
with:
commits: "origin/${{ gitea.base_ref }}..HEAD"
+53
View File
@@ -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
+18
View File
@@ -0,0 +1,18 @@
[workspace]
pr_name = "chore(release): Release v{{ version }}"
[[package]]
name = "xtask"
release = false
[changelog]
commit_parsers = [
{ message = "^feat", group = "<!-- 0 -->Features" },
{ message = "^revert", group = "<!-- 1 -->Revert" },
{ message = "^fix", group = "<!-- 2 -->Bug Fixes" },
{ message = "^refactor", group = "<!-- 3 -->Refactor" },
{ message = "^test", group = "<!-- 4 -->Testing" },
{ message = "^chore\\(release\\)", skip = true },
{ message = "^chore\\(deps.*\\)", skip = true },
{ message = "^chore|^ci", group = "<!-- 5 -->Miscellaneous Tasks" },
]
+19
View File
@@ -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
```
-22
View File
@@ -1,22 +0,0 @@
[changelog]
header = """
# Changelog
"""
[bump]
# TODO: Remove this option once we release v1.0.0
breaking_always_bump_major = false
[git]
fail_on_unmatched_commit = true
require_conventional = true
commit_parsers = [
{ message = "^feat", group = "<!-- 0 -->Features" },
{ message = "^fix", group = "<!-- 1 -->Bug Fixes" },
{ message = "^refactor", group = "<!-- 2 -->Refactor" },
{ message = "^test", group = "<!-- 3 -->Testing" },
{ message = "^chore\\(release\\): Prepare for", skip = true },
{ message = "^chore\\(deps.*\\)", skip = true },
{ message = "^chore|^ci", group = "<!-- 4 -->Miscellaneous Tasks" },
{ message = "^revert", group = "<!-- 5 -->Revert" },
]
+9 -1
View File
@@ -11,7 +11,15 @@ where
let path = get_talos_path().join("schematics").join(name); let path = get_talos_path().join("schematics").join(name);
let content = std::fs::read_to_string(path).unwrap().trim().to_owned(); let content = std::fs::read_to_string(path).unwrap().trim().to_owned();
let client = reqwest::blocking::Client::new(); let client = reqwest::blocking::ClientBuilder::new()
.user_agent(format!(
"{}/{}",
std::env!("CARGO_PKG_NAME"),
std::env!("CARGO_PKG_VERSION")
))
.build()
.unwrap();
let res = client let res = client
.post("https://factory.talos.dev/schematics") .post("https://factory.talos.dev/schematics")
.body(content) .body(content)