From 0f4c407d1a85b77fd9a04bc461604a51185a7644 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Wed, 10 May 2017 13:08:17 +0200 Subject: [PATCH 01/30] Port to f26 streams --- perl.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/perl.yaml b/perl.yaml index f9c11a4..4da55ab 100644 --- a/perl.yaml +++ b/perl.yaml @@ -14,10 +14,10 @@ data: module: [ MIT ] dependencies: buildrequires: - base-runtime: master - perl-bootstrap: master + base-runtime: f26 + perl-bootstrap: f26 requires: - base-runtime: master + base-runtime: f26 references: community: https://fedoraproject.org/wiki/Modularity documentation: https://fedoraproject.org/wiki/Fedora_Packaging_Guidelines_for_Modules From 212ef4225d54454d1297161fc42478f7f6a48c7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Thu, 11 May 2017 08:18:40 +0200 Subject: [PATCH 02/30] Rebuild after koji failure From 1d0b43ec6bd19de521360f8f1518777f2d9818b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Fri, 12 May 2017 09:53:29 +0200 Subject: [PATCH 03/30] Rebuild after koji failure From b190a68f1283091a049cc3452c8cd73067887884 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Fri, 12 May 2017 13:00:04 +0200 Subject: [PATCH 04/30] Rebuild after koji failure From 634417c4c8d86fd473056b3aeab29be91c23812f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Mon, 15 May 2017 09:20:53 +0200 Subject: [PATCH 05/30] Rebuild after koji failure From f79af84dacb666245e6daa5a7c9bdfd7a91834da Mon Sep 17 00:00:00 2001 From: Radoslav Pitonak Date: Mon, 29 May 2017 12:09:43 +0200 Subject: [PATCH 06/30] general tests update --- .gitignore | 3 +++ Dockerfile | 5 +++- Makefile | 1 - repos/perl.repo | 2 +- tests/cpan.py | 18 ++++++++++---- tests/microdnfinside.py | 35 --------------------------- tests/{sanity1.py => networking.py} | 19 +++++++-------- tests/{simpleTest.py => sanity.py} | 37 +++++++++++++++++++---------- tests/scripts/http.pl | 5 ++++ 9 files changed, 61 insertions(+), 64 deletions(-) delete mode 100644 tests/microdnfinside.py rename tests/{sanity1.py => networking.py} (75%) rename tests/{simpleTest.py => sanity.py} (57%) create mode 100644 tests/scripts/http.pl diff --git a/.gitignore b/.gitignore index 485dee6..b6a895f 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,4 @@ .idea +tests/*.pyc +.idea +tests/localrepo* diff --git a/Dockerfile b/Dockerfile index b95208c..c9f9da9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,11 @@ FROM baseruntime/baseruntime:latest COPY repos/* /etc/yum.repos.d/ +COPY tests/scripts/* /tmp/ -RUN microdnf --nodocs --enablerepo perl install perl perl-devel && \ +RUN sed -i 's|/jkaluza/|/ralph/|g' /etc/yum.repos.d/build.repo && \ + rpm -e --justdb --nodeps systemd-libs && \ + microdnf --nodocs --enablerepo perl install perl perl-devel && \ microdnf clean all EXPOSE 8080 diff --git a/Makefile b/Makefile index e02c0da..8b48706 100644 --- a/Makefile +++ b/Makefile @@ -12,4 +12,3 @@ run: build test: build cd tests; MODULE=docker MODULEMD=$(MODULEMDURL) URL="docker=$(IMAGE_NAME)" make all - cd tests; MODULE=rpm MODULEMD=$(MODULEMDURL) URL="docker=$(IMAGE_NAME)" make all diff --git a/repos/perl.repo b/repos/perl.repo index 63394b1..0f32e9d 100644 --- a/repos/perl.repo +++ b/repos/perl.repo @@ -1,4 +1,4 @@ [perl] name=perl -baseurl=https://kojipkgs.fedoraproject.org/repos/module-fcd86adc7a9c7e0a/latest/x86_64/ +baseurl=https://kojipkgs.fedoraproject.org/repos/module-9ac9f492d4852dfd-build/latest/x86_64/ enabled=0 diff --git a/tests/cpan.py b/tests/cpan.py index 38478b1..6e34c87 100644 --- a/tests/cpan.py +++ b/tests/cpan.py @@ -22,24 +22,34 @@ from avocado import main from avocado.core import exceptions from moduleframework import module_framework -class CpanCheck1(module_framework.AvocadoTest): + + +class CpanCheck(module_framework.AvocadoTest): """ :avocado: enable """ def testInstallPerlModule(self): + """ + Installing Perl module using cpan [http://www.cpan.org/] + """ + self.start() + self.run("microdnf --nodocs --enablerepo fedora install -y cpan cpanminus") self.run("cpanm install --force Error") self.run("perl -e \"use Error\"") def testInstallCModule(self): + """ + Installing Perl module written in C language, using cpan [http://www.cpan.org/] + Another packages need to be install here - gcc, rpm-devel to build module. + """ + self.start() - # install cpan + self.run("microdnf --nodocs --enablerepo fedora install -y cpan cpanminus") - # install gcc and rpm-devel self.run("microdnf --nodocs --enablerepo fedora install -y gcc rpm-devel") - # install random c module self.run("cpanm install --force RPM2") self.run("perl -e \"use RPM2\"") diff --git a/tests/microdnfinside.py b/tests/microdnfinside.py deleted file mode 100644 index 479487d..0000000 --- a/tests/microdnfinside.py +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# -# This Modularity Testing Framework helps you to write tests for modules -# Copyright (C) 2017 Red Hat, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# he Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Authors: Jan Scotka -# - -from moduleframework import module_framework -import os - - -class microDNFTest(module_framework.AvocadoTest): - """ - :avocado: enable - """ - - def testInstallMicroDNFEmpty(self): - self.start() - self.assertIn("Transaction: (empty)",self.run("microdnf install microdnf", ignore_status=True).stdout) diff --git a/tests/sanity1.py b/tests/networking.py similarity index 75% rename from tests/sanity1.py rename to tests/networking.py index 602418c..18825c3 100644 --- a/tests/sanity1.py +++ b/tests/networking.py @@ -24,21 +24,20 @@ from avocado import main from avocado.core import exceptions from moduleframework import module_framework -class SanityCheck1(module_framework.AvocadoTest): + + +class NetworkingCheck(module_framework.AvocadoTest): """ :avocado: enable """ - def test1(self): + def testHTTPRequest(self): + """ + Test networking with `HTTP::Tiny` perl module + Testing script is included in `scripts` folder + """ self.start() - self.run("ls / | grep bin") - - # check if perl is installed in the right version. - def test2PerlVersion(self): - perlVersion = "5.24" - module_framework.skipTestIf("perl" not in self.getActualProfile()) - self.start() - self.run("perl -v | grep " + perlVersion) + self.run("perl /tmp/http.pl") if __name__ == '__main__': diff --git a/tests/simpleTest.py b/tests/sanity.py similarity index 57% rename from tests/simpleTest.py rename to tests/sanity.py index 780e387..65abed9 100644 --- a/tests/simpleTest.py +++ b/tests/sanity.py @@ -18,30 +18,43 @@ # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # -# Authors: Jan Scotka +# Authors: Rado Pitonak # +from avocado import main +from avocado.core import exceptions from moduleframework import module_framework -import os -class simpleTests(module_framework.AvocadoTest): +class SanityCheck(module_framework.AvocadoTest): """ :avocado: enable """ - def testPath(self): - print ">>>>>>>>>>>>>> ", module_framework.__file__ - print ">>>>>>>>>>>>>> ", __file__ + def test1(self): + """ + Simple sanity test + """ - def testAssertIn(self): self.start() - self.assertIn("sbin", self.run("ls /").stdout) + self.run("ls / | grep bin") - def testInsideModule(self): + def test2PerlVersion(self): + """ + Check if perl is installed in correct version + """ + perl_version = "5.24" self.start() - self.assertEqual("a", self.run("echo a").stdout.strip()) + self.run("perl -v | grep " + perl_version) - def testCommandOnHost(self): + def testPerlScript(self): + """ + Executing simple perl script + """ + test_string = "Running test script\n" self.start() - self.assertEqual("a", self.runHost("echo a").stdout.strip()) + self.assertIn("{}".format(test_string), self.run('perl -e " print \'{}\'"'.format(test_string)).stdout) + + +if __name__ == '__main__': + main() diff --git a/tests/scripts/http.pl b/tests/scripts/http.pl new file mode 100644 index 0000000..d38a88a --- /dev/null +++ b/tests/scripts/http.pl @@ -0,0 +1,5 @@ +use HTTP::Tiny; + +my $response = HTTP::Tiny->new->get('http://example.com/'); + +die "Failed!\n" unless $response->{success}; \ No newline at end of file From 81cc84d0aaf22841507d80a6070d7d073416df7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Tue, 6 Jun 2017 14:04:20 +0200 Subject: [PATCH 07/30] Define profiles perl-core package pulls in all required packages transitively. --- perl.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/perl.yaml b/perl.yaml index f9c11a4..3451c2a 100644 --- a/perl.yaml +++ b/perl.yaml @@ -22,6 +22,15 @@ data: community: https://fedoraproject.org/wiki/Modularity documentation: https://fedoraproject.org/wiki/Fedora_Packaging_Guidelines_for_Modules tracker: https://taiga.fedorainfracloud.org/project/modularity + profiles: + # Interpreter and all Perl modules bundled within upstream Perl + default: + rpms: + perl-core + # Only the interpreter as standalone executable + minimal: + rpms: + perl filter: rpms: # This is provided by MBR, we do not need any different content From 0cb226486d8c97da65db316f204373345586cfe6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Tue, 6 Jun 2017 14:04:20 +0200 Subject: [PATCH 08/30] Define profiles perl-core package pulls in all required packages transitively. --- perl.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/perl.yaml b/perl.yaml index 4da55ab..b1895d8 100644 --- a/perl.yaml +++ b/perl.yaml @@ -22,6 +22,15 @@ data: community: https://fedoraproject.org/wiki/Modularity documentation: https://fedoraproject.org/wiki/Fedora_Packaging_Guidelines_for_Modules tracker: https://taiga.fedorainfracloud.org/project/modularity + profiles: + # Interpreter and all Perl modules bundled within upstream Perl + default: + rpms: + perl-core + # Only the interpreter as standalone executable + minimal: + rpms: + perl filter: rpms: # This is provided by MBR, we do not need any different content From 2168f141c31311f5663f089b07ae86ffa4b85419 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Thu, 27 Jul 2017 11:56:03 +0200 Subject: [PATCH 09/30] Fix profile's RPM list definitions Each profile is a list of packages. --- perl.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/perl.yaml b/perl.yaml index 3451c2a..67951fe 100644 --- a/perl.yaml +++ b/perl.yaml @@ -26,11 +26,11 @@ data: # Interpreter and all Perl modules bundled within upstream Perl default: rpms: - perl-core + - perl-core # Only the interpreter as standalone executable minimal: rpms: - perl + - perl filter: rpms: # This is provided by MBR, we do not need any different content From b198b660e121423c0d9ae50cc4a23456689f2d9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Thu, 27 Jul 2017 11:56:03 +0200 Subject: [PATCH 10/30] Fix profile's RPM list definitions Each profile is a list of packages. --- perl.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/perl.yaml b/perl.yaml index b1895d8..6fed7df 100644 --- a/perl.yaml +++ b/perl.yaml @@ -26,11 +26,11 @@ data: # Interpreter and all Perl modules bundled within upstream Perl default: rpms: - perl-core + - perl-core # Only the interpreter as standalone executable minimal: rpms: - perl + - perl filter: rpms: # This is provided by MBR, we do not need any different content From e8da129f0b78a45f776fa3393ea04d70976cd048 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Fri, 28 Jul 2017 10:09:37 +0200 Subject: [PATCH 11/30] Dummy commit for MBS From ffc2614fb4348835e182da54a427346fc703875b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Tue, 1 Aug 2017 11:48:11 +0200 Subject: [PATCH 12/30] Dummy commit for MBS From 6db6dde190cf236986e75da8facf03e00c6435cf Mon Sep 17 00:00:00 2001 From: Nils Philippsen Date: Tue, 1 Aug 2017 13:52:06 +0200 Subject: [PATCH 13/30] update references --- perl.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/perl.yaml b/perl.yaml index 6fed7df..adea70b 100644 --- a/perl.yaml +++ b/perl.yaml @@ -19,9 +19,9 @@ data: requires: base-runtime: f26 references: - community: https://fedoraproject.org/wiki/Modularity - documentation: https://fedoraproject.org/wiki/Fedora_Packaging_Guidelines_for_Modules - tracker: https://taiga.fedorainfracloud.org/project/modularity + community: https://docs.pagure.org/modularity/ + documentation: https://github.com/modularity-modules/perl + tracker: https://github.com/modularity-modules/perl/issues profiles: # Interpreter and all Perl modules bundled within upstream Perl default: From c3ee474343eb86996a5f761725104c09a53be74b Mon Sep 17 00:00:00 2001 From: Nils Philippsen Date: Tue, 1 Aug 2017 13:52:06 +0200 Subject: [PATCH 14/30] update references --- perl.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/perl.yaml b/perl.yaml index 67951fe..88919a9 100644 --- a/perl.yaml +++ b/perl.yaml @@ -19,9 +19,9 @@ data: requires: base-runtime: master references: - community: https://fedoraproject.org/wiki/Modularity - documentation: https://fedoraproject.org/wiki/Fedora_Packaging_Guidelines_for_Modules - tracker: https://taiga.fedorainfracloud.org/project/modularity + community: https://docs.pagure.org/modularity/ + documentation: https://github.com/modularity-modules/perl + tracker: https://github.com/modularity-modules/perl/issues profiles: # Interpreter and all Perl modules bundled within upstream Perl default: From cbf31d49bf7508f7b189f1daa07480ea86c6aeeb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Tue, 15 Aug 2017 16:42:16 +0200 Subject: [PATCH 15/30] Upgrade to Perl 5.26 based on Fedora Rawhide --- perl.yaml | 259 +++++++++++++++++++++++++++--------------------------- 1 file changed, 131 insertions(+), 128 deletions(-) diff --git a/perl.yaml b/perl.yaml index 88919a9..7c9729b 100644 --- a/perl.yaml +++ b/perl.yaml @@ -14,10 +14,10 @@ data: module: [ MIT ] dependencies: buildrequires: - base-runtime: master + platform: master perl-bootstrap: master requires: - base-runtime: master + platform: master references: community: https://docs.pagure.org/modularity/ documentation: https://github.com/modularity-modules/perl @@ -26,351 +26,354 @@ data: # Interpreter and all Perl modules bundled within upstream Perl default: rpms: - - perl-core + - perl # Only the interpreter as standalone executable minimal: rpms: - - perl - filter: + - perl-interpreter + buildopts: rpms: - # This is provided by MBR, we do not need any different content - # there, not providing it will preserve MBR's NEVRA and that's - # good for dependend modules. - - perl-srpm-macros + macros: | + %_without_perl_enables_groff 1 + %_without_perl_enables_syslog_test 1 + %_without_perl_enables_systemtap 1 + %_without_perl_enables_tcsh 1 + %_without_perl_Compress_Bzip2_enables_optional_test 1 + %_without_perl_CPAN_Meta_Requirements_enables_optional_test 1 + %_without_perl_IPC_System_Simple_enables_optional_test 1 + %_without_perl_LWP_MediaTypes_enables_mailcap 1 + %_without_perl_Module_Build_enables_optional_test 1 + %_without_perl_Perl_OSType_enables_optional_test 1 + %_without_perl_Pod_Perldoc_enables_tk_test 1 + %_without_perl_Software_License_enables_optional_test 1 + %_without_perl_Sys_Syslog_enables_optional_test 1 + %_without_perl_Test_Harness_enables_optional_test 1 + %_without_perl_URI_enables_Business_ISBN 1 components: rpms: - # We need to build all (as in perl-bootstrap) RPM packages again - # because only those built from this module definition will get - # into the module compose. - # This perl-srpm-macros build must have higher NEVRA than a build - # from perl-bootstrap and must be built first. - perl-srpm-macros: - rationale: Control generating source packages. - ref: 2d2cd8711bd8ec5059308d85ca2fcc1fbbcf0aa2 - buildorder: -1 - # Then we can rebuild in a random order because we have all binary + # We can rebuild in a random order because we have all binary # packages available from perl-bootstrap. perl: rationale: The Perl interpreter. - ref: f26 + ref: master perl-Algorithm-Diff: rationale: A run-time dependency. - ref: f26 + ref: master perl-Archive-Tar: rationale: Core Perl API. - ref: f26 + ref: master perl-Archive-Zip: rationale: A run-time dependency. - ref: f26 + ref: master perl-autodie: rationale: Core Perl API. - ref: f26 + ref: master perl-B-Debug: rationale: Core Perl API. - ref: f26 + ref: master perl-bignum: rationale: Core Perl API. - ref: f26 + ref: master perl-Carp: rationale: Core Perl API. - ref: f26 + ref: master perl-Compress-Bzip2: rationale: A run-time dependency. - ref: f26 + ref: master perl-Compress-Raw-Bzip2: rationale: Core Perl API. - ref: f26 + ref: master perl-Compress-Raw-Zlib: rationale: Core Perl API. - ref: f26 + ref: master perl-Config-Perl-V: rationale: Core Perl API. - ref: f26 + ref: master perl-constant: rationale: Core Perl API. - ref: f26 + ref: master perl-CPAN: rationale: Core Perl API. - ref: f26 + ref: master perl-CPAN-Meta: rationale: Core Perl API. - ref: f26 + ref: master perl-CPAN-Meta-Requirements: rationale: Core Perl API. - ref: f26 + ref: master perl-CPAN-Meta-YAML: rationale: Core Perl API. - ref: f26 + ref: master perl-Data-Dumper: rationale: Core Perl API. - ref: f26 + ref: master perl-Data-OptList: rationale: A run-time dependency. - ref: f26 + ref: master perl-Data-Section: rationale: A run-time dependency. - ref: f26 + ref: master perl-DB_File: rationale: Core Perl API. - ref: f26 + ref: master perl-Devel-PPPort: rationale: Core Perl API. - ref: f26 + ref: master perl-Devel-Size: rationale: A run-time dependency. - ref: f26 + ref: master perl-Digest: rationale: Core Perl API. - ref: f26 + ref: master perl-Digest-MD5: rationale: Core Perl API. - ref: f26 + ref: master perl-Digest-SHA: rationale: Core Perl API. - ref: f26 + ref: master perl-Encode: rationale: Core Perl API. - ref: f26 + ref: master perl-Env: rationale: Core Perl API. - ref: f26 + ref: master perl-experimental: rationale: Core Perl API. - ref: f26 + ref: master perl-Exporter: rationale: Core Perl API. - ref: f26 + ref: master perl-ExtUtils-CBuilder: rationale: Core Perl API. - ref: f26 + ref: master perl-ExtUtils-Install: rationale: Core Perl API. - ref: f26 + ref: master perl-ExtUtils-MakeMaker: rationale: Core Perl API. - ref: f26 + ref: master perl-ExtUtils-Manifest: rationale: Core Perl API. - ref: f26 + ref: master perl-ExtUtils-ParseXS: rationale: Core Perl API. - ref: f26 + ref: master perl-Fedora-VSP: - rationale: RPM dependency generator. - ref: f26 + rationale: A run-time dependency. + ref: master perl-File-Fetch: rationale: Core Perl API. - ref: f26 + ref: master perl-File-HomeDir: rationale: A run-time dependency. - ref: f26 + ref: master perl-File-Path: rationale: Core Perl API. - ref: f26 + ref: master perl-File-Temp: rationale: Core Perl API. - ref: f26 + ref: master perl-File-Which: rationale: A run-time dependency. - ref: f26 + ref: master perl-Filter: rationale: Core Perl API. - ref: f26 + ref: master perl-Filter-Simple: rationale: Core Perl API. - ref: f26 + ref: master perl-generators: rationale: RPM dependency generator. - ref: f26 + ref: master perl-Getopt-Long: rationale: Core Perl API. - ref: f26 + ref: master perl-HTTP-Tiny: rationale: Core Perl API. - ref: f26 + ref: master perl-inc-latest: rationale: A run-time dependency. - ref: f26 + ref: master perl-IO-Compress: rationale: Core Perl API. - ref: f26 + ref: master perl-IO-Socket-IP: rationale: Core Perl API. - ref: f26 + ref: master perl-IPC-Cmd: rationale: Core Perl API. - ref: f26 + ref: master perl-IPC-System-Simple: rationale: A run-time dependency. - ref: f26 + ref: master perl-IPC-SysV: rationale: Core Perl API. - ref: f26 + ref: master perl-JSON-PP: rationale: Core Perl API. - ref: f26 + ref: master perl-libnet: rationale: Core Perl API. - ref: f26 + ref: master perl-local-lib: rationale: A run-time dependency. - ref: f26 + ref: master perl-Locale-Codes: rationale: Core Perl API. - ref: f26 + ref: master perl-Locale-Maketext: rationale: Core Perl API. - ref: f26 + ref: master perl-Math-BigInt: rationale: Core Perl API. - ref: f26 + ref: master perl-Math-BigInt-FastCalc: rationale: Core Perl API. - ref: f26 + ref: master perl-Math-BigRat: rationale: Core Perl API. - ref: f26 + ref: master perl-MIME-Base64: rationale: Core Perl API. - ref: f26 + ref: master perl-Module-Build: rationale: A run-time dependency. - ref: f26 + ref: master perl-Module-CoreList: rationale: Core Perl API. - ref: f26 + ref: master perl-Module-Load: rationale: Core Perl API. - ref: f26 + ref: master perl-Module-Load-Conditional: rationale: Core Perl API. - ref: f26 + ref: master perl-Module-Metadata: rationale: Core Perl API. - ref: f26 + ref: master perl-MRO-Compat: rationale: A run-time dependency. - ref: f26 + ref: master perl-Package-Generator: rationale: A run-time dependency. - ref: f26 + ref: master perl-Params-Check: rationale: Core Perl API. - ref: f26 + ref: master perl-Params-Util: rationale: A run-time dependency. - ref: f26 + ref: master perl-parent: rationale: Core Perl API. - ref: f26 + ref: master perl-PathTools: rationale: Core Perl API. - ref: f26 + ref: master perl-Perl-OSType: rationale: Core Perl API. - ref: f26 + ref: master perl-perlfaq: rationale: Core Perl API. - ref: f26 + ref: master perl-PerlIO-via-QuotedPrint: rationale: Core Perl API. - ref: f26 + ref: master perl-Pod-Checker: rationale: Core Perl API. - ref: f26 + ref: master perl-Pod-Escapes: rationale: Core Perl API. - ref: f26 + ref: master perl-Pod-Parser: rationale: Core Perl API. - ref: f26 + ref: master perl-Pod-Perldoc: rationale: Core Perl API. - ref: f26 + ref: master perl-Pod-Simple: rationale: Core Perl API. - ref: f26 + ref: master perl-Pod-Usage: rationale: Core Perl API. - ref: f26 + ref: master perl-podlators: rationale: Core Perl API. - ref: f26 + ref: master perl-Scalar-List-Utils: rationale: Core Perl API. - ref: f26 + ref: master perl-Socket: rationale: Core Perl API. - ref: f26 + ref: master perl-Software-License: rationale: A run-time dependency. - ref: f26 + ref: master perl-Storable: rationale: Core Perl API. - ref: f26 + ref: master perl-Sub-Exporter: rationale: A run-time dependency. - ref: f26 + ref: master perl-Sub-Install: rationale: A run-time dependency. - ref: f26 + ref: master perl-Sys-Syslog: rationale: Core Perl API. - ref: f26 + ref: master perl-Term-ANSIColor: rationale: Core Perl API. - ref: f26 + ref: master perl-Term-Cap: rationale: Core Perl API. - ref: f26 + ref: master perl-Test-Harness: rationale: Core Perl API. - ref: f26 + ref: master perl-Test-Simple: rationale: Core Perl API. - ref: f26 + ref: master perl-Text-Balanced: rationale: Core Perl API. - ref: f26 + ref: master perl-Text-Diff: rationale: A run-time dependency. - ref: f26 + ref: master perl-Text-Glob: rationale: A run-time dependency. - ref: f26 + ref: master perl-Text-ParseWords: rationale: Core Perl API. - ref: f26 + ref: master perl-Text-Tabs+Wrap: rationale: Core Perl API. - ref: f26 + ref: master perl-Text-Template: rationale: A run-time dependency. - ref: f26 + ref: master perl-Thread-Queue: rationale: Core Perl API. - ref: f26 + ref: master perl-threads: rationale: Core Perl API. - ref: f26 + ref: master perl-threads-shared: rationale: Core Perl API. - ref: f26 + ref: master perl-Time-HiRes: rationale: Core Perl API. - ref: f26 + ref: master perl-Time-Local: rationale: Core Perl API. - ref: f26 + ref: master perl-Unicode-Collate: rationale: Core Perl API. - ref: f26 + ref: master perl-Unicode-Normalize: rationale: Core Perl API. - ref: f26 + ref: master perl-URI: rationale: A run-time dependency. - ref: f26 + ref: master perl-version: rationale: Core Perl API. - ref: f26 + ref: master From 724eaf28e98c2233621fd33298e7c17b25ed5318 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Thu, 17 Aug 2017 10:06:07 +0200 Subject: [PATCH 16/30] Define API --- perl.yaml | 119 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 119 insertions(+) diff --git a/perl.yaml b/perl.yaml index 7c9729b..ac8ee05 100644 --- a/perl.yaml +++ b/perl.yaml @@ -31,6 +31,125 @@ data: minimal: rpms: - perl-interpreter + api: + rpms: + - perl + - perl-Archive-Tar + - perl-Attribute-Handlers + - perl-autodie + - perl-B-Debug + - perl-bignum + - perl-Carp + - perl-Compress-Raw-Bzip2 + - perl-Compress-Raw-Zlib + - perl-Config-Perl-V + - perl-constant + - perl-CPAN + - perl-CPAN-Meta + - perl-CPAN-Meta-Requirements + - perl-CPAN-Meta-YAML + - perl-Data-Dumper + - perl-DB_File + - perl-devel + - perl-Devel-Peek + - perl-Devel-PPPort + - perl-Devel-SelfStubber + - perl-Digest + - perl-Digest-MD5 + - perl-Digest-SHA + - perl-Encode + - perl-Encode-devel + - perl-encoding + - perl-Env + - perl-Errno + - perl-experimental + - perl-Exporter + - perl-ExtUtils-CBuilder + - perl-ExtUtils-Command + - perl-ExtUtils-Embed + - perl-ExtUtils-Install + - perl-ExtUtils-MakeMaker + - perl-ExtUtils-Manifest + - perl-ExtUtils-Miniperl + - perl-ExtUtils-MM-Utils + - perl-ExtUtils-ParseXS + - perl-File-Fetch + - perl-File-Path + - perl-File-Temp + - perl-Filter + - perl-Filter-Simple + - perl-generators + - perl-Getopt-Long + - perl-HTTP-Tiny + - perl-interpreter + - perl-IO + - perl-IO-Compress + - perl-IO-Socket-IP + - perl-IO-Zlib + - perl-IPC-Cmd + - perl-IPC-SysV + - perl-JSON-PP + - perl-libnet + - perl-libnetcfg + - perl-libs + - perl-Locale-Codes + - perl-Locale-Maketext + - perl-Locale-Maketext-Simple + - perl-macros + - perl-Math-BigInt + - perl-Math-BigInt-FastCalc + - perl-Math-BigRat + - perl-Math-Complex + - perl-Memoize + - perl-MIME-Base64 + - perl-Module-CoreList + - perl-Module-CoreList-tools + - perl-Module-Load + - perl-Module-Load-Conditional + - perl-Module-Loaded + - perl-Module-Metadata + - perl-Net-Ping + - perl-open + - perl-Params-Check + - perl-parent + - perl-PathTools + - perl-Perl-OSType + - perl-perlfaq + - perl-PerlIO-via-QuotedPrint + - perl-Pod-Checker + - perl-Pod-Escapes + - perl-Pod-Html + - perl-Pod-Parser + - perl-Pod-Perldoc + - perl-Pod-Simple + - perl-Pod-Usage + - perl-podlators + - perl-Scalar-List-Utils + - perl-SelfLoader + - perl-Socket + - perl-Storable + - perl-Sys-Syslog + - perl-Term-ANSIColor + - perl-Term-Cap + - perl-Test + - perl-Test-Harness + - perl-Test-Simple + - perl-tests + - perl-Text-Balanced + - perl-Text-ParseWords + - perl-Text-Tabs+Wrap + - perl-Thread-Queue + - perl-threads + - perl-threads-shared + - perl-Time-HiRes + - perl-Time-HiRes + - perl-Time-HiRes + - perl-Time-Local + - perl-Time-Piece + - perl-Unicode-Collate + - perl-Unicode-Normalize + - perl-utils + - perl-version buildopts: rpms: macros: | From 2d4bd031a0838c091a70bee4384df96a4d75629a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Thu, 17 Aug 2017 10:06:19 +0200 Subject: [PATCH 17/30] Fix a typo --- perl.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/perl.yaml b/perl.yaml index ac8ee05..eba2835 100644 --- a/perl.yaml +++ b/perl.yaml @@ -9,7 +9,7 @@ data: and efficiency. While it is used to do a lot of different things, Perl's most common applications are system administration utilities and web programming. - This module has disabled SysteTap and groff support. + This module has disabled SystemTap and groff support. license: module: [ MIT ] dependencies: From 518f19c7124bf26f5fa30316b39af1f9ebe76580 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Fri, 18 Aug 2017 15:19:18 +0200 Subject: [PATCH 18/30] Work around: Build-require host explicitly --- perl.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/perl.yaml b/perl.yaml index eba2835..f83059a 100644 --- a/perl.yaml +++ b/perl.yaml @@ -16,6 +16,9 @@ data: buildrequires: platform: master perl-bootstrap: master + # Explicitly require transitive dependencies to work around + # . + host: master requires: platform: master references: From f2f23e0d98951fa5ad1b20927ba8de0f4e567116 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Tue, 22 Aug 2017 10:56:40 +0200 Subject: [PATCH 19/30] Formalize profile descriptions --- perl.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/perl.yaml b/perl.yaml index f83059a..d80b274 100644 --- a/perl.yaml +++ b/perl.yaml @@ -26,12 +26,12 @@ data: documentation: https://github.com/modularity-modules/perl tracker: https://github.com/modularity-modules/perl/issues profiles: - # Interpreter and all Perl modules bundled within upstream Perl default: + description: Interpreter and all Perl modules bundled within upstream Perl. rpms: - perl - # Only the interpreter as standalone executable minimal: + description: Only the interpreter as a standalone executable. rpms: - perl-interpreter api: From ce8b610331e6d4485d61776ecd9a06e7738d707f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20=C5=A0abata?= Date: Mon, 18 Sep 2017 10:52:58 +0200 Subject: [PATCH 20/30] Fake-rebuild to work around MBS issues MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Petr Šabata From ac6377fca658e99004d00048dda289e1e49e143b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20=C5=A0abata?= Date: Tue, 19 Sep 2017 09:48:13 +0200 Subject: [PATCH 21/30] Fake-rebuild to work around MBS issues, take two MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Petr Šabata From 8004b8499933850a7c33fc27c118d8009d5c47ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Mon, 2 Oct 2017 13:16:48 +0200 Subject: [PATCH 22/30] Rebuild with perl-5.26.1 From b8d06950dbab64e19bd922072b00142f7fcf4bc8 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Fri, 27 Oct 2017 10:35:18 +0200 Subject: [PATCH 23/30] Disable optional tests for perl-Test-Simple --- perl.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/perl.yaml b/perl.yaml index d80b274..ec7321e 100644 --- a/perl.yaml +++ b/perl.yaml @@ -170,6 +170,7 @@ data: %_without_perl_Software_License_enables_optional_test 1 %_without_perl_Sys_Syslog_enables_optional_test 1 %_without_perl_Test_Harness_enables_optional_test 1 + %_without_perl_Test_Simple_enables_optional_test 1 %_without_perl_URI_enables_Business_ISBN 1 components: rpms: From bf05c52a3384fd86bdf8bce6a2ac3712cb926fb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Fri, 10 Nov 2017 14:38:06 +0100 Subject: [PATCH 24/30] Remove duplicated perl-Time-HiRes entries --- perl.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/perl.yaml b/perl.yaml index ec7321e..eb6de01 100644 --- a/perl.yaml +++ b/perl.yaml @@ -145,8 +145,6 @@ data: - perl-threads - perl-threads-shared - perl-Time-HiRes - - perl-Time-HiRes - - perl-Time-HiRes - perl-Time-Local - perl-Time-Piece - perl-Unicode-Collate From dbfc944b2ad1c4f25537d76a958f6a020bcc1e14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Wed, 17 Jan 2018 09:30:42 +0100 Subject: [PATCH 25/30] Platform provides groff and systemtap --- perl.yaml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/perl.yaml b/perl.yaml index eb6de01..a105d29 100644 --- a/perl.yaml +++ b/perl.yaml @@ -9,7 +9,6 @@ data: and efficiency. While it is used to do a lot of different things, Perl's most common applications are system administration utilities and web programming. - This module has disabled SystemTap and groff support. license: module: [ MIT ] dependencies: @@ -154,9 +153,9 @@ data: buildopts: rpms: macros: | - %_without_perl_enables_groff 1 + %_wit_perl_enables_groff 1 %_without_perl_enables_syslog_test 1 - %_without_perl_enables_systemtap 1 + %_with_perl_enables_systemtap 1 %_without_perl_enables_tcsh 1 %_without_perl_Compress_Bzip2_enables_optional_test 1 %_without_perl_CPAN_Meta_Requirements_enables_optional_test 1 From f28a58c634cf927c2d34512fa01d3eb36bd8a5af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Wed, 17 Jan 2018 09:32:54 +0100 Subject: [PATCH 26/30] Transitive module build-requires are honored now --- perl.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/perl.yaml b/perl.yaml index a105d29..f408a33 100644 --- a/perl.yaml +++ b/perl.yaml @@ -15,9 +15,6 @@ data: buildrequires: platform: master perl-bootstrap: master - # Explicitly require transitive dependencies to work around - # . - host: master requires: platform: master references: From 50ea890f2789589aee47d00d7005f59e663630b1 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Tue, 30 Jan 2018 09:58:22 +0100 Subject: [PATCH 27/30] Fix typo in macro --- perl.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/perl.yaml b/perl.yaml index f408a33..6b67d30 100644 --- a/perl.yaml +++ b/perl.yaml @@ -150,7 +150,7 @@ data: buildopts: rpms: macros: | - %_wit_perl_enables_groff 1 + %_with_perl_enables_groff 1 %_without_perl_enables_syslog_test 1 %_with_perl_enables_systemtap 1 %_without_perl_enables_tcsh 1 From 165a7ce0ba2bb5a6f5be77f1344a9a1559483ac5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Wed, 14 Mar 2018 16:21:06 +0100 Subject: [PATCH 28/30] Migrate to modulemd v2 and expand to all platforms --- perl.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/perl.yaml b/perl.yaml index 6b67d30..c61c546 100644 --- a/perl.yaml +++ b/perl.yaml @@ -1,5 +1,5 @@ document: modulemd -version: 1 +version: 2 data: summary: Practical Extraction and Report Language description: > @@ -13,10 +13,10 @@ data: module: [ MIT ] dependencies: buildrequires: - platform: master + platform: [] perl-bootstrap: master requires: - platform: master + platform: [] references: community: https://docs.pagure.org/modularity/ documentation: https://github.com/modularity-modules/perl From 6e2da39506bcb7dc971072cb7d86aab71b78aa9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Fri, 6 Apr 2018 11:54:18 +0200 Subject: [PATCH 29/30] Fix v2 modulemd syntax --- perl.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/perl.yaml b/perl.yaml index c61c546..a670ca2 100644 --- a/perl.yaml +++ b/perl.yaml @@ -12,11 +12,11 @@ data: license: module: [ MIT ] dependencies: - buildrequires: - platform: [] - perl-bootstrap: master - requires: - platform: [] + - buildrequires: + platform: [] + perl-bootstrap: [master] + requires: + platform: [] references: community: https://docs.pagure.org/modularity/ documentation: https://github.com/modularity-modules/perl From 812b35f9b5434dcdd98abd016c7874e60c214bbd Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Wed, 13 Feb 2019 10:59:03 +0100 Subject: [PATCH 30/30] Unsupported --- .gitignore | 1 - Dockerfile | 11 - Makefile | 15 -- README.md | 19 -- dead.package | 1 + perl.yaml | 496 ---------------------------------------- repos/fedora.repo | 4 - repos/perl.repo | 4 - sources | 0 tests/Makefile | 6 - tests/config.yaml | 13 -- tests/cpan.py | 47 ---- tests/microdnfinside.py | 35 --- tests/rpmvalidator.py | 56 ----- tests/sanity1.py | 45 ---- tests/simpleTest.py | 47 ---- 16 files changed, 1 insertion(+), 799 deletions(-) delete mode 100644 .gitignore delete mode 100644 Dockerfile delete mode 100644 Makefile delete mode 100644 README.md create mode 100644 dead.package delete mode 100644 perl.yaml delete mode 100644 repos/fedora.repo delete mode 100644 repos/perl.repo delete mode 100644 sources delete mode 100644 tests/Makefile delete mode 100644 tests/config.yaml delete mode 100644 tests/cpan.py delete mode 100644 tests/microdnfinside.py delete mode 100644 tests/rpmvalidator.py delete mode 100644 tests/sanity1.py delete mode 100644 tests/simpleTest.py diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 485dee6..0000000 --- a/.gitignore +++ /dev/null @@ -1 +0,0 @@ -.idea diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index b95208c..0000000 --- a/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM baseruntime/baseruntime:latest - -COPY repos/* /etc/yum.repos.d/ - -RUN microdnf --nodocs --enablerepo perl install perl perl-devel && \ - microdnf clean all - -EXPOSE 8080 - - -CMD /bin/bash diff --git a/Makefile b/Makefile deleted file mode 100644 index e02c0da..0000000 --- a/Makefile +++ /dev/null @@ -1,15 +0,0 @@ -IMAGE_NAME = perl - -MODULEMDURL=file://perl.yaml - -default: run - -build: - docker build --tag=$(IMAGE_NAME) . - -run: build - docker run -d $(IMAGE_NAME) - -test: build - cd tests; MODULE=docker MODULEMD=$(MODULEMDURL) URL="docker=$(IMAGE_NAME)" make all - cd tests; MODULE=rpm MODULEMD=$(MODULEMDURL) URL="docker=$(IMAGE_NAME)" make all diff --git a/README.md b/README.md deleted file mode 100644 index 1e5b610..0000000 --- a/README.md +++ /dev/null @@ -1,19 +0,0 @@ -# perl module - -[**Package DB** (owner)](https://admin.fedoraproject.org/pkgdb/package/modules/perl/) | -[**F26 modulemd** (source)](http://pkgs.fedoraproject.org/cgit/modules/perl.git/tree/perl.yaml?h=f26) | -[**PDC** (result)](https://pdc.fedoraproject.org/rest_api/v1/unreleasedvariants/?active=True&variant_name=perl) - - -Module containing important perl packages. - -## Current state - -| State | Description | -|-------|-------------| -| ✓ YES | **Build passes** in the infra (all build deps are ok) | -| ✓ YES | **Installs** on the Base Runtime (all runtime deps are ok) | -| ✓ YES | **No bootstrap** - uses only proper modules | -| ✓ YES | General **tests are in dist-git** | -| ✓ YES | General **tests pass** | -| ✗ NO | Meets the **Fedora Module Packaging Guidelines** | diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..cfb6fca --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +Unsupported diff --git a/perl.yaml b/perl.yaml deleted file mode 100644 index a670ca2..0000000 --- a/perl.yaml +++ /dev/null @@ -1,496 +0,0 @@ -document: modulemd -version: 2 -data: - summary: Practical Extraction and Report Language - description: > - Perl is a high-level programming language with roots in C, sed, awk - and shell scripting. Perl is good at handling processes and files, and - is especially good at handling text. Perl's hallmarks are practicality - and efficiency. While it is used to do a lot of different things, - Perl's most common applications are system administration utilities - and web programming. - license: - module: [ MIT ] - dependencies: - - buildrequires: - platform: [] - perl-bootstrap: [master] - requires: - platform: [] - references: - community: https://docs.pagure.org/modularity/ - documentation: https://github.com/modularity-modules/perl - tracker: https://github.com/modularity-modules/perl/issues - profiles: - default: - description: Interpreter and all Perl modules bundled within upstream Perl. - rpms: - - perl - minimal: - description: Only the interpreter as a standalone executable. - rpms: - - perl-interpreter - api: - rpms: - - perl - - perl-Archive-Tar - - perl-Attribute-Handlers - - perl-autodie - - perl-B-Debug - - perl-bignum - - perl-Carp - - perl-Compress-Raw-Bzip2 - - perl-Compress-Raw-Zlib - - perl-Config-Perl-V - - perl-constant - - perl-CPAN - - perl-CPAN-Meta - - perl-CPAN-Meta-Requirements - - perl-CPAN-Meta-YAML - - perl-Data-Dumper - - perl-DB_File - - perl-devel - - perl-Devel-Peek - - perl-Devel-PPPort - - perl-Devel-SelfStubber - - perl-Digest - - perl-Digest-MD5 - - perl-Digest-SHA - - perl-Encode - - perl-Encode-devel - - perl-encoding - - perl-Env - - perl-Errno - - perl-experimental - - perl-Exporter - - perl-ExtUtils-CBuilder - - perl-ExtUtils-Command - - perl-ExtUtils-Embed - - perl-ExtUtils-Install - - perl-ExtUtils-MakeMaker - - perl-ExtUtils-Manifest - - perl-ExtUtils-Miniperl - - perl-ExtUtils-MM-Utils - - perl-ExtUtils-ParseXS - - perl-File-Fetch - - perl-File-Path - - perl-File-Temp - - perl-Filter - - perl-Filter-Simple - - perl-generators - - perl-Getopt-Long - - perl-HTTP-Tiny - - perl-interpreter - - perl-IO - - perl-IO-Compress - - perl-IO-Socket-IP - - perl-IO-Zlib - - perl-IPC-Cmd - - perl-IPC-SysV - - perl-JSON-PP - - perl-libnet - - perl-libnetcfg - - perl-libs - - perl-Locale-Codes - - perl-Locale-Maketext - - perl-Locale-Maketext-Simple - - perl-macros - - perl-Math-BigInt - - perl-Math-BigInt-FastCalc - - perl-Math-BigRat - - perl-Math-Complex - - perl-Memoize - - perl-MIME-Base64 - - perl-Module-CoreList - - perl-Module-CoreList-tools - - perl-Module-Load - - perl-Module-Load-Conditional - - perl-Module-Loaded - - perl-Module-Metadata - - perl-Net-Ping - - perl-open - - perl-Params-Check - - perl-parent - - perl-PathTools - - perl-Perl-OSType - - perl-perlfaq - - perl-PerlIO-via-QuotedPrint - - perl-Pod-Checker - - perl-Pod-Escapes - - perl-Pod-Html - - perl-Pod-Parser - - perl-Pod-Perldoc - - perl-Pod-Simple - - perl-Pod-Usage - - perl-podlators - - perl-Scalar-List-Utils - - perl-SelfLoader - - perl-Socket - - perl-Storable - - perl-Sys-Syslog - - perl-Term-ANSIColor - - perl-Term-Cap - - perl-Test - - perl-Test-Harness - - perl-Test-Simple - - perl-tests - - perl-Text-Balanced - - perl-Text-ParseWords - - perl-Text-Tabs+Wrap - - perl-Thread-Queue - - perl-threads - - perl-threads-shared - - perl-Time-HiRes - - perl-Time-Local - - perl-Time-Piece - - perl-Unicode-Collate - - perl-Unicode-Normalize - - perl-utils - - perl-version - buildopts: - rpms: - macros: | - %_with_perl_enables_groff 1 - %_without_perl_enables_syslog_test 1 - %_with_perl_enables_systemtap 1 - %_without_perl_enables_tcsh 1 - %_without_perl_Compress_Bzip2_enables_optional_test 1 - %_without_perl_CPAN_Meta_Requirements_enables_optional_test 1 - %_without_perl_IPC_System_Simple_enables_optional_test 1 - %_without_perl_LWP_MediaTypes_enables_mailcap 1 - %_without_perl_Module_Build_enables_optional_test 1 - %_without_perl_Perl_OSType_enables_optional_test 1 - %_without_perl_Pod_Perldoc_enables_tk_test 1 - %_without_perl_Software_License_enables_optional_test 1 - %_without_perl_Sys_Syslog_enables_optional_test 1 - %_without_perl_Test_Harness_enables_optional_test 1 - %_without_perl_Test_Simple_enables_optional_test 1 - %_without_perl_URI_enables_Business_ISBN 1 - components: - rpms: - # We can rebuild in a random order because we have all binary - # packages available from perl-bootstrap. - perl: - rationale: The Perl interpreter. - ref: master - perl-Algorithm-Diff: - rationale: A run-time dependency. - ref: master - perl-Archive-Tar: - rationale: Core Perl API. - ref: master - perl-Archive-Zip: - rationale: A run-time dependency. - ref: master - perl-autodie: - rationale: Core Perl API. - ref: master - perl-B-Debug: - rationale: Core Perl API. - ref: master - perl-bignum: - rationale: Core Perl API. - ref: master - perl-Carp: - rationale: Core Perl API. - ref: master - perl-Compress-Bzip2: - rationale: A run-time dependency. - ref: master - perl-Compress-Raw-Bzip2: - rationale: Core Perl API. - ref: master - perl-Compress-Raw-Zlib: - rationale: Core Perl API. - ref: master - perl-Config-Perl-V: - rationale: Core Perl API. - ref: master - perl-constant: - rationale: Core Perl API. - ref: master - perl-CPAN: - rationale: Core Perl API. - ref: master - perl-CPAN-Meta: - rationale: Core Perl API. - ref: master - perl-CPAN-Meta-Requirements: - rationale: Core Perl API. - ref: master - perl-CPAN-Meta-YAML: - rationale: Core Perl API. - ref: master - perl-Data-Dumper: - rationale: Core Perl API. - ref: master - perl-Data-OptList: - rationale: A run-time dependency. - ref: master - perl-Data-Section: - rationale: A run-time dependency. - ref: master - perl-DB_File: - rationale: Core Perl API. - ref: master - perl-Devel-PPPort: - rationale: Core Perl API. - ref: master - perl-Devel-Size: - rationale: A run-time dependency. - ref: master - perl-Digest: - rationale: Core Perl API. - ref: master - perl-Digest-MD5: - rationale: Core Perl API. - ref: master - perl-Digest-SHA: - rationale: Core Perl API. - ref: master - perl-Encode: - rationale: Core Perl API. - ref: master - perl-Env: - rationale: Core Perl API. - ref: master - perl-experimental: - rationale: Core Perl API. - ref: master - perl-Exporter: - rationale: Core Perl API. - ref: master - perl-ExtUtils-CBuilder: - rationale: Core Perl API. - ref: master - perl-ExtUtils-Install: - rationale: Core Perl API. - ref: master - perl-ExtUtils-MakeMaker: - rationale: Core Perl API. - ref: master - perl-ExtUtils-Manifest: - rationale: Core Perl API. - ref: master - perl-ExtUtils-ParseXS: - rationale: Core Perl API. - ref: master - perl-Fedora-VSP: - rationale: A run-time dependency. - ref: master - perl-File-Fetch: - rationale: Core Perl API. - ref: master - perl-File-HomeDir: - rationale: A run-time dependency. - ref: master - perl-File-Path: - rationale: Core Perl API. - ref: master - perl-File-Temp: - rationale: Core Perl API. - ref: master - perl-File-Which: - rationale: A run-time dependency. - ref: master - perl-Filter: - rationale: Core Perl API. - ref: master - perl-Filter-Simple: - rationale: Core Perl API. - ref: master - perl-generators: - rationale: RPM dependency generator. - ref: master - perl-Getopt-Long: - rationale: Core Perl API. - ref: master - perl-HTTP-Tiny: - rationale: Core Perl API. - ref: master - perl-inc-latest: - rationale: A run-time dependency. - ref: master - perl-IO-Compress: - rationale: Core Perl API. - ref: master - perl-IO-Socket-IP: - rationale: Core Perl API. - ref: master - perl-IPC-Cmd: - rationale: Core Perl API. - ref: master - perl-IPC-System-Simple: - rationale: A run-time dependency. - ref: master - perl-IPC-SysV: - rationale: Core Perl API. - ref: master - perl-JSON-PP: - rationale: Core Perl API. - ref: master - perl-libnet: - rationale: Core Perl API. - ref: master - perl-local-lib: - rationale: A run-time dependency. - ref: master - perl-Locale-Codes: - rationale: Core Perl API. - ref: master - perl-Locale-Maketext: - rationale: Core Perl API. - ref: master - perl-Math-BigInt: - rationale: Core Perl API. - ref: master - perl-Math-BigInt-FastCalc: - rationale: Core Perl API. - ref: master - perl-Math-BigRat: - rationale: Core Perl API. - ref: master - perl-MIME-Base64: - rationale: Core Perl API. - ref: master - perl-Module-Build: - rationale: A run-time dependency. - ref: master - perl-Module-CoreList: - rationale: Core Perl API. - ref: master - perl-Module-Load: - rationale: Core Perl API. - ref: master - perl-Module-Load-Conditional: - rationale: Core Perl API. - ref: master - perl-Module-Metadata: - rationale: Core Perl API. - ref: master - perl-MRO-Compat: - rationale: A run-time dependency. - ref: master - perl-Package-Generator: - rationale: A run-time dependency. - ref: master - perl-Params-Check: - rationale: Core Perl API. - ref: master - perl-Params-Util: - rationale: A run-time dependency. - ref: master - perl-parent: - rationale: Core Perl API. - ref: master - perl-PathTools: - rationale: Core Perl API. - ref: master - perl-Perl-OSType: - rationale: Core Perl API. - ref: master - perl-perlfaq: - rationale: Core Perl API. - ref: master - perl-PerlIO-via-QuotedPrint: - rationale: Core Perl API. - ref: master - perl-Pod-Checker: - rationale: Core Perl API. - ref: master - perl-Pod-Escapes: - rationale: Core Perl API. - ref: master - perl-Pod-Parser: - rationale: Core Perl API. - ref: master - perl-Pod-Perldoc: - rationale: Core Perl API. - ref: master - perl-Pod-Simple: - rationale: Core Perl API. - ref: master - perl-Pod-Usage: - rationale: Core Perl API. - ref: master - perl-podlators: - rationale: Core Perl API. - ref: master - perl-Scalar-List-Utils: - rationale: Core Perl API. - ref: master - perl-Socket: - rationale: Core Perl API. - ref: master - perl-Software-License: - rationale: A run-time dependency. - ref: master - perl-Storable: - rationale: Core Perl API. - ref: master - perl-Sub-Exporter: - rationale: A run-time dependency. - ref: master - perl-Sub-Install: - rationale: A run-time dependency. - ref: master - perl-Sys-Syslog: - rationale: Core Perl API. - ref: master - perl-Term-ANSIColor: - rationale: Core Perl API. - ref: master - perl-Term-Cap: - rationale: Core Perl API. - ref: master - perl-Test-Harness: - rationale: Core Perl API. - ref: master - perl-Test-Simple: - rationale: Core Perl API. - ref: master - perl-Text-Balanced: - rationale: Core Perl API. - ref: master - perl-Text-Diff: - rationale: A run-time dependency. - ref: master - perl-Text-Glob: - rationale: A run-time dependency. - ref: master - perl-Text-ParseWords: - rationale: Core Perl API. - ref: master - perl-Text-Tabs+Wrap: - rationale: Core Perl API. - ref: master - perl-Text-Template: - rationale: A run-time dependency. - ref: master - perl-Thread-Queue: - rationale: Core Perl API. - ref: master - perl-threads: - rationale: Core Perl API. - ref: master - perl-threads-shared: - rationale: Core Perl API. - ref: master - perl-Time-HiRes: - rationale: Core Perl API. - ref: master - perl-Time-Local: - rationale: Core Perl API. - ref: master - perl-Unicode-Collate: - rationale: Core Perl API. - ref: master - perl-Unicode-Normalize: - rationale: Core Perl API. - ref: master - perl-URI: - rationale: A run-time dependency. - ref: master - perl-version: - rationale: Core Perl API. - ref: master diff --git a/repos/fedora.repo b/repos/fedora.repo deleted file mode 100644 index 3404240..0000000 --- a/repos/fedora.repo +++ /dev/null @@ -1,4 +0,0 @@ -[fedora] -name=fedora -baseurl=https://mirrors.nic.cz/fedora/linux/development/26/Everything/x86_64/os/ -enabled=0 diff --git a/repos/perl.repo b/repos/perl.repo deleted file mode 100644 index 63394b1..0000000 --- a/repos/perl.repo +++ /dev/null @@ -1,4 +0,0 @@ -[perl] -name=perl -baseurl=https://kojipkgs.fedoraproject.org/repos/module-fcd86adc7a9c7e0a/latest/x86_64/ -enabled=0 diff --git a/sources b/sources deleted file mode 100644 index e69de29..0000000 diff --git a/tests/Makefile b/tests/Makefile deleted file mode 100644 index 8fd8ae7..0000000 --- a/tests/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -MODULE_LINT=/usr/share/moduleframework/tools/modulelint.py -CMD=python -m avocado run --filter-by-tags=-WIP $(MODULE_LINT) *.py - -# -all: - $(CMD) diff --git a/tests/config.yaml b/tests/config.yaml deleted file mode 100644 index f121e60..0000000 --- a/tests/config.yaml +++ /dev/null @@ -1,13 +0,0 @@ -document: modularity-testing -version: 1 -name: perl -modulemd-url: https://src.fedoraproject.org/cgit/modules/perl.git/plain/perl.yaml -service: - port: 8080 -module: - docker: - start: "docker run -it" - container: perl - rpm: - repos: - - http://mirror.vutbr.cz/fedora/releases/26/Everything/x86_64/os/ diff --git a/tests/cpan.py b/tests/cpan.py deleted file mode 100644 index 38478b1..0000000 --- a/tests/cpan.py +++ /dev/null @@ -1,47 +0,0 @@ -# -# This Modularity Testing Framework helps you to write tests for modules -# Copyright (C) 2017 Red Hat, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# he Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Authors: Rado Pitonak -# - -from avocado import main -from avocado.core import exceptions -from moduleframework import module_framework -class CpanCheck1(module_framework.AvocadoTest): - """ - :avocado: enable - """ - - def testInstallPerlModule(self): - self.start() - self.run("microdnf --nodocs --enablerepo fedora install -y cpan cpanminus") - self.run("cpanm install --force Error") - self.run("perl -e \"use Error\"") - - def testInstallCModule(self): - self.start() - # install cpan - self.run("microdnf --nodocs --enablerepo fedora install -y cpan cpanminus") - # install gcc and rpm-devel - self.run("microdnf --nodocs --enablerepo fedora install -y gcc rpm-devel") - # install random c module - self.run("cpanm install --force RPM2") - self.run("perl -e \"use RPM2\"") - -if __name__ == '__main__': - main() diff --git a/tests/microdnfinside.py b/tests/microdnfinside.py deleted file mode 100644 index 479487d..0000000 --- a/tests/microdnfinside.py +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# -# This Modularity Testing Framework helps you to write tests for modules -# Copyright (C) 2017 Red Hat, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# he Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Authors: Jan Scotka -# - -from moduleframework import module_framework -import os - - -class microDNFTest(module_framework.AvocadoTest): - """ - :avocado: enable - """ - - def testInstallMicroDNFEmpty(self): - self.start() - self.assertIn("Transaction: (empty)",self.run("microdnf install microdnf", ignore_status=True).stdout) diff --git a/tests/rpmvalidator.py b/tests/rpmvalidator.py deleted file mode 100644 index 8dc7541..0000000 --- a/tests/rpmvalidator.py +++ /dev/null @@ -1,56 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# -# This Modularity Testing Framework helps you to write tests for modules -# Copyright (C) 2017 Red Hat, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# he Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Authors: Jan Scotka -# - -from avocado import main -from moduleframework import module_framework - - -class ExampleRpmValidation(module_framework.AvocadoTest): - """ - :avocado: enable - """ - fhs_base_paths = [ - '/bin', - '/boot', - '/dev', - '/etc', - '/home', - '/lib', - '/lib64', - '/media', - '/mnt', - '/opt', - '/proc', - '/root', - '/run', - '/sbin', - '/sys', - '/srv', - '/tmp', - '/usr/bin' - ] - - def testPaths(self): - self.start() - for directory in self.fhs_base_paths: - self.run("test -d %s" % directory) diff --git a/tests/sanity1.py b/tests/sanity1.py deleted file mode 100644 index 602418c..0000000 --- a/tests/sanity1.py +++ /dev/null @@ -1,45 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# -# This Modularity Testing Framework helps you to write tests for modules -# Copyright (C) 2017 Red Hat, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# he Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Authors: Rado Pitonak -# - -from avocado import main -from avocado.core import exceptions -from moduleframework import module_framework -class SanityCheck1(module_framework.AvocadoTest): - """ - :avocado: enable - """ - - def test1(self): - self.start() - self.run("ls / | grep bin") - - # check if perl is installed in the right version. - def test2PerlVersion(self): - perlVersion = "5.24" - module_framework.skipTestIf("perl" not in self.getActualProfile()) - self.start() - self.run("perl -v | grep " + perlVersion) - - -if __name__ == '__main__': - main() diff --git a/tests/simpleTest.py b/tests/simpleTest.py deleted file mode 100644 index 780e387..0000000 --- a/tests/simpleTest.py +++ /dev/null @@ -1,47 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# -# This Modularity Testing Framework helps you to write tests for modules -# Copyright (C) 2017 Red Hat, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# he Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Authors: Jan Scotka -# - -from moduleframework import module_framework -import os - - -class simpleTests(module_framework.AvocadoTest): - """ - :avocado: enable - """ - - def testPath(self): - print ">>>>>>>>>>>>>> ", module_framework.__file__ - print ">>>>>>>>>>>>>> ", __file__ - - def testAssertIn(self): - self.start() - self.assertIn("sbin", self.run("ls /").stdout) - - def testInsideModule(self): - self.start() - self.assertEqual("a", self.run("echo a").stdout.strip()) - - def testCommandOnHost(self): - self.start() - self.assertEqual("a", self.runHost("echo a").stdout.strip())