Set up CI for the project #26

Manually merged
BaumiCoder merged 114 commits from chore/10-CI into main 2025-10-19 19:31:08 +02:00
Owner

Resolves #10

User perspective

You will find for each finalized version of ecformat a Release, which links to the related pull requests (as kind of changelog), the ecformat_bin package on Codeberg with compiled binaries of some common platforms and further package formats, when they will be available in future versions (see related issues).

Developer perspective

The CI will now, do the following:

  • On Pull request (opening / pushing changes to an open one)
    • NO explicit build, as the linters (like Clippy) or the tests already include a compilation
    • Run linters for which respected files have changed (e.g., yamllint only if YAML file has changed)
    • Run all tests if Rust code or relevant config has changed (e.g., do not run if only linter config has changed)
  • On Tagging (pushing a v* tag)
    • Validate that all issues in the milestone are closed and the version in the Cargo.toml matches with the tag naming.
    • Execute respective linters
    • Run all tests
    • Check that it compiles for all targets and features
    • Build for several platforms & upload them to the ecformat_bin package
    • Create a release on Codeberg
    • (In the future: create and upload further package formats)
    • Close the milestone of the version

Up-to-date details about the release parts in the Development.md file.

Resolves #10 ### User perspective You will find for each finalized version of ecformat a [Release](https://codeberg.org/BaumiCoder/ecformat/releases), which links to the related pull requests (as kind of changelog), the `ecformat_bin` package on Codeberg with compiled binaries of some common platforms and further package formats, when they will be available in future versions (see [related issues](https://codeberg.org/BaumiCoder/ecformat/issues?q=&type=all&sort=&state=all&labels=588082&milestone=0&project=0&assignee=0&poster=0&archived=false)). ### Developer perspective The CI will now, do the following: - On Pull request (opening / pushing changes to an open one) - NO explicit build, as the linters (like Clippy) or the tests already include a compilation - Run linters for which respected files have changed (e.g., `yamllint` only if YAML file has changed) - Run all tests if Rust code or relevant config has changed (e.g., do not run if only linter config has changed) - On Tagging (pushing a `v*` tag) - Validate that all issues in the milestone are closed and the version in the `Cargo.toml` matches with the tag naming. - Execute respective linters - Run all tests - Check that it compiles for all targets and features - Build for several platforms & upload them to the `ecformat_bin` package - Create a release on Codeberg - (In the future: create and upload further package formats) - Close the milestone of the version Up-to-date details about the release parts in the `Development.md` file.
Add test action
Some checks failed
/ test (pull_request) Failing after 22s
a91551a211
Fix checkout
Some checks failed
/ test (pull_request) Failing after 8s
5dab43b9f5
Node is missing in the rust image
Use image with Node integrated
All checks were successful
/ test (pull_request) Successful in 4m33s
59c12c5940
setup-node fails with
"Error: crun: executable file `node` not found in $PATH:
No such file or directory: OCI runtime attempted to invoke a command
that was not found"
--> node-setup needs node to be executed?
Add lint action
Some checks failed
/ test (pull_request) Failing after 5m1s
beee4ae638
Fix action name
Some checks failed
/ test (pull_request) Successful in 3m56s
/ lint (pull_request) Failing after 5m0s
e95d0a5ba3
Lint action(s) without pre-commit
Some checks failed
/ lint_cargo_deny (pull_request) Failing after 5m0s
/ lint_clippy (pull_request) Failing after 5m0s
/ lint_rustfmt (pull_request) Successful in 12s
/ lint_taplo (pull_request) Failing after 6s
/ lint_ecformat (pull_request) Failing after 5m0s
/ test (pull_request) Failing after 5m0s
ad028cd3a8
The installations for the hook environment has a time out at 4m50s.
Therefore, switch to single actions for the different linters.
The build of rust projects is part of some action
and these take some time.
The GitHub action from the codespell project at
https://github.com/codespell-project/actions-codespell
was not updated for over a year. Therefore, better install it with pip.
No maintainted action found. Therefore, better install it with pip.
Add REUSE action
Some checks failed
/ lint_cargo_deny (pull_request) Failing after 5m0s
/ lint_clippy (pull_request) Failing after 5m0s
/ lint_rustfmt (pull_request) Successful in 17s
/ lint_taplo (pull_request) Successful in 3m40s
/ lint_ecformat (pull_request) Successful in 4m49s
/ test (pull_request) Successful in 4m50s
/ lint_reuse (pull_request) Has been cancelled
/ lint_codespell (pull_request) Has been cancelled
/ lint_yamllint (pull_request) Has been cancelled
74f29f13e6
Using the official GitHub action as it is maintained.
Restrict version to the major version only as the action
is also only restricted to major version.
Even the time out limit of 4 minutes is not enought for the most
rust buildes. Maybe the caching action helps.
The actions for these tools, written in rust, uses the binaries
from the GitHub releases. Therefore, it should be faster than a
cargo install, which builds the the project.
Fixing action URL
Some checks failed
/ lint_cargo_deny (pull_request) Successful in 1m14s
/ lint_clippy (pull_request) Failing after 5m0s
/ lint_rustfmt (pull_request) Successful in 30s
/ lint_taplo (pull_request) Successful in 21s
/ lint_ecformat (pull_request) Successful in 5m0s
/ test (pull_request) Successful in 5m1s
/ lint_reuse (pull_request) Has been cancelled
/ lint_codespell (pull_request) Has been cancelled
/ lint_yamllint (pull_request) Has been cancelled
babdc5e7a3
Switch server for forgejo runner
Some checks failed
/ lint_reuse (pull_request) Successful in 2m24s
/ lint_cargo_deny (pull_request) Successful in 33s
/ lint_clippy (pull_request) Successful in 10m34s
/ lint_rustfmt (pull_request) Successful in 54s
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m49s
/ lint_yamllint (pull_request) Failing after 1m7s
/ lint_ecformat (pull_request) Successful in 8m47s
/ test (pull_request) Successful in 9m11s
4906598ee1
Using my newly created forgejo runner on my homeserver
No not fix patch version and use rust-toolchain.toml to fix it also for
the local development. Furthermore, use the GitHub Action Rust image,
which is more similar to the default image (from GitHub Actions)
and with rustup this automatically uses the rust version from the toml.
Fix yamllint action
All checks were successful
/ lint_reuse (pull_request) Successful in 1m4s
/ lint_cargo_deny (pull_request) Successful in 32s
/ lint_clippy (pull_request) Successful in 9m16s
/ lint_rustfmt (pull_request) Successful in 1m20s
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m49s
/ lint_yamllint (pull_request) Successful in 1m7s
/ lint_ecformat (pull_request) Successful in 8m33s
/ test (pull_request) Successful in 8m50s
7c69cc6178
No need to run this in an Action as they will fail if the Action yaml
files are incorrect in anyway.
Fix order for rust cache
All checks were successful
/ lint_reuse (pull_request) Successful in 1m4s
/ lint_cargo_deny (pull_request) Successful in 1m3s
/ lint_clippy (pull_request) Successful in 2m46s
/ lint_rustfmt (pull_request) Successful in 1m19s
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m49s
/ lint_yamllint (pull_request) Successful in 1m7s
/ lint_ecformat (pull_request) Successful in 2m49s
/ test (pull_request) Successful in 2m58s
1160c2b637
The rust cache action fails as it cannot find a Cargo.toml.
Therefore, the chechout have to be done before the cache action.
All three actions needs the compiled dependencies of ecformat
Running cargo deny inside the repository uses the rust-toolchain.toml.
Output of the action:
info: profile set to 'minimal'
info: syncing channel updates for '1.90-x86_64-unknown-linux-musl'
info: latest update on 2025-09-18, rust version 1.90.0 (1159e78c4 2025-09-14)
info: downloading component 'cargo'
info: downloading component 'rust-std'
info: downloading component 'rustc'
info: installing component 'cargo'
info: installing component 'rust-std'
info: installing component 'rustc'
info: default toolchain set to '1.90-x86_64-unknown-linux-musl'
  1.90-x86_64-unknown-linux-musl installed - rustc 1.90.0 (1159e78c4 2025-09-14)
info: note that the toolchain '1.90-x86_64-unknown-linux-musl' is currently in use (overridden by '/workspace/BaumiCoder/ecformat/rust-toolchain.toml')
Default host: x86_64-unknown-linux-musl
Use rust cache in all actions with cargo
All checks were successful
/ lint_reuse (pull_request) Successful in 1m3s
/ lint_cargo_deny (pull_request) Successful in 1m1s
/ lint_clippy (pull_request) Successful in 8m23s
/ lint_rustfmt (pull_request) Successful in 2m1s
/ lint_codespell (pull_request) Successful in 1m7s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m7s
/ lint_ecformat (pull_request) Successful in 4m0s
/ test (pull_request) Successful in 3m38s
f682b5acb2
At least the installed rust version can be used from a common cache,
but do not use the big cache with all ecformat dependencies as they
are not necessary in these actions and would increase the duration
for loading the (bigger) cache.
Add release action
Some checks failed
/ lint_reuse (pull_request) Successful in 1m8s
/ lint_cargo_deny (pull_request) Successful in 44s
/ lint_clippy (pull_request) Successful in 3m26s
/ lint_rustfmt (pull_request) Successful in 2m1s
/ lint_codespell (pull_request) Successful in 1m7s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m11s
/ lint_ecformat (pull_request) Successful in 3m17s
/ test (pull_request) Successful in 3m20s
/ release_check (pull_request) Successful in 8m56s
/ release (aarch64-unknown-linux-gnu) (pull_request) Failing after 2m10s
/ release (x86_64-pc-windows-gnu) (pull_request) Failing after 2m7s
/ release (x86_64-unknown-linux-gnu) (pull_request) Failing after 2m7s
/ release (x86_64-unknown-linux-musl) (pull_request) Failing after 2m2s
42e832893a
Specify shell for multi-command steps
Some checks failed
/ lint_reuse (pull_request) Successful in 1m4s
/ lint_cargo_deny (pull_request) Successful in 1m0s
/ lint_clippy (pull_request) Successful in 4m7s
/ lint_rustfmt (pull_request) Successful in 2m0s
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m49s
/ lint_yamllint (pull_request) Successful in 1m7s
/ lint_ecformat (pull_request) Successful in 3m21s
/ test (pull_request) Successful in 3m13s
/ release_check (pull_request) Successful in 2m49s
/ release (aarch64-unknown-linux-gnu) (pull_request) Failing after 2m4s
/ release (x86_64-pc-windows-gnu) (pull_request) Failing after 2m5s
/ release (x86_64-unknown-linux-gnu) (pull_request) Failing after 2m8s
/ release (x86_64-unknown-linux-musl) (pull_request) Failing after 2m4s
c795523ff4
In steps with multiple commands, especially if control structures
like case are used, the syntax dependence on the used shell.
There is no maintained action for this on GitHub and downloading the
binary for a rough version (0.1.*) is not trivial. Therefore,
use cargo install and the rust cache action.
One job still had a codeberg runner
Fix typo
Some checks failed
/ test (pull_request) Successful in 3m15s
/ changes (pull_request) Failing after 12s
/ lint_reuse (pull_request) Successful in 1m4s
/ lint_cargo_deny (pull_request) Successful in 3m5s
/ lint_clippy (pull_request) Successful in 3m14s
/ lint_rustfmt (pull_request) Successful in 1m56s
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Has been skipped
/ lint_yamllint (pull_request) Has been skipped
/ lint_cargo_udeps (pull_request) Failing after 1m17s
/ lint_ecformat (pull_request) Successful in 3m9s
/ release_check (pull_request) Successful in 2m50s
/ release (aarch64-unknown-linux-gnu) (pull_request) Failing after 2m6s
/ release (x86_64-pc-windows-gnu) (pull_request) Failing after 2m5s
/ release (x86_64-unknown-linux-gnu) (pull_request) Failing after 2m4s
/ release (x86_64-unknown-linux-musl) (pull_request) Failing after 2m3s
4453372921
Do not filter udeps yet, as it has not be successfully tested yet.
cargo-deny is a linter for dependencies and these cannot change
only with changes in rust code of the project.
Detected that hidden files are not considered by codespell,
because the action has no exclude for the .schemata directory and
does not fail due to spelling mistakes there.
Using a config file to avoid duplications between pre-commit and action
configuration.
Fix case branches in action step
All checks were successful
/ test (pull_request) Successful in 3m15s
/ changes (pull_request) Successful in 28s
/ lint_reuse (pull_request) Successful in 1m3s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m7s
/ lint_cargo_udeps (pull_request) Successful in 22m5s
/ lint_ecformat (pull_request) Successful in 3m17s
/ release_check (pull_request) Successful in 2m51s
/ release (aarch64-unknown-linux-gnu) (pull_request) Successful in 10m31s
/ release (x86_64-pc-windows-gnu) (pull_request) Successful in 5m50s
/ release (x86_64-unknown-linux-gnu) (pull_request) Successful in 5m0s
/ release (x86_64-unknown-linux-musl) (pull_request) Successful in 5m21s
fcc712991f
Aach branch in a bash case needs to end with ";;"
The exit code of curl does not indicate an http error by default.
The last run has not created a package an the action has the message
"reqPackageAccess" in the output.
Use an extra token for package upload
Some checks failed
/ test (pull_request) Successful in 3m16s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m3s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m5s
/ lint_taplo (pull_request) Successful in 1m49s
/ lint_yamllint (pull_request) Successful in 1m7s
/ lint_cargo_udeps (pull_request) Successful in 4m29s
/ lint_ecformat (pull_request) Successful in 3m11s
/ release_check (pull_request) Successful in 2m45s
/ release (aarch64-unknown-linux-gnu) (pull_request) Failing after 3m54s
/ release (x86_64-pc-windows-gnu) (pull_request) Failing after 4m36s
/ release (x86_64-unknown-linux-gnu) (pull_request) Failing after 3m22s
/ release (x86_64-unknown-linux-musl) (pull_request) Failing after 3m38s
da6a4167aa
The FORGEJO_TOKEN, which is automatically available for every action,
seems to have to less permissions to upload a package.
The action fails with http 400 but the same curl command works locally.
Run cargo-udeps action only if necessary
Some checks failed
/ test (pull_request) Successful in 3m13s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m3s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m51s
/ lint_yamllint (pull_request) Successful in 1m6s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m18s
/ release_check (pull_request) Successful in 2m45s
/ release (aarch64-unknown-linux-gnu) (pull_request) Failing after 3m52s
/ release (x86_64-pc-windows-gnu) (pull_request) Failing after 4m4s
/ release (x86_64-unknown-linux-gnu) (pull_request) Failing after 3m22s
/ release (x86_64-unknown-linux-musl) (pull_request) Failing after 3m34s
a644586789
Test executions completed (also a second one to test the cache usage)
and now only run if relevant files had changed (same as in pre-commit).
Still not working in the action, but the curl command works locally.
Maybe the file is not in place or the URL is not build correctly?
Adding a local action for test execution to reduce duplicated code
(only the actions inside a workflow can depend on each other).
Run tests on PR only if necessary
Some checks failed
/ release_check (pull_request) Successful in 2m57s
/ release_test (pull_request) Failing after 17s
/ release (aarch64-unknown-linux-gnu) (pull_request) Has been skipped
/ release (x86_64-pc-windows-gnu) (pull_request) Has been skipped
/ release (x86_64-unknown-linux-gnu) (pull_request) Has been skipped
/ release (x86_64-unknown-linux-musl) (pull_request) Has been skipped
/ test (pull_request) Successful in 32s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m6s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m9s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m10s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m26s
1f80da833f
Peform checkout before using local action
Some checks failed
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 27s
/ lint_reuse (pull_request) Successful in 1m3s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m7s
/ lint_taplo (pull_request) Successful in 1m53s
/ lint_yamllint (pull_request) Successful in 1m14s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m17s
/ release_check (pull_request) Successful in 3m0s
/ release_test (pull_request) Successful in 3m50s
/ release (aarch64-unknown-linux-gnu) (pull_request) Failing after 4m17s
/ release (x86_64-pc-windows-gnu) (pull_request) Failing after 4m29s
/ release (x86_64-unknown-linux-gnu) (pull_request) Failing after 3m35s
/ release (x86_64-unknown-linux-musl) (pull_request) Failing after 3m50s
98ddb13b58
Without the repository being checked out,
the local action (the action.yaml) is also not available.
Fix package name in release action
All checks were successful
/ test (pull_request) Successful in 57s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m5s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m10s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m11s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m22s
/ release_check (pull_request) Successful in 2m59s
/ release_test (pull_request) Successful in 3m43s
/ release (aarch64-unknown-linux-gnu) (pull_request) Successful in 4m50s
/ release (x86_64-pc-windows-gnu) (pull_request) Successful in 4m52s
/ release (x86_64-unknown-linux-gnu) (pull_request) Successful in 4m10s
/ release (x86_64-unknown-linux-musl) (pull_request) Successful in 4m24s
f0cc7677ca
Assigning a * does not expend it, but using it in a echo command
expend it to the matching file.
I think, I will use the packages on codeberg also for the other
package formats as an alternative to central package repositories.
Therefore, a more unique name is necessary.
Add action for lelease information
Some checks failed
/ test (pull_request) Successful in 57s
/ changes (pull_request) Successful in 27s
/ lint_reuse (pull_request) Successful in 1m7s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m10s
/ lint_taplo (pull_request) Successful in 1m49s
/ lint_yamllint (pull_request) Successful in 1m11s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m22s
/ release_check (pull_request) Successful in 2m55s
/ release_test (pull_request) Successful in 3m54s
/ release_targets (aarch64-unknown-linux-gnu) (pull_request) Successful in 10m49s
/ release_targets (x86_64-pc-windows-gnu) (pull_request) Successful in 5m36s
/ release_targets (x86_64-unknown-linux-gnu) (pull_request) Successful in 5m2s
/ release_targets (x86_64-unknown-linux-musl) (pull_request) Successful in 5m20s
/ release_info (pull_request) Failing after 25s
9ed26a805f
This seems to be the recommended way when using tokens.
Speed up test iterations
Some checks failed
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 25s
/ lint_reuse (pull_request) Successful in 1m8s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m49s
/ lint_yamllint (pull_request) Successful in 1m10s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m31s
/ release_check (pull_request) Successful in 3m2s
/ release_test (pull_request) Successful in 3m47s
/ release_targets (x86_64-pc-windows-gnu) (pull_request) Successful in 4m58s
/ release_targets (x86_64-unknown-linux-gnu) (pull_request) Successful in 4m12s
/ release_info (pull_request) Failing after 24s
0b0349d8ad
Exclude some targets to get faster feedback for changes in the workflow
Set API version
Some checks failed
/ test (pull_request) Successful in 55s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m6s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m8s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m15s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m34s
/ release_check (pull_request) Successful in 3m8s
/ release_test (pull_request) Successful in 4m4s
/ release_targets (x86_64-pc-windows-gnu) (pull_request) Failing after 4m31s
/ release_targets (x86_64-unknown-linux-gnu) (pull_request) Failing after 3m47s
/ release_info (pull_request) Has been skipped
2257c93403
The swagger page from Codeberg says that /api/v1 is the base URL.
Package endpoint not found at v1 API
Some checks failed
/ test (pull_request) Successful in 55s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m5s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m12s
/ lint_taplo (pull_request) Successful in 1m49s
/ lint_yamllint (pull_request) Successful in 1m7s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 4m1s
/ release_check (pull_request) Successful in 3m4s
/ release_test (pull_request) Successful in 3m57s
/ release_targets (x86_64-pc-windows-gnu) (pull_request) Successful in 5m13s
/ release_targets (x86_64-unknown-linux-gnu) (pull_request) Successful in 4m15s
/ release_info (pull_request) Failing after 25s
cda2e54989
This endpoint is also missing on the swagger page ...
Quote JSON fields
All checks were successful
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m6s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m8s
/ lint_taplo (pull_request) Successful in 1m49s
/ lint_yamllint (pull_request) Successful in 1m15s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m38s
/ release_check (pull_request) Successful in 3m6s
/ release_test (pull_request) Successful in 4m8s
/ release_targets (x86_64-pc-windows-gnu) (pull_request) Successful in 5m23s
/ release_targets (x86_64-unknown-linux-gnu) (pull_request) Successful in 4m30s
/ release_info (pull_request) Successful in 27s
e22bcb801c
The action fails with
"invalid character 't' looking for beginning of object key string"
There was a white space between the "]" and the "(" with the previous
implementation. Extract the URLs into variables to have the whole
[...](...) schema in one line, without having too long lines.
Consider milestone for release
Some checks failed
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 25s
/ lint_reuse (pull_request) Successful in 1m7s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m10s
/ lint_taplo (pull_request) Successful in 1m52s
/ lint_yamllint (pull_request) Successful in 1m11s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m51s
/ release_validation (push) Failing after 2m3s
/ release_check (push) Has been skipped
/ release_test (push) Has been skipped
/ release_targets (x86_64-pc-windows-gnu) (push) Has been skipped
/ release_targets (x86_64-unknown-linux-gnu) (push) Has been skipped
/ release_info (push) Has been skipped
1277a9bfbf
Add log output for milestone validation
Some checks failed
/ test (pull_request) Successful in 55s
/ changes (pull_request) Successful in 25s
/ lint_reuse (pull_request) Successful in 1m4s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m7s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m8s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m34s
/ release_validation (push) Failing after 1m59s
/ release_check (push) Has been skipped
/ release_test (push) Has been skipped
/ release_targets (x86_64-pc-windows-gnu) (push) Has been skipped
/ release_targets (x86_64-unknown-linux-gnu) (push) Has been skipped
/ release_info (push) Has been skipped
1cb904eea6
This steps failed with

jq: error (at <stdin>:1): Cannot index string with string "open_issues"
parse error: Invalid numeric literal at line 1, column 7
Fix quotation error
All checks were successful
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 25s
/ lint_reuse (pull_request) Successful in 1m4s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m7s
/ lint_taplo (pull_request) Successful in 1m51s
/ lint_yamllint (pull_request) Successful in 1m9s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m34s
/ release_validation (push) Successful in 2m14s
/ release_check (push) Successful in 8m35s
/ release_test (push) Successful in 9m17s
/ release_targets (x86_64-pc-windows-gnu) (push) Successful in 10m59s
/ release_targets (x86_64-unknown-linux-gnu) (push) Successful in 5m21s
/ release_info (push) Successful in 25s
5b3de8fd75
Add tag message to release description with action
Some checks failed
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m3s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m49s
/ lint_yamllint (pull_request) Successful in 1m7s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m58s
/ release_validation (push) Successful in 2m24s
/ release_check (push) Successful in 2m56s
/ release_test (push) Successful in 9m30s
/ release_targets (x86_64-pc-windows-gnu) (push) Successful in 5m10s
/ release_targets (x86_64-unknown-linux-gnu) (push) Successful in 4m8s
/ release_info (push) Failing after 31s
6f0a1a1af6
Mask line break in script
Some checks failed
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m2s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m13s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m10s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m32s
/ release_validation (push) Successful in 2m19s
/ release_check (push) Successful in 3m17s
/ release_test (push) Successful in 3m48s
/ release_targets (x86_64-pc-windows-gnu) (push) Successful in 5m16s
/ release_targets (x86_64-unknown-linux-gnu) (push) Successful in 4m6s
/ release_info (push) Failing after 32s
5356a4cd4f
Checkout repository to read tag message in action
Some checks failed
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m3s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m7s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m48s
/ release_validation (push) Successful in 2m28s
/ release_check (push) Successful in 3m17s
/ release_test (push) Successful in 3m40s
/ release_targets (x86_64-pc-windows-gnu) (push) Successful in 5m6s
/ release_targets (x86_64-unknown-linux-gnu) (push) Successful in 4m32s
/ release_info (push) Failing after 57s
22c7c99a7b
fatal: not a git repository
(or any parent up to mount point /workspace/BaumiCoder)
Log output for release body
Some checks failed
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m4s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m11s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m47s
/ release_validation (push) Successful in 2m23s
/ release_check (push) Successful in 3m13s
/ release_test (push) Successful in 3m48s
/ release_targets (x86_64-pc-windows-gnu) (push) Successful in 5m1s
/ release_targets (x86_64-unknown-linux-gnu) (push) Successful in 4m11s
/ release_info (push) Failing after 56s
fb2152c7a5
The release cannot be created in the CI with error message:
{"message":"[]: invalid character '\\n' in string literal",
"url":"https://codeberg.org/api/swagger"}

I works in my local bash. What unexpected content is the the BODY?
Log output for tag message
Some checks failed
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m3s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m6s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m52s
/ release_validation (push) Successful in 2m14s
/ release_check (push) Successful in 3m5s
/ release_test (push) Successful in 3m43s
/ release_targets (x86_64-pc-windows-gnu) (push) Successful in 4m56s
/ release_targets (x86_64-unknown-linux-gnu) (push) Successful in 3m59s
/ release_info (push) Failing after 57s
69baf83d1b
In the CI the command seems to give the commit message of the tagged
commit and not the tag message. Why?
Fix shell syntax error
Some checks failed
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m3s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m8s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m47s
/ release_validation (push) Successful in 2m21s
/ release_check (push) Successful in 3m2s
/ release_test (push) Successful in 3m34s
/ release_targets (x86_64-pc-windows-gnu) (push) Successful in 4m51s
/ release_targets (x86_64-unknown-linux-gnu) (push) Successful in 4m1s
/ release_info (push) Failing after 1m6s
b8dbca1d03
line 6: syntax error near unexpected token `('
The returned json is not tested locally as the action fails with:
jq: error (at <stdin>:1): Cannot index array with string "description"
The same command in the same container image shows me the tag message
on my machine, but in the CI it is the commit message ...?
Remove hardcoded URLs
Some checks failed
/ release_validation (push) Failing after 2m8s
/ release_check (push) Has been skipped
/ release_test (push) Has been skipped
/ release_targets (x86_64-pc-windows-gnu) (push) Has been skipped
/ release_targets (x86_64-unknown-linux-gnu) (push) Has been skipped
/ release_info (push) Has been skipped
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 24s
/ lint_reuse (pull_request) Successful in 1m3s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m7s
/ lint_taplo (pull_request) Successful in 1m49s
/ lint_yamllint (pull_request) Successful in 1m8s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m48s
2a86f7c3da
Author
Owner

Close temporary to reduce CI executions

Close temporary to reduce CI executions
BaumiCoder closed this pull request 2025-10-11 16:49:29 +02:00
BaumiCoder reopened this pull request 2025-10-19 18:56:36 +02:00
README: Add hyperlink to release badge
All checks were successful
/ test (pull_request) Successful in 56s
/ changes (pull_request) Successful in 49s
/ lint_reuse (pull_request) Successful in 1m3s
/ lint_cargo_deny (pull_request) Has been skipped
/ lint_clippy (pull_request) Has been skipped
/ lint_rustfmt (pull_request) Has been skipped
/ lint_codespell (pull_request) Successful in 1m6s
/ lint_taplo (pull_request) Successful in 1m50s
/ lint_yamllint (pull_request) Successful in 1m7s
/ lint_cargo_udeps (pull_request) Has been skipped
/ lint_ecformat (pull_request) Successful in 3m2s
92012b9d68
BaumiCoder changed title from WIP: Set up CI for the project to Set up CI for the project 2025-10-19 19:19:05 +02:00
BaumiCoder referenced this pull request from a commit 2025-10-19 19:31:05 +02:00
BaumiCoder manually merged commit 59ffa96e9b into main 2025-10-19 19:31:08 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
BaumiCoder/ecformat!26
No description provided.