Docker image for building rust projects. https://git.kemitix.net/kemitix/rust
Find a file
Paul Campbell 26c46227e6
All checks were successful
/ test (map[name:nightly]) (push) Successful in 2m7s
/ test (map[name:stable]) (push) Successful in 1m19s
feat: push-next uses 'latest' image
2025-01-16 08:40:00 +00:00
.forgejo/workflows feat: push-next uses 'latest' image 2025-01-16 08:40:00 +00:00
scripts feat: add check-for-ignored script 2025-01-13 21:40:51 +00:00
src fix: should build with kxio dependency 2025-01-16 08:39:28 +00:00
.gitignore build: add 'mise run test' 2025-01-11 18:26:16 +00:00
Cargo.toml fix: should build with kxio dependency 2025-01-16 08:39:28 +00:00
Dockerfile fix: add cargo components to toolchain stable-x86_64-unknown-linux-musl 2025-01-16 08:39:29 +00:00
justfile build: add fmt recipe to justfile 2025-01-16 08:40:00 +00:00
LICENSE Initial commit 2024-05-16 17:59:27 +01:00
mise.toml build: add 'mise run test' 2025-01-11 18:26:16 +00:00
README.md docs: update readme to include caveat 2025-01-16 07:41:09 +00:00
renovate.json Add renovate.json 2024-08-02 18:16:19 +00:00

docker-builder-rust

Docker image for building Rust projects with Cargo.

Usage

In a Forgejo action file, e.g. .forgejo/workflows/test.yml:

on: [push]
jobs:
  test:
    runs-on: docker
    container:
      image:
        git.kemitix.net/kemitix/rust:v3.0.0
    steps:
      - name: test with nightly
        run: cargo +nightly test
      - name: build with v1.74.1
        run: cargo +1.74.1 cargo build
      - name: test with stable
        run: cargo test

Toolchains

The available toolchain in the image are:

  • nightly
  • stable
  • 1.74.1

Contents

  • nodejs
  • rust
  • git
  • cargo
  • cargo-binstall
  • cargo-mutants
  • cargo-chef
  • cargo-hack
  • release-plz
  • perl

Scripts

  • check-for-ignored

Checks for files that are being tracked by Git but should be ignored according to the .gitignore file.

Usage

steps:
  - name: Check for Ignored Files
    run: check-for-ignored

Caveats

native-tls

This crate must use the vendored feature in order to compile in the Alpine Linux image.

native-tls = { version = "0.2", features = ["vendored"] }