From ead08d191cc6f68b4effe3569728feadc1ad8575 Mon Sep 17 00:00:00 2001 From: Miro HronĨok Date: Oct 17 2022 23:39:20 +0000 Subject: CI: Run mock as non-root user See https://github.com/rpm-software-management/mock/issues/990 This will require changes in all packages using this script. --- diff --git a/tests/tests.yml b/tests/tests.yml index 484e1ae..f06c7d4 100644 --- a/tests/tests.yml +++ b/tests/tests.yml @@ -3,9 +3,23 @@ tags: - classic tasks: - - dnf: + - ansible.builtin.dnf: name: "*" state: latest + - ansible.builtin.group: + name: mock + gid: 135 + - ansible.builtin.user: + name: testuser + groups: mock + append: yes + - ansible.builtin.file: + path: /tmp/artifacts + state: directory + recurse: yes + owner: root + group: root + mode: u=rwx,g=rwx,o=rwx - hosts: localhost roles: @@ -15,83 +29,84 @@ tests: - pytest: dir: . - run: ./mocktest.sh python-pytest + run: runuser testuser -c './mocktest.sh python-pytest' - entrypoints: dir: . - run: ./mocktest.sh python-entrypoints + run: runuser testuser -c './mocktest.sh python-entrypoints' - pluggy: dir: . - run: ./mocktest.sh python-pluggy + run: runuser testuser -c './mocktest.sh python-pluggy' - clikit: dir: . - run: ./mocktest.sh python-clikit + run: runuser testuser -c './mocktest.sh python-clikit' - distroinfo: dir: . - run: ./mocktest.sh python-distroinfo + run: runuser testuser -c './mocktest.sh python-distroinfo' - tldr: dir: . - run: ./mocktest.sh tldr + run: runuser testuser -c './mocktest.sh tldr' - openqa_client: dir: . - run: ./mocktest.sh python-openqa_client + run: runuser testuser -c './mocktest.sh python-openqa_client' - httpbin: dir: . - run: ./mocktest.sh python-httpbin + run: runuser testuser -c './mocktest.sh python-httpbin' - ldap: dir: . - run: ./mocktest.sh python-ldap + run: runuser testuser -c './mocktest.sh python-ldap' - isort: dir: . - run: ./mocktest.sh python-isort + run: runuser testuser -c './mocktest.sh python-isort' - mistune: dir: . - run: ./mocktest.sh python-mistune + run: runuser testuser -c './mocktest.sh python-mistune' - setuptools_scm: dir: . - run: ./mocktest.sh python-setuptools_scm + run: runuser testuser -c './mocktest.sh python-setuptools_scm' - ipykernel: dir: . - run: ./mocktest.sh python-ipykernel + run: runuser testuser -c './mocktest.sh python-ipykernel' - zope: dir: . - run: ./mocktest.sh python-zope-event + run: runuser testuser -c './mocktest.sh python-zope-event' - django: dir: . - run: ./mocktest.sh python-django + run: runuser testuser -c './mocktest.sh python-django' - printrun: dir: . - run: ./mocktest.sh printrun + run: runuser testuser -c './mocktest.sh printrun' - dns_lexicon: dir: . - run: ./mocktest.sh python-dns-lexicon + run: runuser testuser -c './mocktest.sh python-dns-lexicon' - flit_core: dir: . - run: ./mocktest.sh python-flit-core + run: runuser testuser -c './mocktest.sh python-flit-core' - poetry_core: dir: . - run: ./mocktest.sh python-poetry-core + run: runuser testuser -c './mocktest.sh python-poetry-core' - setuptools: dir: . - run: ./mocktest.sh python-setuptools + run: runuser testuser -c './mocktest.sh python-setuptools' - markupsafe: dir: . - run: ./mocktest.sh python-markupsafe + run: runuser testuser -c './mocktest.sh python-markupsafe' - getmac: dir: . - run: ./mocktest.sh python-getmac + run: runuser testuser -c './mocktest.sh python-getmac' - userpath: dir: . - run: ./mocktest.sh python-userpath + run: runuser testuser -c './mocktest.sh python-userpath' - double_install: dir: . - run: ./mocktest.sh double-install + run: runuser testuser -c './mocktest.sh double-install' - fake_requirements: dir: . - run: ./mocktest.sh fake-requirements + run: runuser testuser -c './mocktest.sh fake-requirements' - escape_percentages: dir: . - run: rpmbuild -ba escape_percentages.spec + run: runuser testuser -c 'rpmbuild -ba escape_percentages.spec' required_packages: + - util-linux - mock - rpmdevtools - rpm-build