Skip to content

Build KPF & Pongo

Build KPF & Pongo #375

Workflow file for this run

name: Build KPF & Pongo
on:
# Trigger on all pushes and pull requests
push:
pull_request:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
build:
runs-on: macos-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Update repository
run: |
git submodule update --init --recursive
git fetch --all
git reset --hard origin/$(git branch --show-current)
git submodule update --recursive --remote
- name: Compile KPF and Pongo
run: |
make
- name: Prepare upload directory
run: |
mkdir upload
mv build/Pongo.bin upload/
mv build/checkra1n-kpf-pongo upload/
- name: Get branch name
id: branch-name
uses: tj-actions/branch-names@v7
- name: Upload artifact
uses: wangyucode/[email protected]
with:
host: ${{ secrets.NICKCHAN_FTP_HOST }}
port: ${{ secrets.NICKCHAN_FTP_PORT }}
username: palera1n
password: ${{ secrets.NICKCHAN_FTP_PASS }}
forceUpload: true
dryRun: false
localDir: 'upload'
remoteDir: "/palera1n/artifacts/kpf/${{ steps.branch-name.outputs.ref_branch || github.ref }}"
test:
runs-on: ubuntu-22.04
container:
image: debian:stable
steps:
- name: Install packages
run: |
dpkg --add-architecture arm64
apt-get update
apt-get -y --allow-downgrades dist-upgrade
apt-get install -y build-essential git libc6:arm64 gcc-aarch64-linux-gnu libc6-arm64-cross libc6-dev-arm64-cross qemu-user qemu-user-binfmt clang lld curl zstd
- name: Checkout repository
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Compile KPF test
run:
make -C checkra1n/kpf-test KPF_CFLAGS="-target aarch64-linux-gnu -L/usr/aarch64-linux-gnu/lib -I/usr/aarch64-linux-gnu/include -L/usr/lib/gcc-cross/aarch64-linux-gnu/*" kpf-test.linux
- name: Get kernels
run: |
curl -Lu ${{ secrets.ACTIONS_RESOURCES_LOGIN }} https://static.palera.in/action-resources/kc.tar.zst | zstd -cdT0 | tar -x
- name: Test KPF
run: |
qemu-aarch64 ./checkra1n/kpf-test/kpf-test.linux -n kernel2;