Skip to content

Commit

Permalink
Switch to using GitHub Actions as CI provider
Browse files Browse the repository at this point in the history
GitLab has repeatedly messed with webhooks, repository mirroring, and CI
itself in sinister ways that silently broke our CI from one day to the
next, without any advance notice, acknowledgment, or even hint what they
have done this time. On top of that, debugging their solution is a
nightmare and time sink, because they provide virtually no insight into
what is going on (at least not without involvement of third party
services) and their API endpoints may just indicate success and still do
nothing.
This time it appears that they decided to remove "pull" mirroring from
the free tier altogether, meaning that we can no longer keep code on
GitLab in sync with that on GitHub, assuming it is being pushed to the
latter. That renders their product entirely useless for our intents and
purposes.
To that end, this change switches over to using GitHub Actions as the CI
provider.
  • Loading branch information
d-e-s-o committed Dec 19, 2023
1 parent 5848e55 commit 64065c3
Show file tree
Hide file tree
Showing 5 changed files with 86 additions and 23 deletions.
78 changes: 78 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Copyright (C) 2023 Daniel Mueller <deso@posteo.net>
# SPDX-License-Identifier: GPL-3.0-or-later

name: Test

on:
pull_request:
push:

env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: 1
# Build without debug information enabled to decrease compilation time
# and binary sizes in CI. This option is assumed to only have marginal
# effects on the generated code, likely only in terms of section
# arrangement. See
# https://doc.rust-lang.org/cargo/reference/environment-variables.html
# https://doc.rust-lang.org/rustc/codegen-options/index.html#debuginfo
RUSTFLAGS: '-C debuginfo=0'

jobs:
test:
name: Build and test [${{ matrix.runs-on }}, ${{ matrix.rust }}, ${{ matrix.profile }}]
strategy:
fail-fast: false
matrix:
runs-on: [ubuntu-latest]
rust: [stable]
profile: [dev, release]
runs-on: ${{ matrix.runs-on }}
steps:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
toolchain: ${{ matrix.rust }}
profile: minimal
override: true
- name: Build & test ${{ matrix.profile }}
run: |
sudo apt-get install --assume-yes libgpgme-dev
cargo build --profile=${{ matrix.profile }} --all-targets
cargo test --profile=${{ matrix.profile }}
build-minimum:
name: Build using minimum versions of dependencies
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Nightly Rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: nightly
- run: cargo +nightly -Z minimal-versions update
- name: Install minimum Rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
# Please adjust README and rust-version field in Cargo.toml files when
# bumping version.
toolchain: 1.56.0
default: true
- name: Build
run: |
sudo apt-get install --assume-yes libgpgme-dev
cargo build --locked
clippy:
name: Lint with clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
components: clippy
override: true
- run: |
sudo apt-get install --assume-yes libgpgme-dev
cargo clippy --no-deps --all-targets --all-features --tests -- -A unknown_lints -A deprecated -D warnings
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
Unreleased
----------
- Switched to using GitHub Actions as CI provider


0.1.4
-----
- Switched from using `ssh-agent` to `ssh-agent-lib`
Expand Down
4 changes: 2 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ codegen-units = 1
incremental = false

[dependencies.anyhow]
version = "1.0"
version = "1.0.14"

[dependencies.dirs]
version = "4.0"
Expand All @@ -65,7 +65,7 @@ default-features = false
version = "0.8"

[dependencies.log]
version = "0.4"
version = "0.4.8"

[dependencies.ssh-agent-lib]
version = "0.2.5"
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
[![pipeline](https://gitlab.com/d-e-s-o/ssh-gpg-agent/badges/master/pipeline.svg)](https://gitlab.com/d-e-s-o/ssh-gpg-agent/commits/master)
[![pipeline](https://github.com/d-e-s-o/ssh-gpg-agent/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/d-e-s-o/ssh-gpg-agent/actions/workflows/test.yml)
[![crates.io](https://img.shields.io/crates/v/ssh-gpg-agent.svg)](https://crates.io/crates/ssh-gpg-agent)
[![rustc](https://img.shields.io/badge/rustc-1.56+-blue.svg)](https://blog.rust-lang.org/2021/10/21/Rust-1.56.0.html)
[![license](https://img.shields.io/github/license/d-e-s-o/ssh-gpg-agent.svg)](https://github.com/d-e-s-o/ssh-gpg-agent/blob/master/LICENSE)
Expand Down
20 changes: 0 additions & 20 deletions ci/gitlab-ci.yml

This file was deleted.

0 comments on commit 64065c3

Please sign in to comment.