Enable advisory tests for dnfdaemon #741
Workflow file for this run
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: DNF CI | |
on: pull_request_target | |
jobs: | |
permission-check: | |
name: Author Permission Check | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check author repository permissions | |
uses: octokit/[email protected] | |
id: user-permission | |
with: | |
route: GET /repos/${{github.repository}}/collaborators/${{github.event.sender.login}}/permission | |
env: | |
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} | |
- name: Set write permission | |
if: contains('admin write', fromJson(steps.user-permission.outputs.data).permission) | |
id: set-write | |
run: | | |
echo "User '${{github.event.sender.login}}' has permission '${{fromJson(steps.user-permission.outputs.data).permission}}'. allowed values: 'admin', 'write'" | |
echo "::set-output name=has-write::true" | |
outputs: | |
has-write: ${{steps.set-write.outputs.has-write}} | |
integration-tests: | |
name: Integration Tests | |
needs: permission-check | |
if: needs.permission-check.outputs.has-write == 'true' | |
strategy: | |
fail-fast: false # don't fail all matrix jobs if one of them fails | |
matrix: | |
include: | |
- { component: dnf5, suite: dnf, extra-run-args: --tags dnf5 --command dnf5 } | |
- { component: dnf5, suite: dnf, extra-run-args: --tags dnf5daemon --command dnf5daemon-client } | |
- { component: createrepo_c, suite: createrepo_c, extra-run-args: '' } | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/rpm-software-management/dnf-ci-host | |
options: --privileged | |
volumes: | |
# A workaround for an undeterministic "OCI not found" error, see | |
# https://github.com/containers/podman/issues/10321 | |
- /var/lib/mycontainer:/var/lib/containers | |
steps: | |
- name: Check out sources | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{github.event.pull_request.head.sha}} # check out the PR HEAD | |
fetch-depth: 0 | |
- name: Setup CI | |
id: setup-ci | |
uses: ./.github/actions/setup-ci | |
with: | |
copr-user: ${{secrets.COPR_USER}} | |
copr-api-token: ${{secrets.COPR_API_TOKEN}} | |
- name: Run Copr Build | |
id: copr-build | |
uses: ./.github/actions/copr-build | |
with: | |
copr-user: ${{steps.setup-ci.outputs.copr-user}} | |
overlay: ${{matrix.component}}-ci | |
- name: Run Integration Tests | |
uses: ./.github/actions/integration-tests | |
with: | |
package-urls: ${{steps.copr-build.outputs.package-urls}} | |
suite: ${{matrix.suite}} | |
extra-run-args: ${{matrix.extra-run-args}} |