3 Commits

Author SHA1 Message Date
Petr Šplíchal f638a0776c Fix changelog entry date 2019-09-30 17:06:35 +02:00
Petr Šplíchal a5a6b5d25a Add links to GitHub repo and documentation 2019-09-30 17:00:08 +02:00
Petr Šplíchal 04f8967da5 Initial packaging 2019-09-30 16:49:08 +02:00
6 changed files with 78 additions and 338 deletions
+1 -1
View File
@@ -1 +1 @@
/tmt-1.55.0.tar.gz
/tmt-0.1.tar.gz
-191
View File
@@ -1,191 +0,0 @@
---
specfile_path: tmt.spec
files_to_sync:
- tmt.spec
- .packit.yaml
upstream_package_name: tmt
downstream_package_name: tmt
upstream_project_url: https://github.com/teemtee/tmt
issue_repository: https://github.com/teemtee/tmt
srpm_build_deps:
- hatch
- python3-hatch-vcs
actions: &base-actions
create-archive:
- hatch run docs:man
- hatch build -t sdist
- bash -c "echo dist/tmt-$PACKIT_PROJECT_VERSION.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
job: copr_build
additional_repos:
- copr://@teemtee/stable
# 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
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:
- fedora-latest-stable
tf_extra_params:
environments:
- &tmt-cloud-resources
<<: *copr-teemtee-stable
settings:
provisioning:
tags:
BusinessUnit: tmt
# Core test requires
- &require-core-tests
require:
label:
absent:
- ci | skip
# Full test requires
- &require-full-tests
require:
label:
present:
- ci | full test
absent:
- status | discuss
- ci | skip
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|basic)'
# 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 virtual & bootc provision plugins
- <<: *test-base
<<: *internal
<<: *require-full-tests
identifier: provision
tmt_plan: '/plans/provision/(bootc|virtual)'
tf_extra_params:
environments:
- tmt:
context:
how: provision
<<: *tmt-cloud-resources
# Test internal plugins
- <<: *test-base
<<: *internal
<<: *require-full-tests
identifier: internal-plugins
fmf_url: "https://gitlab.cee.redhat.com/baseos-qe/tmt.git"
# Test internal wow
- <<: *test-base
<<: *internal
<<: *require-full-tests
identifier: internal-wow
fmf_url: "https://gitlab.cee.redhat.com/baseos-qe/integration_scripts.git"
tmt_plan: '/tmt/integration/plan'
# Propose downstream pull requests
- job: propose_downstream
trigger: release
dist_git_branches: *all-targets
# Create koji builds
- job: koji_build
trigger: commit
allowed_pr_authors: ["packit", "all_committers"]
dist_git_branches: *all-targets
# Create bodhi updates
- job: bodhi_update
trigger: commit
dist_git_branches:
- fedora-branched
- epel-9
- epel-10
+4 -1
View File
@@ -1,3 +1,6 @@
# tmt
The tmt package
Test Metadata Tool
* https://github.com/psss/tmt/
* https://tmt.readthedocs.io/
-3
View File
@@ -1,3 +0,0 @@
This repository is maintained by packit.
https://packit.dev/
The file was generated using packit 1.11.0.post1.dev3+g351a3979f.
+1 -1
View File
@@ -1 +1 @@
SHA512 (tmt-1.55.0.tar.gz) = 410fffae1d2c6f1d2b0e013afd8f0a2166a43b0d7b119e4599d6db7e07fbdcabcbdb10d55478757352af28be3f56f1897572baf2c2263e47b75a6256254a22be
SHA512 (tmt-0.1.tar.gz) = f5ad3a72ca1ed09c5e1f420de9ffadeb85fe08caebbccc89f76a3ef2aa896215d9407b9857a32c6db6adffcf1d81ba6ff8119e4394abaaf0c8c4e4feb469cce9
+72 -141
View File
@@ -1,173 +1,104 @@
Name: tmt
Version: 1.55.0
Release: %autorelease
Summary: Test Management Tool
Name: tmt
Version: 0.1
Release: 1%{?dist}
License: MIT
URL: https://github.com/teemtee/tmt
Source0: %{pypi_source tmt}
Summary: Test Metadata Tool
License: MIT
BuildArch: noarch
BuildArch: noarch
BuildRequires: python3-devel
URL: https://github.com/psss/tmt
Source: https://github.com/psss/tmt/releases/download/%{version}/tmt-%{version}.tar.gz
Requires: git-core rsync sshpass
# Depending on the distro, we set some defaults.
# Note that the bcond macros are named for the CLI option they create.
# "%%bcond_without" means "ENABLE by default and create a --without option"
%if 0%{?fedora} < 40
Obsoletes: python3-tmt < %{version}-%{release}
Provides: tmt-report-html == %{version}-%{release}
Obsoletes: tmt-report-html < %{version}-%{release}
Provides: tmt-report-junit == %{version}-%{release}
Obsoletes: tmt-report-junit < %{version}-%{release}
Provides: tmt-report-polarion == %{version}-%{release}
Obsoletes: tmt-report-polarion < %{version}-%{release}
Provides: tmt-report-reportportal == %{version}-%{release}
Obsoletes: tmt-report-reportportal < %{version}-%{release}
# Fedora or RHEL 8+
%if 0%{?fedora} || 0%{?rhel} > 7
%bcond_with oldreqs
%bcond_with englocale
%else
# The automatic runtime dependency generator doesn't exist yet
%bcond_without oldreqs
# The C.UTF-8 locale doesn't exist, Python defaults to C (ASCII)
%bcond_without englocale
%endif
Recommends: bash-completion
Recommends: ansible-core
%py_provides python3-tmt
%global _metapackage_description %{expand:
This is a metapackage bringing in extra dependencies for tmt.
It contains no code, just makes sure the dependencies are installed.}
# Main tmt package requires the Python module
Requires: python%{python3_pkgversion}-%{name} == %{version}-%{release}
%description
The tmt Python module and command line tool implement the test
metadata specification (L1 and L2) and allows easy test execution.
This package contains the command line tool.
%pyproject_extras_subpkg -n tmt export-polarion
%pyproject_extras_subpkg -n tmt report-junit
%pyproject_extras_subpkg -n tmt report-polarion
%pyproject_extras_subpkg -n tmt link-jira
%?python_enable_dependency_generator
%package -n tmt+test-convert
Summary: Dependencies required for tmt test import and export
Provides: tmt-test-convert == %{version}-%{release}
%if 0%{?fedora} < 40
Obsoletes: tmt-test-convert < %{version}-%{release}
%endif
Requires: tmt == %{version}-%{release}
Requires: make
Requires: python3-bugzilla
Requires: python3-nitrate
Requires: python3-html2text
Requires: python3-markdown
%description -n tmt+test-convert %_metapackage_description
%package -n tmt+provision-container
Summary: Dependencies required for tmt container provisioner
Provides: tmt-provision-container == %{version}-%{release}
%if 0%{?fedora} < 40
Obsoletes: tmt-provision-container < %{version}-%{release}
%endif
Requires: tmt == %{version}-%{release}
Requires: podman
Requires: ansible-collection-containers-podman
%description -n tmt+provision-container %_metapackage_description
%package -n tmt+provision-virtual
Summary: Dependencies required for tmt virtual machine provisioner
Provides: tmt-provision-virtual == %{version}-%{release}
%if 0%{?fedora} < 40
Obsoletes: tmt-provision-virtual < %{version}-%{release}
%endif
Requires: tmt == %{version}-%{release}
Requires: python3-testcloud >= 0.11.7
Requires: libvirt-daemon-config-network
Requires: openssh-clients
# Recommend qemu system emulators for supported arches
Recommends: qemu-kvm-core
%if 0%{?fedora}
Recommends: qemu-system-aarch64-core
Recommends: qemu-system-ppc-core
Recommends: qemu-system-s390x-core
Recommends: qemu-system-x86-core
%package -n python%{python3_pkgversion}-%{name}
Summary: %{summary}
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: python%{python3_pkgversion}-setuptools
BuildRequires: python%{python3_pkgversion}-pytest
BuildRequires: python%{python3_pkgversion}-click
BuildRequires: python%{python3_pkgversion}-fmf
%{?python_provide:%python_provide python%{python3_pkgversion}-%{name}}
%if %{with oldreqs}
Requires: python%{python3_pkgversion}-PyYAML
%endif
%description -n tmt+provision-virtual %_metapackage_description
%description -n python%{python3_pkgversion}-%{name}
The tmt Python module and command line tool implement the test
metadata specification (L1 and L2) and allows easy test execution.
This package contains the Python 3 module.
%package -n tmt+provision-bootc
Summary: Dependencies required for tmt bootc machine provisioner
Provides: tmt-provision-bootc == %{version}-%{release}
Requires: tmt == %{version}-%{release}
Requires: tmt+provision-virtual == %{version}-%{release}
Requires: podman
Recommends: podman-machine
%description -n tmt+provision-bootc %_metapackage_description
%package -n tmt+provision-beaker
Summary: Dependencies required for tmt beaker provisioner
Provides: tmt-provision-beaker == %{version}-%{release}
%if 0%{?fedora} < 40
Obsoletes: tmt-provision-beaker < %{version}-%{release}
%endif
Requires: tmt == %{version}-%{release}
Requires: python3-mrack-beaker
%description -n tmt+provision-beaker %_metapackage_description
# Replace with pyproject_extras_subpkg at some point
%package -n tmt+all
Summary: Extra dependencies for the Test Management Tool
Provides: tmt-all == %{version}-%{release}
%if 0%{?fedora} < 40
Obsoletes: tmt-all < %{version}-%{release}
%endif
Requires: tmt+test-convert == %{version}-%{release}
Requires: tmt+export-polarion == %{version}-%{release}
Requires: tmt+provision-container == %{version}-%{release}
Requires: tmt+provision-virtual == %{version}-%{release}
Requires: tmt+provision-beaker == %{version}-%{release}
Requires: tmt+report-junit == %{version}-%{release}
Requires: tmt+report-polarion == %{version}-%{release}
%description -n tmt+all
All extra dependencies of the Test Management Tool. Install this
package to have all available plugins ready for testing.
%prep
%autosetup -p1 -n tmt-%{version}
%setup -q
%generate_buildrequires
%pyproject_buildrequires
%build
export SETUPTOOLS_SCM_PRETEND_VERSION=%{version}
%pyproject_wheel
%if %{with englocale}
export LANG=en_US.utf-8
%endif
%py3_build
%install
%pyproject_install
%pyproject_save_files tmt
%if %{with englocale}
export LANG=en_US.utf-8
%endif
%py3_install
mkdir -p %{buildroot}%{_mandir}/man1
install -pm 644 tmt.1 %{buildroot}%{_mandir}/man1
mkdir -p %{buildroot}%{_datadir}/bash-completion/completions
install -pm 644 completions/bash/%{name} %{buildroot}%{_datadir}/bash-completion/completions/%{name}
mkdir -p %{buildroot}/etc/%{name}/
install -pm 644 %{name}/steps/provision/mrack/mrack* %{buildroot}/etc/%{name}/
install -pm 644 tmt.1* %{buildroot}%{_mandir}/man1
%check
%pyproject_check_import
%if %{with englocale}
export LANG=en_US.utf-8
%endif
%files -n tmt -f %{pyproject_files}
%{__python3} -m pytest -vv
%{!?_licensedir:%global license %%doc}
%files
%{_mandir}/man1/*
%{_bindir}/%{name}
%doc README.rst examples
%{_bindir}/tmt
%{_mandir}/man1/tmt.1.gz
%{_datadir}/bash-completion/completions/%{name}
%license LICENSE
%files -n python%{python3_pkgversion}-%{name}
%{python3_sitelib}/%{name}/
%{python3_sitelib}/%{name}-*.egg-info/
%license LICENSE
%files -n tmt+provision-container -f %{_pyproject_ghost_distinfo}
%files -n tmt+provision-virtual -f %{_pyproject_ghost_distinfo}
%files -n tmt+provision-bootc -f %{_pyproject_ghost_distinfo}
%files -n tmt+test-convert -f %{_pyproject_ghost_distinfo}
%files -n tmt+provision-beaker -f %{_pyproject_ghost_distinfo}
%config(noreplace) %{_sysconfdir}/%{name}/mrack*
%files -n tmt+all -f %{_pyproject_ghost_distinfo}
%changelog
* Mon Aug 18 2025 Packit <hello@packit.dev> - 1.55.0-1
- Update to version 1.55.0
* Mon Sep 30 2019 Petr Šplíchal <psplicha@redhat.com> - 0.1-1
- Initial packaging