[dnf5] Fix: Catch exception from plugin before unloading it #1544
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 5 CI | |
on: | |
pull_request_target: | |
types: [opened, reopened, synchronize] | |
merge_group: | |
types: [checks_requested] | |
jobs: | |
package-build: | |
name: Package Build | |
runs-on: ubuntu-latest | |
container: ghcr.io/rpm-software-management/dnf-ci-host | |
strategy: | |
fail-fast: false # don't fail all matrix jobs if one of them fails | |
matrix: | |
compiler: ['', clang] # gcc is the default | |
steps: | |
- name: Check out ci-dnf-stack | |
uses: actions/checkout@v2 | |
with: | |
repository: rpm-software-management/ci-dnf-stack | |
- 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: Check out sources | |
uses: actions/checkout@v2 | |
with: | |
path: gits/${{github.event.repository.name}} | |
ref: ${{github.event.pull_request.head.sha}} # check out the PR HEAD | |
fetch-depth: 0 | |
- name: Rebase the pull request on target branch | |
run: | | |
pushd gits/${{github.event.repository.name}} | |
git config user.name github-actions | |
git config user.email [email protected] | |
echo "Rebasing \"`git log --oneline -1`\" on ${{github.event.pull_request.base.ref}}: \"`git log --oneline -1 origin/${{github.event.pull_request.base.ref}}`\"" | |
git rebase origin/${{github.event.pull_request.base.ref}} | |
popd | |
- name: Build in Copr | |
run: | | |
CHROOTS="fedora-37-x86_64, fedora-38-x86_64, fedora-rawhide-x86_64" | |
PROJECT_NAME="CI-libdnf5-pr${{github.event.pull_request.number}}" | |
if [[ -n "${{matrix.compiler}}" ]]; then | |
PROJECT_NAME+="-${{matrix.compiler}}" | |
fi | |
rpm-gitoverlay --gitdir=gits build-overlay -s overlays/dnf5-unstable rpm --with "${{matrix.compiler}}" copr --owner "${{steps.setup-ci.outputs.copr-user}}" --project "$PROJECT_NAME" --chroots "$CHROOTS" --delete-project-after-days=7 --additional-repos="copr://rpmsoftwaremanagement/dnf-nightly copr://rpmsoftwaremanagement/dnf5-unstable" | |
copr-build: | |
name: Copr Build | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/rpm-software-management/dnf-ci-host | |
outputs: | |
package-urls: ${{steps.copr-build.outputs.package-urls}} | |
steps: | |
- name: Check out ci-dnf-stack | |
uses: actions/checkout@v2 | |
with: | |
repository: rpm-software-management/ci-dnf-stack | |
- 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: Check out sources | |
uses: actions/checkout@v2 | |
with: | |
path: gits/${{github.event.repository.name}} | |
ref: ${{github.event.pull_request.head.sha}} # check out the PR HEAD | |
fetch-depth: 0 | |
- name: Run Copr Build | |
id: copr-build | |
uses: ./.github/actions/copr-build | |
with: | |
copr-user: ${{steps.setup-ci.outputs.copr-user}} | |
overlay: dnf5-ci | |
integration-tests: | |
name: DNF Integration Tests | |
needs: copr-build | |
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 | |
strategy: | |
matrix: | |
extra-run-args: [--tags dnf5 --command dnf5, --tags dnf5daemon --command dnf5daemon-client] | |
steps: | |
- name: Check out ci-dnf-stack | |
uses: actions/checkout@v2 | |
with: | |
repository: rpm-software-management/ci-dnf-stack | |
- name: Run Integration Tests | |
uses: ./.github/actions/integration-tests | |
with: | |
package-urls: ${{needs.copr-build.outputs.package-urls}} | |
extra-run-args: ${{matrix.extra-run-args}} |