--- 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/checkout@v2.0.0 - 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 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 git@github.com:$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 - uses: actions/upload-artifact@v1 with: name: build path: /tmp/le-abi-root/work/abi-check