Skip to content

Commit

Permalink
Add ABI compatibility report deploy
Browse files Browse the repository at this point in the history
Closes: libevent#887
  • Loading branch information
azat committed May 5, 2020
1 parent 448a478 commit 889ad6d
Showing 1 changed file with 73 additions and 0 deletions.
73 changes: 73 additions & 0 deletions .github/workflows/abi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
---
name: abi

on:
push:
branches:
- master
## TODO: use source tag name in the destination repo
#tags:
# - release-*

jobs:
abi:
runs-on: ubuntu-18.04
## TODO: use docker image, but for now this is not possible without hacks
## due to even public registry require some authentication:
## - https://github.community/t5/GitHub-Actions/docker-pull-from-public-GitHub-Package-Registry-fail-with-quot/td-p/32782/page/5
#container: docker.pkg.github.com/azat/docker-images/lvc-debian
if: "!contains(github.event.head_commit.message, 'ci skip')"
strategy:
fail-fast: false

steps:
- uses: actions/[email protected]

- name: Install Dependencies
run:
sudo apt install
abi-tracker
abi-monitor
abi-dumper
abi-compliance-checker
pkgdiff
vtable-dumper

- name: Generate
shell: bash
run: |
./extra/abi-check/abi_check.sh
env:
ABI_CHECK_ROOT: /tmp/le-abi-root

- name: Deploy
env:
LIBEVENT_DEPLOY_ABI_PRI: ${{ secrets.LIBEVENT_DEPLOY_ABI_PRI }}
COMMIT_ID: ${{ github.sha }}
run: |
[[ -n $LIBEVENT_DEPLOY_ABI_PRI ]] || exit 0
mkdir -p ~/.ssh
echo "$LIBEVENT_DEPLOY_ABI_PRI" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh-keyscan github.com >> ~/.ssh/known_hosts
user_name="${{ github.event.head_commit.author.name }}"
user_email="${{ github.event.head_commit.author.email }}"
short_commit_id="${COMMIT_ID:0:7}"
owner_name="${{ github.event.repository.owner.name }}"
cd /tmp/le-abi-root/work/abi-check/timeline/libevent/
git init
git config --local user.name $user_name
git config --local user.email $user_email
git add -f .
git commit -m "Update ABI/API backward compatibility report (libevent/libevent@$short_commit_id)"
git push -f [email protected]:$owner_name/abi master
# XXX: requires container-id for docker
- uses: actions/upload-artifact@v1
if: failure()
with:
name: build
path: /tmp/le-abi-root

0 comments on commit 889ad6d

Please sign in to comment.