Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update deps, debian #58

Closed
wants to merge 45 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
15c1ec6
Fix build (update some incompatible deps), lints
ongardie Jan 31, 2024
5f32627
Update from Debian 11 (bullseye) to Debian 12 (bookworm)
ongardie Jan 31, 2024
1dbd556
Update all dependencies
ongardie Jan 31, 2024
23b6016
Remove atty dependency
ongardie Jan 31, 2024
d20f3a6
Fix clippy lints
ongardie Jan 31, 2024
e456a4c
tests: Update expected `toml` error messages
ongardie Jan 31, 2024
93336ea
Update snapshots, completion hacks for clap output changes
ongardie Feb 1, 2024
0c08962
docker: Fix volume not found message pattern
ongardie Feb 1, 2024
f98df59
Update CI runners
ongardie Feb 1, 2024
82656d3
CI: Try installing Virtualbox on macos-13
ongardie Feb 1, 2024
9c85c61
Revert "CI: Try installing Virtualbox on macos-13"
ongardie Feb 1, 2024
d7df379
CI: Try colima for Docker on Mac
ongardie Feb 1, 2024
c90c585
CI: Try setting colima VM type
ongardie Feb 1, 2024
51949fa
CI: Add missing dash
ongardie Feb 1, 2024
6a1a75f
CI: Print homebrew directory sizes (maybe we should cache one?)
ongardie Feb 1, 2024
9b69ab9
CI: Don't fail if dirs don't exist
ongardie Feb 1, 2024
9de8945
colima: Set disk size
ongardie Feb 1, 2024
0e5dc71
CI: Add homebrew cache
ongardie Feb 1, 2024
af7cc53
CI: Drop colima disk size
ongardie Feb 1, 2024
edb0afa
CI: Drop homebrew cache dir sizes
ongardie Feb 1, 2024
30038b5
CI: Set colima mount type
ongardie Feb 1, 2024
cc027b3
CI: Try unlinking openssl1.1 to install colima (why only now?)
ongardie Feb 1, 2024
b798db3
CI: Try --overwrite instead
ongardie Feb 1, 2024
121c29b
CI: Try moving overwrite flag
ongardie Feb 1, 2024
c0ab933
CI: Try installing openssl separately
ongardie Feb 1, 2024
cb7b3d2
CI: Update openssl comment
ongardie Feb 1, 2024
5bc5d9b
CI: Revert to colima-qemu
ongardie Feb 1, 2024
674000f
CI: Drop homebrew cache (it doesn't help much)
ongardie Feb 1, 2024
e824c48
CI: Add parallel MacOS 12 build (will probably switch back)
ongardie Feb 1, 2024
c8e09bd
CI: Update comments
ongardie Feb 1, 2024
13ece90
CI: Try apt-get update in Docker hello world
ongardie Feb 1, 2024
d86b8ee
Re-run CI
ongardie Feb 1, 2024
8156b18
CI: More apt debugging
ongardie Feb 1, 2024
ee20bd0
CI: More debian/gpgv debugging
ongardie Feb 1, 2024
0c83fd6
Re-run CI
ongardie Feb 1, 2024
cf7e4ff
CI: More debian/gpgv debugging
ongardie Feb 1, 2024
66bf1f0
Re-run CI
ongardie Feb 1, 2024
46f8cc6
Revert to c8e09bd
ongardie Feb 1, 2024
30a7350
CI: Try colima on Mac OS 12
ongardie Feb 1, 2024
ed26285
CI: Update comments
ongardie Feb 1, 2024
01f1c03
CI: Switch to zstd for build artifact
ongardie Feb 1, 2024
fddc77f
CI: Update GitHub core actions
ongardie Feb 1, 2024
cb4c32b
CI: Drop actions-rs/toolchain (unmaintained)
ongardie Feb 1, 2024
ba29628
CI: Drop actions-rs/cargo (unmaintained)
ongardie Feb 1, 2024
27972ce
CI: Switch to Mac OS 13 only
ongardie Feb 1, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
236 changes: 99 additions & 137 deletions .github/workflows/main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,192 +11,154 @@ on:
- cron: 0 16 * * *
workflow_dispatch: {}
jobs:
build-macos-12-stable:
name: Build & check (macos-12, Rust stable)
runs-on: macos-12
build-macos-13-stable:
name: Build & check (macos-13, Rust stable)
runs-on: macos-13
steps:
- name: Check out sources
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Install Rust stable toolchain
uses: actions-rs/toolchain@v1
with:
components: rustfmt, clippy
override: 'true'
profile: minimal
toolchain: stable
run: |
rustup toolchain install stable --profile minimal --component clippy,rustfmt
rustup default stable
- name: Use Rust/Cargo cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
key: cargo-macos-12-stable-${{ hashFiles('Cargo.lock') }}
key: cargo-macos-13-stable-${{ hashFiles('Cargo.lock') }}
path: |
~/.cargo/registry
~/.cargo/git/
target/
restore-keys: cargo-macos-12-stable-
restore-keys: cargo-macos-13-stable-
- name: Run cargo build
uses: actions-rs/cargo@v1
with:
command: build
run: cargo build
- name: Run cargo test
uses: actions-rs/cargo@v1
with:
command: test
run: cargo test
env:
RUST_BACKTRACE: '1'
- name: Save build artifact
run: |
tar -C .. --create \
tar -C .. --create --file debug-dist.tar.zst \
cubicle/packages/ \
cubicle/src/bin/system_test/github/ \
cubicle/target/debug/cub \
cubicle/target/debug/system_test | \
gzip -1 > debug-dist.tar.gz
cubicle/target/debug/system_test
- name: Upload build artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
if-no-files-found: error
name: debug-dist-macos-12-stable
path: debug-dist.tar.gz
build-ubuntu-20-04-nightly:
name: Build & check (ubuntu-20.04, Rust nightly)
runs-on: ubuntu-20.04
name: debug-dist-macos-13-stable
path: debug-dist.tar.zst
build-ubuntu-22-04-nightly:
name: Build & check (ubuntu-22.04, Rust nightly)
runs-on: ubuntu-22.04
steps:
- name: Check out sources
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Install Rust nightly toolchain
uses: actions-rs/toolchain@v1
with:
components: rustfmt, clippy
override: 'true'
profile: minimal
toolchain: nightly
run: |
rustup toolchain install nightly --profile minimal --component clippy,rustfmt
rustup default nightly
- name: Use Rust/Cargo cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
key: cargo-ubuntu-20.04-nightly-${{ hashFiles('Cargo.lock') }}
key: cargo-ubuntu-22.04-nightly-${{ hashFiles('Cargo.lock') }}
path: |
~/.cargo/registry
~/.cargo/git/
target/
restore-keys: cargo-ubuntu-20.04-nightly-
restore-keys: cargo-ubuntu-22.04-nightly-
- name: Run cargo build
uses: actions-rs/cargo@v1
with:
command: build
run: cargo build
- name: Run cargo test
uses: actions-rs/cargo@v1
with:
command: test
run: cargo test
env:
RUST_BACKTRACE: '1'
- name: Save build artifact
run: |
tar -C .. --create \
tar -C .. --create --file debug-dist.tar.zst \
cubicle/packages/ \
cubicle/src/bin/system_test/github/ \
cubicle/target/debug/cub \
cubicle/target/debug/system_test | \
gzip -1 > debug-dist.tar.gz
cubicle/target/debug/system_test
- name: Upload build artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
if-no-files-found: error
name: debug-dist-ubuntu-20.04-nightly
path: debug-dist.tar.gz
build-ubuntu-20-04-stable:
name: Build & check (ubuntu-20.04, Rust stable)
runs-on: ubuntu-20.04
name: debug-dist-ubuntu-22.04-nightly
path: debug-dist.tar.zst
build-ubuntu-22-04-stable:
name: Build & check (ubuntu-22.04, Rust stable)
runs-on: ubuntu-22.04
steps:
- name: Check out sources
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Install Rust stable toolchain
uses: actions-rs/toolchain@v1
with:
components: rustfmt, clippy
override: 'true'
profile: minimal
toolchain: stable
run: |
rustup toolchain install stable --profile minimal --component clippy,rustfmt
rustup default stable
- name: Use Rust/Cargo cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
key: cargo-ubuntu-20.04-stable-${{ hashFiles('Cargo.lock') }}
key: cargo-ubuntu-22.04-stable-${{ hashFiles('Cargo.lock') }}
path: |
~/.cargo/registry
~/.cargo/git/
target/
restore-keys: cargo-ubuntu-20.04-stable-
restore-keys: cargo-ubuntu-22.04-stable-
- name: Run cargo build
uses: actions-rs/cargo@v1
with:
command: build
run: cargo build
- name: Run cargo test
uses: actions-rs/cargo@v1
with:
command: test
run: cargo test
env:
RUST_BACKTRACE: '1'
- name: Run cargo fmt
uses: actions-rs/cargo@v1
with:
args: --all -- --check
command: fmt
run: cargo fmt --all -- --check
- name: Run clippy
uses: actions-rs/cargo@v1
with:
args: -- -D warnings
command: clippy
run: cargo clippy -- -D warnings
- name: Check GitHub YAML
run: |
cargo run --bin gen_github_yaml > .github/workflows/main.gen.yaml
diff .github/workflows/main.yaml .github/workflows/main.gen.yaml
- name: Install cargo audit
uses: actions-rs/cargo@v1
with:
args: cargo-audit
command: install
run: cargo install cargo-audit
- name: Run cargo audit
uses: actions-rs/cargo@v1
with:
command: audit
run: cargo audit
- name: Save build artifact
run: |
tar -C .. --create \
tar -C .. --create --file debug-dist.tar.zst \
cubicle/packages/ \
cubicle/src/bin/system_test/github/ \
cubicle/target/debug/cub \
cubicle/target/debug/system_test | \
gzip -1 > debug-dist.tar.gz
cubicle/target/debug/system_test
- name: Upload build artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
if-no-files-found: error
name: debug-dist-ubuntu-20.04-stable
path: debug-dist.tar.gz
system_test-macos-12-docker:
name: System tests (macos-12, docker)
name: debug-dist-ubuntu-22.04-stable
path: debug-dist.tar.zst
system_test-macos-13-docker:
name: System tests (macos-13, docker)
needs:
- build-macos-12-stable
runs-on: macos-12
- build-macos-13-stable
runs-on: macos-13
steps:
- name: Install Docker
run: brew install docker docker-machine
- name: Create VirtualBox VM for Docker
run: brew install docker
- name: Install Colima
run: |
docker-machine create \
--driver virtualbox \
--virtualbox-boot2docker-url 'https://github.com/boot2docker/boot2docker/releases/download/v19.03.12/boot2docker.iso' \
--virtualbox-hostonly-cidr '192.168.56.1/24' \
default && \
eval "$(docker-machine env default)" && \
env | grep DOCKER >> $GITHUB_ENV
brew install --overwrite openssl@3
brew install colima
- name: Start Colima
run: colima start
- name: Docker hello world
run: docker run --rm debian:11 echo 'Hello world'
run: docker run --rm debian:12 echo 'Hello world'
- name: Download build artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: debug-dist-macos-12-stable
name: debug-dist-macos-13-stable
- name: Unpack build artifact
run: tar --directory .. --extract --verbose --file debug-dist.tar.gz
run: tar --directory .. --extract --verbose --file debug-dist.tar.zst
- name: Run cub list
run: ./target/debug/cub --config 'src/bin/system_test/github/docker.toml' list
env:
Expand All @@ -206,20 +168,20 @@ jobs:
env:
INSTA_WORKSPACE_ROOT: .
RUST_BACKTRACE: '1'
system_test-ubuntu-20-04-bubblewrap:
name: System tests (ubuntu-20.04, bubblewrap)
system_test-ubuntu-22-04-bubblewrap:
name: System tests (ubuntu-22.04, bubblewrap)
needs:
- build-ubuntu-20-04-stable
runs-on: ubuntu-20.04
- build-ubuntu-22-04-stable
runs-on: ubuntu-22.04
steps:
- name: Install Bubblewrap and minor dependencies
run: sudo apt-get install -y bubblewrap pv
- name: Download build artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: debug-dist-ubuntu-20.04-stable
name: debug-dist-ubuntu-22.04-stable
- name: Unpack build artifact
run: tar --directory .. --extract --verbose --file debug-dist.tar.gz
run: tar --directory .. --extract --verbose --file debug-dist.tar.zst
- name: Run cub list
run: ./target/debug/cub --config 'src/bin/system_test/github/bubblewrap.toml' list
env:
Expand All @@ -229,20 +191,20 @@ jobs:
env:
INSTA_WORKSPACE_ROOT: .
RUST_BACKTRACE: '1'
system_test-ubuntu-20-04-docker:
name: System tests (ubuntu-20.04, docker)
system_test-ubuntu-22-04-docker:
name: System tests (ubuntu-22.04, docker)
needs:
- build-ubuntu-20-04-stable
runs-on: ubuntu-20.04
- build-ubuntu-22-04-stable
runs-on: ubuntu-22.04
steps:
- name: Docker hello world
run: docker run --rm debian:11 echo 'Hello world'
run: docker run --rm debian:12 echo 'Hello world'
- name: Download build artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: debug-dist-ubuntu-20.04-stable
name: debug-dist-ubuntu-22.04-stable
- name: Unpack build artifact
run: tar --directory .. --extract --verbose --file debug-dist.tar.gz
run: tar --directory .. --extract --verbose --file debug-dist.tar.zst
- name: Run cub list
run: ./target/debug/cub --config 'src/bin/system_test/github/docker.toml' list
env:
Expand All @@ -252,20 +214,20 @@ jobs:
env:
INSTA_WORKSPACE_ROOT: .
RUST_BACKTRACE: '1'
system_test-ubuntu-20-04-docker-bind:
name: System tests (ubuntu-20.04, docker-bind)
system_test-ubuntu-22-04-docker-bind:
name: System tests (ubuntu-22.04, docker-bind)
needs:
- build-ubuntu-20-04-stable
runs-on: ubuntu-20.04
- build-ubuntu-22-04-stable
runs-on: ubuntu-22.04
steps:
- name: Docker hello world
run: docker run --rm debian:11 echo 'Hello world'
run: docker run --rm debian:12 echo 'Hello world'
- name: Download build artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: debug-dist-ubuntu-20.04-stable
name: debug-dist-ubuntu-22.04-stable
- name: Unpack build artifact
run: tar --directory .. --extract --verbose --file debug-dist.tar.gz
run: tar --directory .. --extract --verbose --file debug-dist.tar.zst
- name: Run cub list
run: ./target/debug/cub --config 'src/bin/system_test/github/docker-bind.toml' list
env:
Expand All @@ -275,20 +237,20 @@ jobs:
env:
INSTA_WORKSPACE_ROOT: .
RUST_BACKTRACE: '1'
system_test-ubuntu-20-04-user:
name: System tests (ubuntu-20.04, user)
system_test-ubuntu-22-04-user:
name: System tests (ubuntu-22.04, user)
needs:
- build-ubuntu-20-04-stable
runs-on: ubuntu-20.04
- build-ubuntu-22-04-stable
runs-on: ubuntu-22.04
steps:
- name: Install minor dependencies
run: sudo apt-get install -y pv
- name: Download build artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: debug-dist-ubuntu-20.04-stable
name: debug-dist-ubuntu-22.04-stable
- name: Unpack build artifact
run: tar --directory .. --extract --verbose --file debug-dist.tar.gz
run: tar --directory .. --extract --verbose --file debug-dist.tar.zst
- name: Run cub list
run: ./target/debug/cub --config 'src/bin/system_test/github/user.toml' list
env:
Expand Down
Loading