Tom Foster
2516e783ba
ci: Support optional persistent BuildKit endpoints in Docker builds
...
Allows us to use runners with persistent BuildKit containers for improved
caching and faster build times. Falls back to standard docker-container
driver when BUILDKIT_ENDPOINT environment variable is not set.
2025-09-06 16:05:51 +01:00
Jade Ellis
fdf5771387
ci: Fix CI not triggering on external pull requests
2025-09-06 15:21:39 +01:00
Ginger
58bbc0e676
fix: Move packaging files from dist/
to pkg/
2025-09-06 14:03:57 +00:00
Ginger
d19e0f0d97
feat: Move packaging scripts into dist/
and consolidate the service files
2025-09-06 14:03:57 +00:00
Renovate Bot
5cce024841
chore(deps): update https://github.com/reproducible-containers/buildkit-cache-dance action to v3.3.0
2025-08-31 00:44:28 +00:00
Jade Ellis
e87c461b8d
feat: Cache renovate data, RO GitHub token
2025-08-31 01:37:50 +01:00
Tom Foster
dd22325ea2
refactor(ci): Consolidate Rust checks with optimised toolchain setup
...
Merge rust-checks.yml into prek-checks.yml for a unified workflow that
runs formatting and clippy/test checks in parallel jobs.
Add reusable composite actions:
- setup-rust: Smart Rust toolchain management with caching
* Uses cargo-binstall for pre-built binary downloads
* Integrates Mozilla sccache-action for compilation caching
* Workspace-relative paths for better cache control
* GitHub token support for improved rate limits
- setup-llvm-with-apt: LLVM installation with native dependencies
- detect-runner-os: Consistent OS detection for cache keys
Key improvements:
- Install prek via cargo-binstall --git (crates.io outdated at v0.0.1)
- Download timelord-cli from cargo-quickinstall
- Set BINSTALL_MAXIMUM_RESOLUTION_TIMEOUT=10 to avoid rate limit delays
- Default Rust version 1.87.0 with override support
- Remove redundant sccache stats (handled by Mozilla action)
Significantly reduces CI runtime through binary downloads instead of
compilation while maintaining all existing quality checks.
2025-08-28 19:20:14 +01:00
Tom Foster
aacaf5a2a0
fix(ci): Downgrade setup-uv action from v6 to v5
...
The setup-uv@v6 action has deprecated Node 18 support mid-version by
using the File API, causing workflow failures. Temporarily downgrading
to v5 until we migrate to a better runner image with Node 20+ support.
2025-08-21 21:10:15 +01:00
Tom Foster
14a4b24fc5
fix(ci): Configure Renovate for Forgejo platform
...
- Set platform to 'forgejo' with proper API endpoint
- Use environment variables for all Renovate configuration
- Add git timeout and disable GitHub token warnings
- Move PR limit configuration to workflow
2025-08-17 17:37:24 +01:00
Tom Foster
731761f0fc
Merge branch 'main' into tom/prek-was-prefligit
2025-08-17 15:08:44 +00:00
Tom Foster
4524a00fc6
chore(ci): Remove obsolete prefligit action
...
Now using prek directly via uvx, this custom action is no longer needed.
2025-08-17 16:00:42 +01:00
Tom Foster
9db750e97c
fix(ci): Add full GitHub URL to renovate action
...
Forgejo's runner doesn't automatically assume actions are on github.com,
so we need to specify the full URL.
2025-08-17 15:51:29 +01:00
Tom Foster
b14a4d470b
Merge branch 'main' into tom/prek-was-prefligit
2025-08-17 14:16:35 +00:00
Tom Foster
5d1f141882
ci: Rename prefligit-checks.yml to prek-checks.yml
...
Rename workflow file to match the updated tool name.
2025-08-17 15:13:02 +01:00
Tom Foster
b447cfff56
ci: Update prefligit to prek
...
The prefligit project has been renamed to prek due to typosquatting
concerns. This updates our CI to use the new name and recommended
installation method via uv, which significantly reduces setup time
compared to cargo install and includes automatic caching.
- Replace outdated static prefligit action with direct prek invocation
- Use uv as recommended by upstream: https://github.com/j178/prek
- Update check-byte-order-marker to fix-byte-order-marker (deprecated)
- Simplify workflow by removing unused ref calculations
The same .pre-commit-config.yaml works unchanged. Developers can
install locally with 'uvx prek install' or other methods from the repo.
2025-08-17 15:11:38 +01:00
Tom Foster
f54e59a068
ci: Add Renovate for automated dependency management
...
Configures Renovate bot to create PRs for outdated dependencies.
Runs daily at 5am UTC with manual trigger via workflow_dispatch.
Configuration:
- Ignores custom forks (jemalloc, telemetry packages)
- Groups: GHA minor/patch, Rust toolchain, lockfile, Rust patches
- Limits: 3 concurrent PRs, 2 PRs per hour
- Supports: Cargo, GitHub Actions, Nix
2025-08-17 14:20:20 +01:00
Jade Ellis
66181c61af
chore: Update rocksdb, feature flag changes
...
Checks / Prefligit / prefligit (push) Failing after 5s
Release Docker Image / define-variables (push) Failing after 4s
Release Docker Image / build-image (linux/amd64, release, linux-amd64, base) (push) Has been skipped
Release Docker Image / build-image (linux/arm64, release, linux-arm64, base) (push) Has been skipped
Release Docker Image / merge (push) Has been skipped
Checks / Rust / Format (push) Failing after 5s
Checks / Rust / Clippy (push) Failing after 12s
Checks / Rust / Cargo Test (push) Failing after 10s
Most of the way to static musl builds, just zlib I think
2025-07-24 21:51:52 +01:00
Jade Ellis
7e2f04a78a
chore: Check all features in CI and docs
Documentation / Build and Deploy Documentation (push) Has been skipped
Checks / Prefligit / prefligit (push) Failing after 6s
Release Docker Image / define-variables (push) Failing after 5s
Release Docker Image / build-image (linux/amd64, release, linux-amd64, base) (push) Has been skipped
Release Docker Image / build-image (linux/arm64, release, linux-arm64, base) (push) Has been skipped
Release Docker Image / merge (push) Has been skipped
Checks / Rust / Format (push) Failing after 3s
Checks / Rust / Clippy (push) Failing after 26s
Checks / Rust / Cargo Test (push) Failing after 25s
2025-07-20 21:25:27 +01:00
Jade Ellis
d74514f305
ci: Fix inverted latest tag
Documentation / Build and Deploy Documentation (push) Has been skipped
Checks / Prefligit / prefligit (push) Failing after 2s
Release Docker Image / define-variables (push) Failing after 5s
Release Docker Image / build-image (linux/amd64, release, linux-amd64, base) (push) Has been skipped
Release Docker Image / build-image (linux/arm64, release, linux-arm64, base) (push) Has been skipped
Release Docker Image / merge (push) Has been skipped
Checks / Rust / Format (push) Failing after 4s
Checks / Rust / Clippy (push) Failing after 23s
Checks / Rust / Cargo Test (push) Failing after 20s
2025-07-20 20:59:29 +01:00
Jade Ellis
8fb94f99e9
ci: Upload binaries as artifacts
2025-07-07 01:40:59 +00:00
Jade Ellis
3977ccfcea
ci: Fix docker tags
2025-07-07 01:40:59 +00:00
Jade Ellis
890b8e25fc
ci: Mirror RC tags
2025-07-07 01:40:59 +00:00
Jade Ellis
928b7c5e4a
fix: Correct vars
Documentation / Build and Deploy Documentation (push) Has been skipped
Checks / Prefligit / prefligit (push) Failing after 16s
Release Docker Image / define-variables (push) Failing after 2s
Release Docker Image / build-image (linux/amd64, release, linux-amd64, base) (push) Has been skipped
Release Docker Image / build-image (linux/arm64, release, linux-arm64, base) (push) Has been skipped
Release Docker Image / merge (push) Has been skipped
Checks / Rust / Format (push) Failing after 9s
Checks / Rust / Clippy (push) Failing after 23s
Checks / Rust / Cargo Test (push) Failing after 16s
2025-07-06 22:57:33 +01:00
Jade Ellis
af8783ee51
ci: Mirror registry images
2025-07-06 22:45:01 +01:00
Tom Foster
7e406445d4
Element Web build fixes
Documentation / Build and Deploy Documentation (push) Has been skipped
Checks / Prefligit / prefligit (push) Failing after 3s
Release Docker Image / define-variables (push) Failing after 4s
Release Docker Image / build-image (linux/amd64, release, linux-amd64, base) (push) Has been skipped
Release Docker Image / build-image (linux/arm64, release, linux-arm64, base) (push) Has been skipped
Release Docker Image / merge (push) Has been skipped
Checks / Rust / Format (push) Failing after 15s
Checks / Rust / Clippy (push) Failing after 39s
Checks / Rust / Cargo Test (push) Failing after 38s
2025-07-03 22:26:02 +01:00
Jade Ellis
9bbe333082
ci: Don't run docs flow when the secret is inaccessible
2025-06-24 22:43:43 +01:00
Jade Ellis
2ecbd75d64
ci: fixes
...
Release Docker Image / build-image (linux/amd64, release, linux-amd64, base) (push) Has been skipped
Release Docker Image / build-image (linux/arm64, release, linux-arm64, base) (push) Has been skipped
Release Docker Image / merge (push) Has been skipped
Documentation / Build and Deploy Documentation (push) Failing after 11s
Checks / Prefligit / prefligit (push) Failing after 2s
Release Docker Image / define-variables (push) Failing after 1s
Checks / Rust / Format (push) Failing after 3s
Checks / Rust / Clippy (push) Failing after 11s
Checks / Rust / Cargo Test (push) Failing after 11s
- Install UV
- Verbose run
- Set permissions explicitly
- Check all files
2025-06-21 19:17:21 +01:00
Jade Ellis
93719018a8
ci: Run additional sanity checks on repository
2025-06-21 17:58:28 +01:00
Jade Ellis
01200d9b54
build: Allow specifying build profile
...
Additionally splits caches by target CPU
2025-06-20 21:48:37 +01:00
Jade Ellis
d7514178ab
ci: Fix extra bracket in commit shorthash
Release Docker Image / define-variables (push) Failing after 1s
Release Docker Image / build-image (linux/amd64, linux-amd64) (push) Has been skipped
Release Docker Image / build-image (linux/arm64, linux-arm64) (push) Has been skipped
Release Docker Image / merge (push) Has been skipped
Documentation / Build and Deploy Documentation (push) Failing after 3s
Rust Checks / Format (push) Failing after 3s
Rust Checks / Clippy (push) Failing after 8s
Rust Checks / Cargo Test (push) Failing after 8s
2025-06-13 14:30:26 +01:00
Jade Ellis
3c44dccd65
ci: HACK, disable saving to actions cache
Documentation / Build and Deploy Documentation (push) Failing after 3s
Release Docker Image / define-variables (push) Failing after 1s
Release Docker Image / build-image (linux/amd64, linux-amd64) (push) Has been skipped
Release Docker Image / build-image (linux/arm64, linux-arm64) (push) Has been skipped
Release Docker Image / merge (push) Has been skipped
Rust Checks / Format (push) Failing after 2s
Rust Checks / Clippy (push) Failing after 8s
Rust Checks / Cargo Test (push) Failing after 11s
2025-05-26 19:16:50 +01:00
Jade Ellis
b9d60c64e5
ci: Don't specify container for image builder
2025-05-26 19:16:04 +01:00
Jade Ellis
94ae824149
ci: Don't install rustup if it's already there
2025-05-26 19:16:03 +01:00
Jade Ellis
dcbc4b54c5
ci: Always show sccache stats
2025-05-21 12:45:25 +01:00
Jade Ellis
7a46563f23
ci: Cache docker image build mounts
2025-05-21 01:48:25 +01:00
Jade Ellis
a4ad72e11d
ci: Run cargo test
2025-05-20 21:48:40 +01:00
Jade Ellis
1f57508879
ci: Don't clippy check dependancies
2025-05-20 21:47:35 +01:00
Jade Ellis
a325dfa56a
ci: Use timelord in clippy check
2025-05-20 21:47:27 +01:00
Jade Ellis
b5d2ef9a4a
ci: Refactor timelord to its own action
2025-05-20 21:36:01 +01:00
Jade Ellis
e200a7d991
ci: Cache Rust registry
2025-05-20 21:36:01 +01:00
Jade Ellis
e31d261e66
ci: Run clippy check
2025-05-20 21:36:00 +01:00
Jade Ellis
f14725a51b
ci: Check formatting
...
Also moves rustup installation to a seperate workflow and
enables caching.
The sccache action required a github.com api token, so we set
all that up too.
2025-05-20 21:31:41 +01:00
Jade Ellis
066794fe90
ci: Don't try build images on PR
2025-05-20 21:31:40 +01:00
Jade Ellis
d78fc53577
ci: Fix bad comparison
2025-05-01 21:27:12 +01:00
Jade Ellis
cbcf4300df
ci: Cache timelord-cli to avoid unnecesary compilation
2025-05-01 21:23:37 +01:00
Jade Ellis
a98da7d942
refactor: Move git version info gather in into a build script
2025-05-01 00:38:35 +01:00
Jade Ellis
e1655edd83
feat: HTML default page
2025-04-30 22:31:25 +01:00
Tom Foster
60caa448b0
Tidy up publishing restriction check
2025-04-27 18:13:10 +00:00
Tom Foster
eb886b6760
Element Web client build
2025-04-27 18:13:10 +00:00
Tom Foster
73c991edd0
Ignore all markdown for auto image builds
2025-04-27 18:13:10 +00:00