Compare commits
19 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 14f714d9aa | |||
| 7d9e69481b | |||
| dbc74646cc | |||
| 152b6eff4d | |||
| 5b003e0a04 | |||
| 4d96f9289c | |||
| 918037c775 | |||
| ed4bc760da | |||
| c434ec1375 | |||
| 8609bbf197 | |||
| cf14d2ec99 | |||
| defe612480 | |||
| 39ff27ed0e | |||
| d22d551733 | |||
| 24e4a06714 | |||
| d2ce4d846b | |||
| 6cef9fcb4d | |||
| 9145fda771 | |||
| add2b64498 |
-29
@@ -53,32 +53,3 @@
|
||||
/tmt-1.37.0.tar.gz
|
||||
/tmt-1.38.0.tar.gz
|
||||
/tmt-1.39.0.tar.gz
|
||||
/tmt-1.40.0.tar.gz
|
||||
/tmt-1.41.0.tar.gz
|
||||
/tmt-1.41.1.tar.gz
|
||||
/tmt-1.42.1.tar.gz
|
||||
/tmt-1.43.0.tar.gz
|
||||
/tmt-1.44.0.tar.gz
|
||||
/tmt-1.45.0.tar.gz
|
||||
/tmt-1.46.0.tar.gz
|
||||
/tmt-1.47.0.tar.gz
|
||||
/tmt-1.48.0.tar.gz
|
||||
/tmt-1.49.0.tar.gz
|
||||
/tmt-1.50.0.tar.gz
|
||||
/tmt-1.51.0.tar.gz
|
||||
/tmt-1.52.0.tar.gz
|
||||
/tmt-1.53.0.tar.gz
|
||||
/tmt-1.54.0.tar.gz
|
||||
/tmt-1.55.0.tar.gz
|
||||
/tmt-1.56.0.tar.gz
|
||||
/tmt-1.57.0.tar.gz
|
||||
/tmt-1.58.0.tar.gz
|
||||
/tmt-1.59.0.tar.gz
|
||||
/tmt-1.60.0.tar.gz
|
||||
/tmt-1.61.0.tar.gz
|
||||
/tmt-1.62.1.tar.gz
|
||||
/tmt-1.63.0.tar.gz
|
||||
/tmt-1.64.0.tar.gz
|
||||
/tmt-1.65.0.tar.gz
|
||||
/tmt-1.66.0.tar.gz
|
||||
/tmt-1.67.0.tar.gz
|
||||
|
||||
+108
-186
@@ -1,21 +1,6 @@
|
||||
---
|
||||
|
||||
specfile_path: packaging/rpm/tmt.spec
|
||||
specfile_path: tmt.spec
|
||||
files_to_sync:
|
||||
- src: packaging/rpm/
|
||||
dest: ./
|
||||
delete: true
|
||||
filters:
|
||||
- "protect .git*"
|
||||
- "protect sources"
|
||||
- "protect changelog"
|
||||
- "protect README*"
|
||||
# TODO: remove once https://github.com/fedora-ci/jenkins-pipeline-library/pull/100 is merged
|
||||
- "protect ci.fmf"
|
||||
- src: packaging/
|
||||
dest: ./
|
||||
filters:
|
||||
- "- rpm"
|
||||
- tmt.spec
|
||||
- .packit.yaml
|
||||
|
||||
upstream_package_name: tmt
|
||||
@@ -30,220 +15,157 @@ srpm_build_deps:
|
||||
|
||||
actions: &base-actions
|
||||
create-archive:
|
||||
- hatch run docs:man
|
||||
- hatch build -t sdist
|
||||
- bash -c "echo dist/tmt-$PACKIT_PROJECT_VERSION.tar.gz"
|
||||
- bash -c "ls dist/tmt-*.tar.gz"
|
||||
get-current-version:
|
||||
- hatch version
|
||||
|
||||
targets: &all-targets
|
||||
- fedora-all
|
||||
- epel-9
|
||||
- epel-10
|
||||
|
||||
# Uncomment below line if OpenScanHub scans are failing
|
||||
# osh_diff_scan_after_copr_build: false
|
||||
|
||||
|
||||
# Common definitions
|
||||
_:
|
||||
# Copr jobs under the packit project
|
||||
- &copr-under-packit
|
||||
jobs:
|
||||
# Build pull requests
|
||||
- &copr_build
|
||||
job: copr_build
|
||||
additional_repos:
|
||||
- copr://@teemtee/stable
|
||||
trigger: pull_request
|
||||
actions:
|
||||
<<: *base-actions
|
||||
get-current-version:
|
||||
# Use `dev888` instead of the last version digit to make
|
||||
# builds older than the final release and newer than
|
||||
# copr builds from main. Remove the remaining suffix
|
||||
# generated by `hatch version` as well so that build
|
||||
# with the latest timestamp always wins.
|
||||
- bash -c "hatch version | sed -E 's/\\.[0-9]+\\.dev.*/.dev888/'"
|
||||
|
||||
# Copr jobs under the teemtee project
|
||||
- &copr-under-teemtee
|
||||
<<: *copr-under-packit
|
||||
list_on_homepage: true
|
||||
preserve_project: true
|
||||
owner: "@teemtee"
|
||||
|
||||
# Test jobs base setup
|
||||
- &test-base
|
||||
# Test core
|
||||
- &tests
|
||||
job: tests
|
||||
trigger: pull_request
|
||||
tf_extra_params:
|
||||
environments:
|
||||
- &copr-teemtee-stable
|
||||
artifacts:
|
||||
# Testing Farm fails to install the repository when a multiline
|
||||
# string is used. The script looks broken, as if one piece of
|
||||
# the process incorrectly loads it, producing broken repo file
|
||||
# URL.
|
||||
- type: repository-file
|
||||
# yamllint disable-line rule:line-length
|
||||
id: https://copr.fedorainfracloud.org/coprs/g/teemtee/stable/repo/fedora-rawhide/group_teemtee-stable-fedora-rawhide.repo
|
||||
- type: repository-file
|
||||
# yamllint disable-line rule:line-length
|
||||
id: https://copr.fedorainfracloud.org/coprs/g/teemtee/stable/repo/epel-9/group_teemtee-stable-epel-9.repo
|
||||
|
||||
# Latest fedora & epel targets
|
||||
- &latest-targets
|
||||
- fedora-latest-stable
|
||||
- epel-10
|
||||
|
||||
# Internal jobs
|
||||
- &internal
|
||||
use_internal_tf: true
|
||||
targets:
|
||||
targets: &latest-targets
|
||||
- fedora-latest-stable
|
||||
- epel-9
|
||||
identifier: core
|
||||
tf_extra_params:
|
||||
environments:
|
||||
- &tmt-cloud-resources
|
||||
<<: *copr-teemtee-stable
|
||||
settings:
|
||||
provisioning:
|
||||
tags:
|
||||
BusinessUnit: tmt
|
||||
test:
|
||||
tmt:
|
||||
name: /plans/features/(core|basic)
|
||||
|
||||
# Core test requires
|
||||
- &require-core-tests
|
||||
require:
|
||||
label:
|
||||
absent:
|
||||
- ci | skip
|
||||
|
||||
# Full test requires
|
||||
- &require-full-tests
|
||||
require:
|
||||
# Test full
|
||||
# Do not run extended unit tests, that plan gets its own job because
|
||||
# of podman vs systemd-resolved flakiness.
|
||||
- <<: *tests
|
||||
targets: *all-targets
|
||||
require: &require-full-tests
|
||||
label:
|
||||
present:
|
||||
- ci | full test
|
||||
absent:
|
||||
- status | discuss
|
||||
- ci | skip
|
||||
|
||||
# Internal provisioning jobs
|
||||
- &internal-provision
|
||||
<<: *test-base
|
||||
<<: *internal
|
||||
<<: *require-full-tests
|
||||
identifier: full
|
||||
tf_extra_params:
|
||||
test:
|
||||
tmt:
|
||||
name: '^(?!/plans/features/extended-unit-tests).*$'
|
||||
|
||||
# Extended unit tests
|
||||
- <<: *tests
|
||||
targets: [ fedora-latest-stable ]
|
||||
require: *require-full-tests
|
||||
identifier: extended-unit-tests
|
||||
tf_extra_params:
|
||||
test:
|
||||
tmt:
|
||||
name: '/plans/features/extended-unit-tests$'
|
||||
|
||||
# Test virtual provision
|
||||
- <<: *tests
|
||||
use_internal_tf: True
|
||||
targets: &internal-targets
|
||||
- fedora-latest-stable
|
||||
require: *require-full-tests
|
||||
identifier: provision
|
||||
tf_extra_params:
|
||||
test:
|
||||
tmt:
|
||||
name: /plans/provision/(bootc|virtual)
|
||||
environments:
|
||||
- tmt:
|
||||
context:
|
||||
how: provision
|
||||
<<: *tmt-cloud-resources
|
||||
# Temporarily running these on F42 because tests started to break due to avc on F43
|
||||
# TODO: Move revert this targets overwrite
|
||||
targets:
|
||||
- fedora-42
|
||||
|
||||
jobs:
|
||||
# Build released bits to stable
|
||||
- <<: *copr-under-teemtee
|
||||
trigger: release
|
||||
project: stable
|
||||
|
||||
# Build commits merged to main to latest
|
||||
- <<: *copr-under-teemtee
|
||||
trigger: commit
|
||||
branch: main
|
||||
project: latest
|
||||
release_suffix: "{PACKIT_PROJECT_BRANCH}"
|
||||
|
||||
# Build pull requests
|
||||
- <<: *copr-under-packit
|
||||
trigger: pull_request
|
||||
|
||||
# Test core
|
||||
- <<: *test-base
|
||||
<<: *require-core-tests
|
||||
targets: *latest-targets
|
||||
identifier: core
|
||||
tmt_plan: '/plans/features/core'
|
||||
|
||||
# Test full
|
||||
- <<: *test-base
|
||||
<<: *require-full-tests
|
||||
identifier: full
|
||||
# Do not run extended unit tests. That plan gets its own job
|
||||
# because of podman vs systemd-resolved flakiness.
|
||||
tmt_plan: '^(?!/plans/features/extended-unit-tests).*$'
|
||||
|
||||
# Extended unit tests
|
||||
- <<: *test-base
|
||||
<<: *require-full-tests
|
||||
targets:
|
||||
- fedora-latest-stable
|
||||
identifier: extended-unit-tests
|
||||
tmt_plan: '/plans/features/extended-unit-tests$'
|
||||
|
||||
# Test provision plugins
|
||||
- <<: *internal-provision
|
||||
identifier: provision-bootc
|
||||
tmt_plan: /plans/provision/bootc
|
||||
|
||||
- <<: *internal-provision
|
||||
identifier: provision-virtual
|
||||
tmt_plan: /plans/provision/virtual
|
||||
- &tmt-cloud-resources
|
||||
settings:
|
||||
provisioning:
|
||||
tags:
|
||||
BusinessUnit: tmt
|
||||
|
||||
# Test internal plugins
|
||||
- <<: *test-base
|
||||
<<: *internal
|
||||
<<: *require-full-tests
|
||||
- <<: *tests
|
||||
use_internal_tf: True
|
||||
targets: *internal-targets
|
||||
require: *require-full-tests
|
||||
identifier: internal-plugins
|
||||
fmf_url: "https://gitlab.cee.redhat.com/baseos-qe/tmt.git"
|
||||
# Tag cloud resources for tmt
|
||||
tf_extra_params:
|
||||
environments:
|
||||
- *tmt-cloud-resources
|
||||
|
||||
# Test internal wow
|
||||
- <<: *test-base
|
||||
<<: *internal
|
||||
<<: *require-full-tests
|
||||
- <<: *tests
|
||||
use_internal_tf: True
|
||||
targets: *internal-targets
|
||||
require: *require-full-tests
|
||||
identifier: internal-wow
|
||||
fmf_url: "https://gitlab.cee.redhat.com/baseos-qe/integration_scripts.git"
|
||||
tmt_plan: '/tmt/integration/plan'
|
||||
|
||||
# Run missing tests identified in Connect
|
||||
- <<: *test-base
|
||||
<<: *internal
|
||||
<<: *require-full-tests
|
||||
identifier: internal-fusa
|
||||
fmf_url: "https://gitlab.cee.redhat.com/automotive/tests/all.git"
|
||||
fmf_ref: "main"
|
||||
tmt_plan: '/tmt/plans/fusa/tests'
|
||||
targets:
|
||||
- epel-9
|
||||
|
||||
# OS-agnostic sanity and coding-standard checks
|
||||
- <<: *test-base
|
||||
targets:
|
||||
- fedora-latest-stable
|
||||
identifier: sanity
|
||||
tmt_plan: "/tmt/integration/plan"
|
||||
tf_extra_params:
|
||||
test:
|
||||
tmt:
|
||||
name: /plans/sanity
|
||||
skip_build: true
|
||||
environments:
|
||||
- *tmt-cloud-resources
|
||||
|
||||
# Downstream tests
|
||||
- <<: *test-base
|
||||
<<: *require-full-tests
|
||||
targets:
|
||||
- fedora-latest-stable
|
||||
identifier: downstream
|
||||
fmf_path: packaging
|
||||
# Build commits to main
|
||||
- <<: *copr_build
|
||||
trigger: commit
|
||||
branch: main
|
||||
list_on_homepage: True
|
||||
preserve_project: True
|
||||
owner: "@teemtee"
|
||||
project: tmt
|
||||
release_suffix: "{PACKIT_PROJECT_BRANCH}"
|
||||
actions:
|
||||
<<: *base-actions
|
||||
get-current-version:
|
||||
# Get rid of the the final version digit to make copr
|
||||
# builds older than the final release
|
||||
- bash -c "hatch version | sed -E 's/\\.[0-9]+\\.dev/.dev/'"
|
||||
|
||||
# Propose downstream pull requests
|
||||
# Release to copr
|
||||
- <<: *copr_build
|
||||
trigger: release
|
||||
list_on_homepage: True
|
||||
preserve_project: True
|
||||
owner: "@teemtee"
|
||||
project: tmt
|
||||
actions: *base-actions
|
||||
|
||||
# Fedora releases
|
||||
- job: propose_downstream
|
||||
trigger: release
|
||||
dist_git_branches:
|
||||
rawhide:
|
||||
fast_forward_merge_into:
|
||||
- fedora-branched
|
||||
- epel-10
|
||||
- epel-9
|
||||
|
||||
# Create koji builds
|
||||
- job: koji_build
|
||||
trigger: commit
|
||||
allowed_pr_authors: ["packit", "all_committers"]
|
||||
dist_git_branches: *all-targets
|
||||
|
||||
# Create bodhi updates
|
||||
- job: koji_build
|
||||
trigger: commit
|
||||
allowed_pr_authors: [ "packit", "psss", "lzachar" ]
|
||||
allowed_committers: [ "packit", "psss", "lzachar" ]
|
||||
dist_git_branches: *all-targets
|
||||
|
||||
- job: bodhi_update
|
||||
trigger: commit
|
||||
dist_git_branches:
|
||||
- fedora-branched
|
||||
- epel-9
|
||||
- epel-10
|
||||
|
||||
+1
-1
@@ -1,3 +1,3 @@
|
||||
This repository is maintained by packit.
|
||||
https://packit.dev/
|
||||
The file was generated using packit 1.14.0.post1.dev10+g291d7454f.
|
||||
The file was generated using packit 0.104.0.
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
--- tmt-1.24.1/tmt/steps/prepare/install.py.old 2023-06-22 11:57:06.633409186 +0200
|
||||
+++ tmt-1.24.1/tmt/steps/prepare/install.py 2023-06-22 11:57:45.239501579 +0200
|
||||
@@ -273,6 +273,7 @@ class InstallDnf(InstallBase):
|
||||
|
||||
package_manager = "dnf"
|
||||
copr_plugin = "dnf-plugins-core"
|
||||
+ skip_missing_option = "--skip-broken"
|
||||
|
||||
def prepare_command(self) -> Tuple[Command, Command]:
|
||||
""" Prepare installation command """
|
||||
@@ -290,7 +291,7 @@ class InstallDnf(InstallBase):
|
||||
command += Command(self.package_manager)
|
||||
|
||||
if self.skip_missing:
|
||||
- command += Command('--skip-broken')
|
||||
+ options += Command(self.skip_missing_option)
|
||||
|
||||
return (command, options)
|
||||
|
||||
@@ -356,6 +357,14 @@ class InstallDnf(InstallBase):
|
||||
self.guest.execute(command)
|
||||
|
||||
|
||||
+class InstallDnf5(InstallDnf):
|
||||
+ """ Install packages using dnf5 """
|
||||
+
|
||||
+ package_manager = "dnf5"
|
||||
+ copr_plugin = "dnf5-plugins"
|
||||
+ skip_missing_option = "--skip-unavailable"
|
||||
+
|
||||
+
|
||||
class InstallYum(InstallDnf):
|
||||
""" Install packages using yum """
|
||||
|
||||
@@ -592,6 +601,9 @@ class PrepareInstall(tmt.steps.prepare.P
|
||||
elif guest.facts.package_manager == GuestPackageManager.DNF:
|
||||
installer = InstallDnf(logger=logger, parent=self, guest=guest)
|
||||
|
||||
+ elif guest.facts.package_manager == GuestPackageManager.DNF5:
|
||||
+ installer = InstallDnf5(logger=logger, parent=self, guest=guest)
|
||||
+
|
||||
elif guest.facts.package_manager == GuestPackageManager.YUM:
|
||||
installer = InstallYum(logger=logger, parent=self, guest=guest)
|
||||
|
||||
--- tmt-1.24.1/tmt/steps/provision/__init__.py.old 2023-06-22 11:56:50.556370700 +0200
|
||||
+++ tmt-1.24.1/tmt/steps/provision/__init__.py 2023-06-22 11:58:00.472538032 +0200
|
||||
@@ -64,6 +64,7 @@ class CheckRsyncOutcome(enum.Enum):
|
||||
|
||||
class GuestPackageManager(enum.Enum):
|
||||
DNF = 'dnf'
|
||||
+ DNF5 = 'dnf5'
|
||||
YUM = 'yum'
|
||||
RPM_OSTREE = 'rpm-ostree'
|
||||
|
||||
@@ -274,8 +275,9 @@ class GuestFacts(tmt.utils.SerializableC
|
||||
guest,
|
||||
[
|
||||
(Command('stat', '/run/ostree-booted'), GuestPackageManager.RPM_OSTREE),
|
||||
- (Command('rpm', '-q', 'dnf'), GuestPackageManager.DNF),
|
||||
- (Command('rpm', '-q', 'yum'), GuestPackageManager.YUM),
|
||||
+ (Command('dnf5', '--version'), GuestPackageManager.DNF5),
|
||||
+ (Command('dnf', '--version'), GuestPackageManager.DNF),
|
||||
+ (Command('yum', '--version'), GuestPackageManager.YUM),
|
||||
# And, one day, we'd follow up on this with...
|
||||
# (Command('dpkg', '-l', 'apt'), 'apt')
|
||||
])
|
||||
@@ -3,10 +3,7 @@ discover:
|
||||
tests:
|
||||
- name: /install/minimal
|
||||
test: cd $(mktemp -d) && tmt init -t full && tmt
|
||||
require:
|
||||
- tmt
|
||||
prepare:
|
||||
# TODO: Remove when artifact installation is live
|
||||
summary: Ensure that only 'tmt' is installed
|
||||
name: minimal
|
||||
order: 90
|
||||
|
||||
+8
-11
@@ -2,22 +2,19 @@ summary: Run a basic set of upstream tests
|
||||
|
||||
discover:
|
||||
how: fmf
|
||||
# Using a hack for when running in upstream where it is able to
|
||||
# discover tests from outside the current fmf tree.
|
||||
# https://github.com/teemtee/tmt/issues/2568
|
||||
path: .
|
||||
url: https://github.com/teemtee/tmt
|
||||
ref: fedora
|
||||
filter: "tier:1"
|
||||
|
||||
prepare:
|
||||
prepare+:
|
||||
- how: install
|
||||
package:
|
||||
- jq
|
||||
- yq
|
||||
- python3-pip
|
||||
- how: shell
|
||||
script:
|
||||
- pip3 install --user yq || pip3 install yq
|
||||
- yq --help
|
||||
|
||||
execute:
|
||||
how: tmt
|
||||
|
||||
adjust+:
|
||||
when: initiator == fedora-ci
|
||||
discover+:
|
||||
dist-git-source: true
|
||||
|
||||
@@ -1 +1 @@
|
||||
SHA512 (tmt-1.67.0.tar.gz) = c5948359d00c0bb043dbfc84eb4f75fad2a96834ee0e55808c929cd20b3ae2a39f0a2f2bab70295b88dc978c25dd79cbe2c7706cd612f353dcae8ffb2565c77b
|
||||
SHA512 (tmt-1.39.0.tar.gz) = 859707d9bb9378abd1fa266f215e204995c4d811f7ddff5dcc6e12a0ec0c511e01f91deac3a6284abb10aa12a8ef5a65c344265bb6169ec5ca929d9216fccbb8
|
||||
|
||||
Reference in New Issue
Block a user