name: codegen
on: workflow_dispatch
jobs:
codegen:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- name: update libbpf
working-directory: xtask/libbpf
run: |
set -e
git fetch origin
git checkout origin/HEAD
echo "LIBBPF_SHA=$(git rev-parse HEAD)" >> $GITHUB_ENV
- uses: dtolnay/rust-toolchain@master
with:
toolchain: nightly
components: rustfmt, clippy
- uses: Swatinem/rust-cache@v2
- name: Install headers
run: |
sudo apt -y update
sudo apt -y install libc6-dev libc6-dev-{arm64,armel,riscv64}-cross
- name: Run codegen
run: |
cargo xtask codegen
- name: Check for changes
run: |
git diff --quiet || echo "COMMIT_CHANGES=1" >> $GITHUB_ENV
- name: Commit Changes
id: commit
if: env.COMMIT_CHANGES == 1
uses: devops-infra/action-commit-push@master
with:
github_token: "${{ secrets.CRABBY_GITHUB_TOKEN }}"
commit_prefix: "[codegen] Update libbpf to ${{ env.LIBBPF_SHA }}"
commit_message: "Update libbpf to ${{ env.LIBBPF_SHA }}"
target_branch: codegen
force: true
- name: Create pull request
if: steps.commit.outputs.files_changed != ''
uses: devops-infra/action-pull-request@master
with:
github_token: ${{ secrets.CRABBY_GITHUB_TOKEN }}
body: "**Automated pull request**
Update libbpf to ${{ env.LIBBPF_SHA }}"
title: Update libbpf to ${{ env.LIBBPF_SHA }}
source_branch: codegen
target_branch: main
get_diff: true