From 11d6cbbac3e954727fff4fb8a28ac39d78ef2d1a Mon Sep 17 00:00:00 2001 From: Nikola Davidova Date: Thu, 17 Jul 2025 10:22:56 +0200 Subject: [PATCH 1/8] Correct event name in Github workflow --- .github/workflows/testing-farm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/testing-farm.yaml b/.github/workflows/testing-farm.yaml index c0d98d3..e45c1cd 100644 --- a/.github/workflows/testing-farm.yaml +++ b/.github/workflows/testing-farm.yaml @@ -3,7 +3,7 @@ name: Run tests on Testing Farm on: push: branches: [ master ] - pull_request_trigger: + pull_request_target: types: [opened, synchronize, reopened] jobs: From 5c72842d63efdd59f8bbcdf61500e92e488e486d Mon Sep 17 00:00:00 2001 From: Nikola Davidova Date: Thu, 17 Jul 2025 10:33:33 +0200 Subject: [PATCH 2/8] Add dummy file to test fork --- readme.dummy | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 readme.dummy diff --git a/readme.dummy b/readme.dummy new file mode 100644 index 0000000..e69de29 From 1cd72fa457ccf2bad5a7f9f1e895aa8cc0861436 Mon Sep 17 00:00:00 2001 From: Nikola Davidova Date: Tue, 2 Sep 2025 09:14:52 +0200 Subject: [PATCH 3/8] Add with ref to checkout action --- .github/workflows/testing-farm.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/testing-farm.yaml b/.github/workflows/testing-farm.yaml index e45c1cd..b41a074 100644 --- a/.github/workflows/testing-farm.yaml +++ b/.github/workflows/testing-farm.yaml @@ -18,6 +18,8 @@ jobs: steps: - name: Checkout repository uses: actions/checkout@v4 + with: + ref: "refs/pull/${{ github.event.issue.number }}/head" - name: Test init on Fedora VM uses: sclorg/testing-farm-as-github-action@v4 @@ -40,6 +42,8 @@ jobs: steps: - name: Checkout repository uses: actions/checkout@v4 + with: + ref: "refs/pull/${{ github.event.issue.number }}/head" - name: Test upgrade on Fedora VM uses: sclorg/testing-farm-as-github-action@v4 @@ -51,4 +55,3 @@ jobs: pull_request_status_name: "Fedora upgrade test" update_pull_request_status: "true" create_github_summary: "true" - From e5809cb8a30b1b80a34fea2794f7054416823ed6 Mon Sep 17 00:00:00 2001 From: ndavidova Date: Tue, 2 Sep 2025 09:26:23 +0200 Subject: [PATCH 4/8] Container tests (#5) --- .github/workflows/testing-farm.yaml | 52 ++++++++++++- tmt/plans/container-fedora-init.fmf | 12 +++ tmt/plans/container-fedora-upgrade.fmf | 12 +++ tmt/plans/fedora-init.fmf | 2 +- tmt/tests/container/sanity/init/init.sh | 10 ++- tmt/tests/container/sanity/init/main.fmf | 6 +- tmt/tests/container/sanity/upgrade/main.fmf | 19 +++++ tmt/tests/container/sanity/upgrade/upgrade.sh | 73 +++++++++++++++++++ 8 files changed, 177 insertions(+), 9 deletions(-) create mode 100644 tmt/plans/container-fedora-init.fmf create mode 100644 tmt/plans/container-fedora-upgrade.fmf create mode 100644 tmt/tests/container/sanity/upgrade/main.fmf create mode 100755 tmt/tests/container/sanity/upgrade/upgrade.sh diff --git a/.github/workflows/testing-farm.yaml b/.github/workflows/testing-farm.yaml index b41a074..701f34c 100644 --- a/.github/workflows/testing-farm.yaml +++ b/.github/workflows/testing-farm.yaml @@ -2,7 +2,7 @@ name: Run tests on Testing Farm on: push: - branches: [ master ] + branches: [ master, container-tests ] pull_request_target: types: [opened, synchronize, reopened] @@ -22,7 +22,7 @@ jobs: ref: "refs/pull/${{ github.event.issue.number }}/head" - name: Test init on Fedora VM - uses: sclorg/testing-farm-as-github-action@v4 + uses: sclorg/testing-farm-as-github-action@main with: api_key: ${{ secrets.TESTING_FARM_API_TOKEN }} compose: Fedora-Rawhide @@ -46,7 +46,7 @@ jobs: ref: "refs/pull/${{ github.event.issue.number }}/head" - name: Test upgrade on Fedora VM - uses: sclorg/testing-farm-as-github-action@v4 + uses: sclorg/testing-farm-as-github-action@main with: api_key: ${{ secrets.TESTING_FARM_API_TOKEN }} compose: Fedora-Rawhide @@ -55,3 +55,49 @@ jobs: pull_request_status_name: "Fedora upgrade test" update_pull_request_status: "true" create_github_summary: "true" + container-test-init: + runs-on: ubuntu-latest + + permissions: + contents: read + pull-requests: write + statuses: write + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Test init on Fedora container + uses: sclorg/testing-farm-as-github-action@main + with: + api_key: ${{ secrets.TESTING_FARM_API_TOKEN }} + compose: null + tmt_path: "tmt" + tmt_plan_regex: "container-fedora-init" + pull_request_status_name: "Fedora container init test" + update_pull_request_status: "true" + create_github_summary: "true" + container-test-upgrade: + runs-on: ubuntu-latest + + permissions: + contents: read + pull-requests: write + statuses: write + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Test upgrade on Fedora container + uses: sclorg/testing-farm-as-github-action@main + with: + api_key: ${{ secrets.TESTING_FARM_API_TOKEN }} + compose: null + tmt_path: "tmt" + tmt_plan_regex: "container-fedora-upgrade" + pull_request_status_name: "Fedora container upgrade test" + update_pull_request_status: "true" + create_github_summary: "true" + + diff --git a/tmt/plans/container-fedora-init.fmf b/tmt/plans/container-fedora-init.fmf new file mode 100644 index 0000000..1b6ac65 --- /dev/null +++ b/tmt/plans/container-fedora-init.fmf @@ -0,0 +1,12 @@ +name: /plans/fedora-init-container +summary: Run init test in a fedora container environment +provision: + how: container + image: fedora:latest +discover: + how: fmf + filter: tag:container-init-fedora +execute: + how: tmt + + diff --git a/tmt/plans/container-fedora-upgrade.fmf b/tmt/plans/container-fedora-upgrade.fmf new file mode 100644 index 0000000..e4553e6 --- /dev/null +++ b/tmt/plans/container-fedora-upgrade.fmf @@ -0,0 +1,12 @@ +name: /plans/fedora-upgrade-container +summary: Run upgrade test in a fedora container environment +provision: + how: container + image: fedora +discover: + how: fmf + filter: tag:fedora-upgrade-container +execute: + how: tmt + + diff --git a/tmt/plans/fedora-init.fmf b/tmt/plans/fedora-init.fmf index e387013..e2d2225 100644 --- a/tmt/plans/fedora-init.fmf +++ b/tmt/plans/fedora-init.fmf @@ -1,4 +1,4 @@ -name: /plans/fedora +name: /plans/fedora-init summary: Run tests in a fedora virtual machine environment discover: how: fmf diff --git a/tmt/tests/container/sanity/init/init.sh b/tmt/tests/container/sanity/init/init.sh index afef6b9..86ac766 100755 --- a/tmt/tests/container/sanity/init/init.sh +++ b/tmt/tests/container/sanity/init/init.sh @@ -5,6 +5,9 @@ cd repo git fetch origin "$TESTING_FARM_GIT_REF" git checkout FETCH_HEAD +grep -q systemd /proc/1/comm +echo "Return value CONTAINER: $?" + # setup autoreconf -vfi ./configure --prefix=/usr @@ -13,10 +16,11 @@ make # initialization ./bin/postgresql-setup --init -# start postgresql +# start postgresql and check if it's running PGDATA=/var/lib/pgsql/data LOGFILE=/var/lib/pgsql/logfile +su - postgres -c " /usr/bin/pg_ctl -D $PGDATA -l $LOGFILE start +pg_ctl -D $PGDATA status && echo \"PostgreSQL is running\" || { echo \"PostgreSQL is NOT running\"; exit 1; } +" -# check if it is running -pg_ctl -D $PGDATA status && echo "PostgreSQL is running" || { echo "PostgreSQL is NOT running"; exit 1; } diff --git a/tmt/tests/container/sanity/init/main.fmf b/tmt/tests/container/sanity/init/main.fmf index 4f63a78..df0390a 100644 --- a/tmt/tests/container/sanity/init/main.fmf +++ b/tmt/tests/container/sanity/init/main.fmf @@ -1,4 +1,4 @@ -summary: Check whether the machine is a container +summary: Postgresql-setup init test in a fedora rawhide container require: - make - m4 @@ -11,7 +11,9 @@ require: - automake - autoconf-archive - git +test: ./init.sh framework: shell +duration: 10m +tag: container-init-fedora contact: ndavidov@redhat.com -test: ./init.sh diff --git a/tmt/tests/container/sanity/upgrade/main.fmf b/tmt/tests/container/sanity/upgrade/main.fmf new file mode 100644 index 0000000..34c1d4c --- /dev/null +++ b/tmt/tests/container/sanity/upgrade/main.fmf @@ -0,0 +1,19 @@ +summary: Postgresql-setup upgrade test in a fedora rawhide container +require: + - make + - m4 + - docbook-utils + - help2man + - elinks + - postgresql-server + - coreutils + - autoconf + - automake + - autoconf-archive + - git +test: ./upgrade.sh +framework: shell +duration: 10m +tag: fedora-upgrade-container +contact: ndavidov@redhat.com + diff --git a/tmt/tests/container/sanity/upgrade/upgrade.sh b/tmt/tests/container/sanity/upgrade/upgrade.sh new file mode 100755 index 0000000..29c1e9d --- /dev/null +++ b/tmt/tests/container/sanity/upgrade/upgrade.sh @@ -0,0 +1,73 @@ +#!/bin/bash +# prep +git clone "$TESTING_FARM_GIT_URL" repo +cd repo +git fetch origin "$TESTING_FARM_GIT_REF" +git checkout FETCH_HEAD + +echo "Fedora release:" +cat /etc/fedora-release + +# install postgresql16 +dnf -y install postgresql16-server + +# setup +autoreconf -vfi +./configure --prefix=/usr +make + +# initialization +./bin/postgresql-setup --init + +# start postgresql and check if it's running +PGDATA=/var/lib/pgsql/data +LOGFILE=/var/lib/pgsql/logfile +su - postgres -c " +/usr/bin/pg_ctl -D $PGDATA -l $LOGFILE start +pg_ctl -D $PGDATA status && echo \"PostgreSQL is running\" || { echo \"PostgreSQL is NOT running\"; exit 1; } +" + +# insert data +su - postgres -c " +echo \"User switched\"; + +createdb testdb; +psql -U postgres -d testdb -c \"create table users (id serial primary key, name text)\"; +psql -U postgres -d testdb -c \"insert into users (name) values ('Alice'), ('Bob'), ('Celine')\" +" +su - postgres -c ' +psql -U postgres -d testdb -c "select * from users" +' > expected.txt + +echo "Expected:" +cat expected.txt + +# uninstall postgresql +dnf -y remove postgresql-server postgresql-private-libs postgresql libicu + +# install postgresql17 +dnf -y install postgresql17-upgrade + +# run --upgrade +./bin/postgresql-setup --upgrade + +# start postgresql and check if it's running +su - postgres -c " +/usr/bin/pg_ctl -D $PGDATA -l $LOGFILE start +pg_ctl -D $PGDATA status && echo \"PostgreSQL is running\" || { echo \"PostgreSQL is NOT running\"; exit 1; } +" + +su - postgres -c ' +psql -U postgres -d testdb -c "select * from users" +' > actual.txt + +echo "Actual:" +cat actual.txt + +diff -q expected.txt actual.txt && echo "Actual and expected outputs match" || { echo "Actual and expected outputs differ"; exit 1; } + + + + + + From dda5f7889b6ccb3804f92eced0a75778d87eb976 Mon Sep 17 00:00:00 2001 From: Nikola Davidova Date: Tue, 2 Sep 2025 09:53:12 +0200 Subject: [PATCH 5/8] Use ref according to github docs --- .github/workflows/testing-farm.yaml | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/.github/workflows/testing-farm.yaml b/.github/workflows/testing-farm.yaml index 701f34c..a184cdc 100644 --- a/.github/workflows/testing-farm.yaml +++ b/.github/workflows/testing-farm.yaml @@ -19,8 +19,7 @@ jobs: - name: Checkout repository uses: actions/checkout@v4 with: - ref: "refs/pull/${{ github.event.issue.number }}/head" - + ref: ${{ github.event.pull_request.head.sha }} - name: Test init on Fedora VM uses: sclorg/testing-farm-as-github-action@main with: @@ -31,6 +30,7 @@ jobs: pull_request_status_name: "Fedora init test" update_pull_request_status: "true" create_github_summary: "true" + variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};REPO_NAME=${{ github.repository }};PR_NUMBER=${{ github.event.issue.number }};" test-upgrade: runs-on: ubuntu-latest @@ -43,7 +43,7 @@ jobs: - name: Checkout repository uses: actions/checkout@v4 with: - ref: "refs/pull/${{ github.event.issue.number }}/head" + ref: ${{ github.event.pull_request.head.sha }} - name: Test upgrade on Fedora VM uses: sclorg/testing-farm-as-github-action@main @@ -55,6 +55,7 @@ jobs: pull_request_status_name: "Fedora upgrade test" update_pull_request_status: "true" create_github_summary: "true" + variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};REPO_NAME=${{ github.repository }};PR_NUMBER=${{ github.event.issue.number }};" container-test-init: runs-on: ubuntu-latest @@ -66,6 +67,8 @@ jobs: steps: - name: Checkout repository uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha }} - name: Test init on Fedora container uses: sclorg/testing-farm-as-github-action@main @@ -77,6 +80,7 @@ jobs: pull_request_status_name: "Fedora container init test" update_pull_request_status: "true" create_github_summary: "true" + variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};REPO_NAME=${{ github.repository }};PR_NUMBER=${{ github.event.issue.number }};" container-test-upgrade: runs-on: ubuntu-latest @@ -88,7 +92,9 @@ jobs: steps: - name: Checkout repository uses: actions/checkout@v4 - + with: + ref: ${{ github.event.pull_request.head.sha }} + - name: Test upgrade on Fedora container uses: sclorg/testing-farm-as-github-action@main with: @@ -99,5 +105,6 @@ jobs: pull_request_status_name: "Fedora container upgrade test" update_pull_request_status: "true" create_github_summary: "true" + variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};REPO_NAME=${{ github.repository }};PR_NUMBER=${{ github.event.pull_request.head.sha }};" From a8ed26a860c9955d964ac5e64ebf80a18c8fe137 Mon Sep 17 00:00:00 2001 From: Nikola Davidova Date: Tue, 2 Sep 2025 12:15:16 +0200 Subject: [PATCH 6/8] Use environment variables in tests --- .github/workflows/testing-farm.yaml | 12 +++++++----- tmt/tests/container/sanity/init/init.sh | 4 ++-- tmt/tests/container/sanity/upgrade/upgrade.sh | 4 ++-- tmt/tests/virtual/sanity/init/init.sh | 5 +++-- tmt/tests/virtual/sanity/upgrade/upgrade.sh | 4 ++-- 5 files changed, 16 insertions(+), 13 deletions(-) diff --git a/.github/workflows/testing-farm.yaml b/.github/workflows/testing-farm.yaml index a184cdc..172455f 100644 --- a/.github/workflows/testing-farm.yaml +++ b/.github/workflows/testing-farm.yaml @@ -28,9 +28,10 @@ jobs: tmt_path: "tmt" tmt_plan_regex: "fedora-init" pull_request_status_name: "Fedora init test" - update_pull_request_status: "true" create_github_summary: "true" - variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};REPO_NAME=${{ github.repository }};PR_NUMBER=${{ github.event.issue.number }};" + update_pull_request_status: "true" + variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};PR_HEAD=${{ github.event.pull_request.head.sha }};" + test-upgrade: runs-on: ubuntu-latest @@ -55,7 +56,7 @@ jobs: pull_request_status_name: "Fedora upgrade test" update_pull_request_status: "true" create_github_summary: "true" - variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};REPO_NAME=${{ github.repository }};PR_NUMBER=${{ github.event.issue.number }};" + variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};PR_HEAD=${{ github.event.pull_request.head.sha }};" container-test-init: runs-on: ubuntu-latest @@ -80,7 +81,8 @@ jobs: pull_request_status_name: "Fedora container init test" update_pull_request_status: "true" create_github_summary: "true" - variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};REPO_NAME=${{ github.repository }};PR_NUMBER=${{ github.event.issue.number }};" + variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};PR_HEAD=${{ github.event.pull_request.head.sha }};" + container-test-upgrade: runs-on: ubuntu-latest @@ -105,6 +107,6 @@ jobs: pull_request_status_name: "Fedora container upgrade test" update_pull_request_status: "true" create_github_summary: "true" - variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};REPO_NAME=${{ github.repository }};PR_NUMBER=${{ github.event.pull_request.head.sha }};" + variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};PR_HEAD=${{ github.event.pull_request.head.sha }};" diff --git a/tmt/tests/container/sanity/init/init.sh b/tmt/tests/container/sanity/init/init.sh index 86ac766..6bd4bac 100755 --- a/tmt/tests/container/sanity/init/init.sh +++ b/tmt/tests/container/sanity/init/init.sh @@ -1,8 +1,8 @@ #!/bin/bash # prep -git clone "$TESTING_FARM_GIT_URL" repo +git clone "$REPO_URL" repo cd repo -git fetch origin "$TESTING_FARM_GIT_REF" +git fetch origin "$PR_HEAD" git checkout FETCH_HEAD grep -q systemd /proc/1/comm diff --git a/tmt/tests/container/sanity/upgrade/upgrade.sh b/tmt/tests/container/sanity/upgrade/upgrade.sh index 29c1e9d..c8d0b76 100755 --- a/tmt/tests/container/sanity/upgrade/upgrade.sh +++ b/tmt/tests/container/sanity/upgrade/upgrade.sh @@ -1,8 +1,8 @@ #!/bin/bash # prep -git clone "$TESTING_FARM_GIT_URL" repo +git clone "$REPO_URL" repo cd repo -git fetch origin "$TESTING_FARM_GIT_REF" +git fetch origin "$PR_HEAD" git checkout FETCH_HEAD echo "Fedora release:" diff --git a/tmt/tests/virtual/sanity/init/init.sh b/tmt/tests/virtual/sanity/init/init.sh index 9cb1502..d629ce4 100755 --- a/tmt/tests/virtual/sanity/init/init.sh +++ b/tmt/tests/virtual/sanity/init/init.sh @@ -1,9 +1,10 @@ #!/bin/bash # prep -git clone "$TESTING_FARM_GIT_URL" repo +git clone "$REPO_URL" repo cd repo -git fetch origin "$TESTING_FARM_GIT_REF" +git fetch origin "$PR_HEAD" git checkout FETCH_HEAD +git log -1 --oneline # setup autoreconf -vfi diff --git a/tmt/tests/virtual/sanity/upgrade/upgrade.sh b/tmt/tests/virtual/sanity/upgrade/upgrade.sh index 9d3277b..0f93597 100755 --- a/tmt/tests/virtual/sanity/upgrade/upgrade.sh +++ b/tmt/tests/virtual/sanity/upgrade/upgrade.sh @@ -1,8 +1,8 @@ #!/bin/bash # prep -git clone "$TESTING_FARM_GIT_URL" repo +git clone "$REPO_URL" repo cd repo -git fetch origin "$TESTING_FARM_GIT_REF" +git fetch origin "$PR_HEAD" git checkout FETCH_HEAD echo "Fedora release:" cat /etc/fedora-release From 8cd61d6f025a6ab0a2ba54e210e87dcd9da7701b Mon Sep 17 00:00:00 2001 From: Nikola Davidova Date: Tue, 2 Sep 2025 12:54:18 +0200 Subject: [PATCH 7/8] Remove container tests from pipeline Delete container files --- .github/workflows/testing-farm.yaml | 55 +------------- readme.dummy | 0 tmt/plans/container-fedora-init.fmf | 12 --- tmt/plans/container-fedora-upgrade.fmf | 12 --- tmt/tests/container/sanity/upgrade/main.fmf | 19 ----- tmt/tests/container/sanity/upgrade/upgrade.sh | 73 ------------------- 6 files changed, 1 insertion(+), 170 deletions(-) delete mode 100644 readme.dummy delete mode 100644 tmt/plans/container-fedora-init.fmf delete mode 100644 tmt/plans/container-fedora-upgrade.fmf delete mode 100644 tmt/tests/container/sanity/upgrade/main.fmf delete mode 100755 tmt/tests/container/sanity/upgrade/upgrade.sh diff --git a/.github/workflows/testing-farm.yaml b/.github/workflows/testing-farm.yaml index 172455f..5a8b71c 100644 --- a/.github/workflows/testing-farm.yaml +++ b/.github/workflows/testing-farm.yaml @@ -2,7 +2,7 @@ name: Run tests on Testing Farm on: push: - branches: [ master, container-tests ] + branches: [ master ] pull_request_target: types: [opened, synchronize, reopened] @@ -57,56 +57,3 @@ jobs: update_pull_request_status: "true" create_github_summary: "true" variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};PR_HEAD=${{ github.event.pull_request.head.sha }};" - container-test-init: - runs-on: ubuntu-latest - - permissions: - contents: read - pull-requests: write - statuses: write - - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - ref: ${{ github.event.pull_request.head.sha }} - - - name: Test init on Fedora container - uses: sclorg/testing-farm-as-github-action@main - with: - api_key: ${{ secrets.TESTING_FARM_API_TOKEN }} - compose: null - tmt_path: "tmt" - tmt_plan_regex: "container-fedora-init" - pull_request_status_name: "Fedora container init test" - update_pull_request_status: "true" - create_github_summary: "true" - variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};PR_HEAD=${{ github.event.pull_request.head.sha }};" - - container-test-upgrade: - runs-on: ubuntu-latest - - permissions: - contents: read - pull-requests: write - statuses: write - - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - ref: ${{ github.event.pull_request.head.sha }} - - - name: Test upgrade on Fedora container - uses: sclorg/testing-farm-as-github-action@main - with: - api_key: ${{ secrets.TESTING_FARM_API_TOKEN }} - compose: null - tmt_path: "tmt" - tmt_plan_regex: "container-fedora-upgrade" - pull_request_status_name: "Fedora container upgrade test" - update_pull_request_status: "true" - create_github_summary: "true" - variables: "REPO_URL=${{ github.server_url }}/${{ github.repository }};PR_HEAD=${{ github.event.pull_request.head.sha }};" - - diff --git a/readme.dummy b/readme.dummy deleted file mode 100644 index e69de29..0000000 diff --git a/tmt/plans/container-fedora-init.fmf b/tmt/plans/container-fedora-init.fmf deleted file mode 100644 index 1b6ac65..0000000 --- a/tmt/plans/container-fedora-init.fmf +++ /dev/null @@ -1,12 +0,0 @@ -name: /plans/fedora-init-container -summary: Run init test in a fedora container environment -provision: - how: container - image: fedora:latest -discover: - how: fmf - filter: tag:container-init-fedora -execute: - how: tmt - - diff --git a/tmt/plans/container-fedora-upgrade.fmf b/tmt/plans/container-fedora-upgrade.fmf deleted file mode 100644 index e4553e6..0000000 --- a/tmt/plans/container-fedora-upgrade.fmf +++ /dev/null @@ -1,12 +0,0 @@ -name: /plans/fedora-upgrade-container -summary: Run upgrade test in a fedora container environment -provision: - how: container - image: fedora -discover: - how: fmf - filter: tag:fedora-upgrade-container -execute: - how: tmt - - diff --git a/tmt/tests/container/sanity/upgrade/main.fmf b/tmt/tests/container/sanity/upgrade/main.fmf deleted file mode 100644 index 34c1d4c..0000000 --- a/tmt/tests/container/sanity/upgrade/main.fmf +++ /dev/null @@ -1,19 +0,0 @@ -summary: Postgresql-setup upgrade test in a fedora rawhide container -require: - - make - - m4 - - docbook-utils - - help2man - - elinks - - postgresql-server - - coreutils - - autoconf - - automake - - autoconf-archive - - git -test: ./upgrade.sh -framework: shell -duration: 10m -tag: fedora-upgrade-container -contact: ndavidov@redhat.com - diff --git a/tmt/tests/container/sanity/upgrade/upgrade.sh b/tmt/tests/container/sanity/upgrade/upgrade.sh deleted file mode 100755 index c8d0b76..0000000 --- a/tmt/tests/container/sanity/upgrade/upgrade.sh +++ /dev/null @@ -1,73 +0,0 @@ -#!/bin/bash -# prep -git clone "$REPO_URL" repo -cd repo -git fetch origin "$PR_HEAD" -git checkout FETCH_HEAD - -echo "Fedora release:" -cat /etc/fedora-release - -# install postgresql16 -dnf -y install postgresql16-server - -# setup -autoreconf -vfi -./configure --prefix=/usr -make - -# initialization -./bin/postgresql-setup --init - -# start postgresql and check if it's running -PGDATA=/var/lib/pgsql/data -LOGFILE=/var/lib/pgsql/logfile -su - postgres -c " -/usr/bin/pg_ctl -D $PGDATA -l $LOGFILE start -pg_ctl -D $PGDATA status && echo \"PostgreSQL is running\" || { echo \"PostgreSQL is NOT running\"; exit 1; } -" - -# insert data -su - postgres -c " -echo \"User switched\"; - -createdb testdb; -psql -U postgres -d testdb -c \"create table users (id serial primary key, name text)\"; -psql -U postgres -d testdb -c \"insert into users (name) values ('Alice'), ('Bob'), ('Celine')\" -" -su - postgres -c ' -psql -U postgres -d testdb -c "select * from users" -' > expected.txt - -echo "Expected:" -cat expected.txt - -# uninstall postgresql -dnf -y remove postgresql-server postgresql-private-libs postgresql libicu - -# install postgresql17 -dnf -y install postgresql17-upgrade - -# run --upgrade -./bin/postgresql-setup --upgrade - -# start postgresql and check if it's running -su - postgres -c " -/usr/bin/pg_ctl -D $PGDATA -l $LOGFILE start -pg_ctl -D $PGDATA status && echo \"PostgreSQL is running\" || { echo \"PostgreSQL is NOT running\"; exit 1; } -" - -su - postgres -c ' -psql -U postgres -d testdb -c "select * from users" -' > actual.txt - -echo "Actual:" -cat actual.txt - -diff -q expected.txt actual.txt && echo "Actual and expected outputs match" || { echo "Actual and expected outputs differ"; exit 1; } - - - - - - From b405394b3e090f3cba97601ef3213af8de52314a Mon Sep 17 00:00:00 2001 From: Nikola Davidova Date: Wed, 3 Sep 2025 10:22:09 +0200 Subject: [PATCH 8/8] Add permission checking before checkout --- .github/workflows/testing-farm.yaml | 31 +++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/.github/workflows/testing-farm.yaml b/.github/workflows/testing-farm.yaml index 5a8b71c..49c6857 100644 --- a/.github/workflows/testing-farm.yaml +++ b/.github/workflows/testing-farm.yaml @@ -16,6 +16,21 @@ jobs: statuses: write steps: + - name: Get User Permission + id: checkAccess + uses: actions-cool/check-user-permission@v2 + with: + require: write + username: ${{ github.triggering_actor }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Check User Permission + if: steps.checkAccess.outputs.require-result == 'false' + run: | + echo "${{ github.triggering_actor }} does not have permissions on this repo." + echo "Current permission level is ${{ steps.checkAccess.outputs.user-permission }}" + echo "Job originally triggered by ${{ github.actor }}" + exit 1 - name: Checkout repository uses: actions/checkout@v4 with: @@ -41,6 +56,22 @@ jobs: statuses: write steps: + - name: Get User Permission + id: checkAccess + uses: actions-cool/check-user-permission@v2 + with: + require: write + username: ${{ github.triggering_actor }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Check User Permission + if: steps.checkAccess.outputs.require-result == 'false' + run: | + echo "${{ github.triggering_actor }} does not have permissions on this repo." + echo "Current permission level is ${{ steps.checkAccess.outputs.user-permission }}" + echo "Job originally triggered by ${{ github.actor }}" + exit 1 + - name: Checkout repository uses: actions/checkout@v4 with: