CI #1431
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
pull_request: | |
schedule: | |
- cron: '0 12 * * *' # Every day noon UTC | |
jobs: | |
build: | |
strategy: | |
matrix: | |
# Each major Go release is supported until there are two newer major releases. | |
# https://go.dev/doc/devel/release#policy | |
go: | |
- "1.18.x" # Ubuntu 22.04 LTS "jammy" | |
- "1.19.x" # Debian bookworm, bullseye-backports | |
- "1.20.x" | |
- "1.21.x" | |
- "oldstable" # 2nd-latest Golang upstream stable | |
- "stable" # Latest Go upstream stable | |
# Don't cancel everything when one Go version fails | |
fail-fast: false | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install Go ${{ matrix.go }} | |
uses: actions/setup-go@v3 | |
with: | |
go-version: ${{ matrix.go }} | |
# Looks like Github Actions leaks fds to child processes | |
# https://github.com/actions/runner/issues/1188 | |
- run: ls -l /proc/self/fd | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 # Make "git describe" work | |
# CI platform specific setup steps happen here | |
- run: sudo apt-get install -qq fuse3 libssl-dev | |
# Fix "/usr/bin/fusermount: option allow_other only allowed if 'user_allow_other' is set in /etc/fuse.conf" | |
- run: echo user_allow_other | sudo tee -a /etc/fuse.conf | |
# Build & upload static binary | |
- run: ./build-without-openssl.bash | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: gocryptfs static binary (Go ${{ matrix.go }}) | |
path: gocryptfs | |
# Actual test steps are in the Makefile | |
- run: make ci |