Merge pull request #28 from L4STeam/AccECN-2023 #85
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: Build deb package | |
on: [push] | |
jobs: | |
build: | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Download apt-get dependencies | |
run: | | |
sudo env DEBIAN_FRONTEND=noninteractive apt-get -y purge unattended-upgrades | |
sudo env DEBIAN_FRONTEND=noninteractive apt-get -y update | |
sudo env DEBIAN_FRONTEND=noninteractive apt-get -y install git fakeroot \ | |
libelf-dev libssl-dev flex bison coreutils build-essential \ | |
xz-utils devscripts initramfs-tools wget linux-headers-5.15.0-60-generic | |
- name: Kernel config | |
run: | | |
cp /usr/src/linux-headers-5.15.0-60-generic/.config . | |
scripts/config --disable DEBUG_INFO \ | |
--set-str SYSTEM_TRUSTED_KEYS "" \ | |
--set-str CONFIG_SYSTEM_REVOCATION_KEYS "" \ | |
--set-val CONFIG_FRAME_WARN 0 \ | |
--module CONFIG_TCP_CONG_PRAGUE \ | |
--module CONFIG_TCP_CONG_BBR \ | |
--module CONFIG_TCP_CONG_BBR2 \ | |
--module CONFIG_TCP_CONG_DCTCP \ | |
--module CONFIG_NET_IPIP \ | |
--module CONFIG_NET_CLS_U32 \ | |
--module CONFIG_NET_SCH_DUALPI2 \ | |
--module CONFIG_NET_SCH_PIE \ | |
--module CONFIG_NET_SCH_FQ \ | |
--module CONFIG_NET_SCH_FQ_CODEL \ | |
--module CONFIG_NET_SCH_CODEL \ | |
--module CONFIG_NET_SCH_RED \ | |
--module CONFIG_NET_SCH_CAKE \ | |
--module CONFIG_NET_SCH_HTB \ | |
--module CONFIG_NET_SCH_NETEM \ | |
--module CONFIG_NET_SCH_INGRESS \ | |
--module CONFIG_NET_ACT_MIRRED \ | |
--module CONFIG_IFB \ | |
--module CONFIG_VETH \ | |
--module CONFIG_BRIDGE \ | |
--module CONFIG_INET_DIAG | |
make olddefconfig | |
- name: make-deb | |
run: make -j$(nproc) bindeb-pkg \ | |
LOCALVERSION=-$(git rev-parse --short HEAD)-prague-${GITHUB_RUN_NUMBER} \ | |
KDEB_PKGVERSION=1 | |
- name: Move artifacts | |
run: | | |
mkdir -p debian_build | |
mv -t debian_build ../linux-*.deb | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: prague-kernel | |
path: debian_build | |
release: | |
name: Release build artifacts for the branch | |
runs-on: ubuntu-20.04 | |
needs: build | |
permissions: write-all | |
if: ${{ github.ref == 'refs/heads/testing' || github.ref == 'refs/heads/ratebase' || github.ref == 'refs/heads/AccECN-2023'}} | |
steps: | |
- name: Get artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: prague-kernel | |
- name: Include iproute2 into the pre-release archive | |
run: | | |
wget https://github.com/L4STeam/iproute2/releases/download/master-build/iproute2-l4s.zip | |
unzip iproute2-l4s | |
mv -t . iproute2-l4s/*.deb | |
- name: Extract branch name | |
shell: bash | |
run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT | |
id: extract_branch | |
- name: Zip artifacts | |
run: | | |
mkdir debian_build | |
mv *.deb debian_build | |
zip -r l4s-${{ steps.extract_branch.outputs.branch }}.zip debian_build | |
- name: Release tip build | |
uses: pyTooling/Actions/releaser@main | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
tag: ${{ steps.extract_branch.outputs.branch }}-build | |
files: | | |
l4s-${{ steps.extract_branch.outputs.branch }}.zip |