mirror of
https://github.com/koverstreet/bcachefs-tools.git
synced 2025-02-09 00:00:04 +03:00
Add packaging workflow
Package and publish deb+rpm for easy testing Signed-off-by: Alexander Fougner <fougner89@gmail.com>
This commit is contained in:
parent
ec28e6bfa2
commit
eb13ae8d5e
66
.github/workflows/build-packages.yml
vendored
Normal file
66
.github/workflows/build-packages.yml
vendored
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
on: [push]
|
||||||
|
|
||||||
|
name: build
|
||||||
|
|
||||||
|
env:
|
||||||
|
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
|
||||||
|
deb:
|
||||||
|
name: bcachefs-tools-deb
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
os: [ubuntu-20.04, ubuntu-22.04]
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- name: Disable initramfs update
|
||||||
|
run: sudo sed -i 's/yes/no/g' /etc/initramfs-tools/update-initramfs.conf
|
||||||
|
- name: Disable man-db update
|
||||||
|
run: sudo rm -f /var/lib/man-db/auto-update
|
||||||
|
- name: Install build-deps
|
||||||
|
run: |
|
||||||
|
sudo apt-get update && sudo apt-get -y install pkg-config libaio-dev libblkid-dev \
|
||||||
|
libkeyutils-dev liblz4-dev libsodium-dev liburcu-dev libzstd-dev \
|
||||||
|
uuid-dev zlib1g-dev valgrind libudev-dev python3-docutils \
|
||||||
|
debhelper llvm clang libclang-dev rustc cargo \
|
||||||
|
devscripts
|
||||||
|
- name: Setup Rust
|
||||||
|
run: |
|
||||||
|
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal
|
||||||
|
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
|
||||||
|
- name: Make deb
|
||||||
|
run: |
|
||||||
|
make -j`nproc` deb
|
||||||
|
mkdir dist && mv ../*.deb ./dist/
|
||||||
|
- name: Upload deb
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: bcachefs-tools-deb_${{ matrix.os }}
|
||||||
|
path: dist
|
||||||
|
|
||||||
|
rpm:
|
||||||
|
name: bcachefs-tools-rpm
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
container:
|
||||||
|
image: docker.io/fedora:latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- name: Install build essentials
|
||||||
|
run: dnf install -y nodejs make rpmdevtools yum-utils
|
||||||
|
- name: Setup Rust
|
||||||
|
run: |
|
||||||
|
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal
|
||||||
|
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
|
||||||
|
- name: Install build-deps
|
||||||
|
run: dnf builddep -y packaging/bcachefs-tools.spec
|
||||||
|
- name: Make rpm
|
||||||
|
run: |
|
||||||
|
make -j`nproc` rpm
|
||||||
|
mv ${HOME}/rpmbuild ./
|
||||||
|
- name: Upload rpm
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: bcachefs-tools-rpm
|
||||||
|
path: rpmbuild
|
Loading…
Reference in New Issue
Block a user