diff options
author | Martin Pärtel <martin.partel@gmail.com> | 2023-11-12 20:23:18 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-12 20:23:18 +0200 |
commit | 923d9524e266f4c691ea19e6309ed9b7ea0e910c (patch) | |
tree | ef6104030332c24bf0a65d128668e758dd65bb37 | |
parent | 8e47a43bc422c7b8dc8499ccba13fca837730690 (diff) | |
parent | c9ff79f95c62f8df27af21dfb182ade951f6d11b (diff) | |
download | bindfs-923d9524e266f4c691ea19e6309ed9b7ea0e910c.tar.gz |
Merge pull request #146 from hartwork/github-actions-ci
Add GitHub Actions CI to cover build with FUSE 3 on Linux (for #144)
-rw-r--r-- | .github/dependabot.yml | 15 | ||||
-rw-r--r-- | .github/workflows/linux.yml | 84 |
2 files changed, 99 insertions, 0 deletions
diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..dc5c447 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,15 @@ +# Copyright (c) 2023 Sebastian Pipping <sebastian@pipping.org> +# Licensed under GPL v2 or later + +version: 2 +updates: + + - package-ecosystem: "github-actions" + commit-message: + include: "scope" + prefix: "Actions" + directory: "/" + labels: + - "enhancement" + schedule: + interval: "weekly" diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml new file mode 100644 index 0000000..0624027 --- /dev/null +++ b/.github/workflows/linux.yml @@ -0,0 +1,84 @@ +# Copyright (c) 2023 Sebastian Pipping <sebastian@pipping.org> +# Licensed under GPL v2 or later + +name: Build on Linux + +on: + pull_request: + push: + schedule: + - cron: '0 3 * * 5' # Every Friday at 3am + workflow_dispatch: + +jobs: + linux: + name: Build (${{ matrix.cc }} on ${{ matrix.runs-on }}) + runs-on: ${{ matrix.runs-on }} + strategy: + fail-fast: false + matrix: + include: + - cc: gcc-13 + cxx: g++-13 + clang_major_version: null + clang_repo_suffix: null + runs-on: ubuntu-22.04 + - cc: clang-17 + cxx: clang++-17 + clang_major_version: 17 + clang_repo_suffix: -17 + runs-on: ubuntu-22.04 + - cc: clang-18 + cxx: clang++-18 + clang_major_version: 18 + clang_repo_suffix: + runs-on: ubuntu-22.04 + steps: + - name: Add Clang/LLVM repositories + if: "${{ contains(matrix.cxx, 'clang') }}" + run: |- + set -x + source /etc/os-release + wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - + sudo add-apt-repository "deb http://apt.llvm.org/${UBUNTU_CODENAME}/ llvm-toolchain-${UBUNTU_CODENAME}${{ matrix.clang_repo_suffix }} main" + + - name: Install build dependencies + run: |- + sudo apt-get update + sudo apt-get install --yes --no-install-recommends \ + autoconf \ + automake \ + libfuse3-dev \ + libtool \ + pkg-config + + - name: Install build dependency Clang ${{ matrix.clang_major_version }} + if: "${{ contains(matrix.cxx, 'clang') }}" + run: |- + sudo apt-get install --yes --no-install-recommends -V \ + clang-${{ matrix.clang_major_version }} + + - name: Checkout Git branch + uses: actions/checkout@v4 + + - name: 'Bootstrap with ./autogen.sh' + run: |- + ./autogen.sh + + - name: 'Configure' + run: |- + set -x + mkdir build + cd build + ../configure + + - name: 'Build' + run: |- + set -x + make -C build -j$(nproc) VERBOSE=1 + + - name: 'Install' + run: |- + set -x -o pipefail + make -C build install DESTDIR="${PWD}"/ROOT/ + find ROOT/ | sort | xargs ls -ld |