#ci #radicle #adapter #native #running #file #shell

build radicle-native-ci

Radicle native CI adapter for running directly on node host

1 unstable release

0.1.0 Apr 3, 2024

#124 in Build Utils

Download history 121/week @ 2024-04-01 4/week @ 2024-04-08

125 downloads per month

MIT/Apache and GPL-3.0-or-later

43KB
931 lines

radicle-native-ci

This is an adapter for the Radicle CI broker, for performing CI runs locally.

The CI run is performed locally, without any isolation. This is not safe and secure, but it's simple, and easy to get working. Do not use this unless you trust the repository and its dependencies.

The repository must contain a file ./radicle/native.yaml that specifies how CI is run for the repository. For example:

shell: |
  cargo test --locked --workspace

Architecture

See the documentation directory for an architecture document.

Configuration

The adapter requires the RADICLE_NATIVE_CI environment variable to be set to the filename of a configuration file in YAML. For example:

state: /srv/http
log: /home/_rad/native-ci.log

The fields are:

  • state --- required, directory where per-run directories are stored
  • log --- required, file where native CI should write a log
  • timeout --- optional, maximum duration of the run, in seconds

Packaging

There is simple, simplistic, rudimentary, personal-use-only packaging for Debian in the debian directory, used by Lars to build packages for his own use.

Running tests

To run the test suite for the CI broker:

cargo test

(The usual way, for a Rust program.)

License

Radicle native CI is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.

Dependencies

~53MB
~1M SLoC