From 04ca48d39390ea1c98c1702c619500ba87991dc7 Mon Sep 17 00:00:00 2001 From: Petr Sklenar Date: Tue, 30 Jan 2024 10:28:14 +0000 Subject: [PATCH 1/8] Update plans/nm.fmf --- plans/nm.fmf | 2 -- 1 file changed, 2 deletions(-) diff --git a/plans/nm.fmf b/plans/nm.fmf index fdcfefc..a7141da 100644 --- a/plans/nm.fmf +++ b/plans/nm.fmf @@ -1,6 +1,4 @@ summary: Run Network Manager tests -discover: - how: fmf prepare: how: install package: git-core From 22753edda0280d5d33d7d7e8c714b9d26e791e3f Mon Sep 17 00:00:00 2001 From: Petr Sklenar Date: Tue, 30 Jan 2024 10:34:29 +0000 Subject: [PATCH 2/8] Update Sanity/dummy-run-test/test.sh --- Sanity/dummy-run-test/test.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/Sanity/dummy-run-test/test.sh b/Sanity/dummy-run-test/test.sh index 5f72e3e..7b6caab 100755 --- a/Sanity/dummy-run-test/test.sh +++ b/Sanity/dummy-run-test/test.sh @@ -2,7 +2,6 @@ # vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k . /usr/share/beakerlib/beakerlib.sh || exit 1 - rlJournalStart rlPhaseStartSetup rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" From ded2eee828646c2a56b668ca5026500534bcb6ed Mon Sep 17 00:00:00 2001 From: Bryan Mason Date: Wed, 14 Feb 2024 16:09:24 -0800 Subject: [PATCH 3/8] Regression/cannot-open-log: don't test in RHEL 8.9 and earlier BZ 2207798 was resolved in 2.79-31.el8 which was released in RHEL 8.9, so there's no point in testing older versions, as they are expected to fail. --- Regression/cannot-open-log/main.fmf | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Regression/cannot-open-log/main.fmf b/Regression/cannot-open-log/main.fmf index 80f5389..af349ef 100644 --- a/Regression/cannot-open-log/main.fmf +++ b/Regression/cannot-open-log/main.fmf @@ -7,6 +7,11 @@ component: - dnsmasq recommend: - dnsmasq +adjust: + - enabled: false + when: distro ~< rhel-8.9 + continue: false + because: BZ 2207798 fixed in RHEL 8.9 link: - relates: https://bugzilla.redhat.com/show_bug.cgi?id=2156789 - relates: https://bugzilla.redhat.com/show_bug.cgi?id=2207798 From 03833271beec5440b0fe696bd2198c8b26aa91fa Mon Sep 17 00:00:00 2001 From: Bryan Mason Date: Wed, 28 Feb 2024 16:00:07 -0800 Subject: [PATCH 4/8] Regression/cannot-open-log: don't test in RHEL 9.3 and earlier BZ 2156789 was resolved in 2.85-14.el9 which was released in RHEL 9.3, so there's no point in testing older versions, as they are expected to fail. --- Regression/cannot-open-log/main.fmf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Regression/cannot-open-log/main.fmf b/Regression/cannot-open-log/main.fmf index af349ef..7919d33 100644 --- a/Regression/cannot-open-log/main.fmf +++ b/Regression/cannot-open-log/main.fmf @@ -12,6 +12,10 @@ adjust: when: distro ~< rhel-8.9 continue: false because: BZ 2207798 fixed in RHEL 8.9 + - enabled: false + when: distro ~< rhel-9.3 + continue: false + because: BZ 2156789 fixed in RHEL 9.3 link: - relates: https://bugzilla.redhat.com/show_bug.cgi?id=2156789 - relates: https://bugzilla.redhat.com/show_bug.cgi?id=2207798 From e4aa61f5e55e3b133f6d0c9ed88ffc931dbdfad0 Mon Sep 17 00:00:00 2001 From: Petr Sklenar Date: Mon, 18 Mar 2024 11:52:10 +0000 Subject: [PATCH 5/8] Update Sanity/local-service-host/main.fmf --- Sanity/local-service-host/main.fmf | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Sanity/local-service-host/main.fmf b/Sanity/local-service-host/main.fmf index 256eb30..04d82b9 100644 --- a/Sanity/local-service-host/main.fmf +++ b/Sanity/local-service-host/main.fmf @@ -5,3 +5,8 @@ require: - dnsmasq recommend: - bind-utils +adjust: + - enabled: false + when: distro != rhel-8 + continue: false + From b68594e6f34b5ad54a18452dec6f83b78d4b1241 Mon Sep 17 00:00:00 2001 From: "psklenar@redhat.com" Date: Mon, 27 May 2024 09:33:29 +0200 Subject: [PATCH 6/8] init --- plans/others.fmf | 20 ++++++++++++++++++++ plans/tier1.fmf | 20 ++++++++++++++++++++ plans/tier2-tier3.fmf | 20 ++++++++++++++++++++ 3 files changed, 60 insertions(+) create mode 100644 plans/others.fmf create mode 100644 plans/tier1.fmf create mode 100644 plans/tier2-tier3.fmf diff --git a/plans/others.fmf b/plans/others.fmf new file mode 100644 index 0000000..33a9f2e --- /dev/null +++ b/plans/others.fmf @@ -0,0 +1,20 @@ +/public: + summary: Public other tests + discover: + how: fmf + filter: 'tier: -1 & tier: -2 & tier: -3 & tag: -multihost' + url: "https://src.fedoraproject.org/tests/dnsmasq.git" + execute: + how: tmt + +/internal: + summary: Internal other tests + discover: + how: fmf + filter: 'tier: -1 & tier: -2 & tier: -3 & tag: -multihost' + url: git://pkgs.devel.redhat.com/tests/dnsmasq + adjust: + enabled: false + when: distro == centos-stream or distro == fedora + execute: + how: tmt \ No newline at end of file diff --git a/plans/tier1.fmf b/plans/tier1.fmf new file mode 100644 index 0000000..1cef49c --- /dev/null +++ b/plans/tier1.fmf @@ -0,0 +1,20 @@ +/public: + summary: Public Tier1 tests + discover: + how: fmf + filter: 'tier: 1' + url: "https://src.fedoraproject.org/tests/dnsmasq.git" + execute: + how: tmt + +/internal: + summary: Internal Tier1 tests + discover: + how: fmf + filter: 'tier: 1' + url: git://pkgs.devel.redhat.com/tests/dnsmasq + adjust: + enabled: false + when: distro == centos-stream or distro == fedora + execute: + how: tmt diff --git a/plans/tier2-tier3.fmf b/plans/tier2-tier3.fmf new file mode 100644 index 0000000..b0e9bdd --- /dev/null +++ b/plans/tier2-tier3.fmf @@ -0,0 +1,20 @@ +/public: + summary: Public Tier2 and Tier3 tests + discover: + how: fmf + filter: 'tier: 2 | tier: 3' + url: "https://src.fedoraproject.org/tests/dnsmasq.git" + execute: + how: tmt + +/internal: + summary: Internal Tier2 and Tier3 tests + discover: + how: fmf + filter: 'tier: 2 | tier: 3' + url: git://pkgs.devel.redhat.com/tests/dnsmasq + adjust: + enabled: false + when: distro == centos-stream or distro == fedora + execute: + how: tmt From 6edf64afac4e2e3fc8c1d8a42b343d52a8a99b36 Mon Sep 17 00:00:00 2001 From: Ondrej Mejzlik Date: Thu, 16 Jul 2026 10:15:56 +0200 Subject: [PATCH 7/8] test commit --- README | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README b/README index d2780c4..6dc5554 100644 --- a/README +++ b/README @@ -1 +1 @@ -Repository for dnsmasq CI tests +Repository for dnsmasq CI tests. From 60aebb8a6f4fa982e5ff5bc1601259d088f5be42 Mon Sep 17 00:00:00 2001 From: Ondrej Mejzlik Date: Fri, 17 Jul 2026 09:46:05 +0200 Subject: [PATCH 8/8] disable repo --- .fmf/version | 1 - COMMITMENT | 46 --- LICENSE | 339 ------------------ README | 1 - README.md | 4 +- Regression/cannot-open-log/main.fmf | 23 -- Regression/cannot-open-log/test.sh | 38 -- Regression/dbus-watches/main.fmf | 18 - Regression/dbus-watches/test.sh | 40 --- Regression/dns-large-blocklists/main.fmf | 19 - Regression/dns-large-blocklists/test.sh | 41 --- .../dnssec-domain-redirect-crash/dnssec.conf | 6 - .../dnssec-domain-redirect-crash/main.fmf | 15 - .../dnssec-domain-redirect-crash/test.sh | 57 --- Regression/main.fmf | 2 - .../main.fmf | 27 -- .../runtest.sh | 135 ------- Sanity/dnsmasq-synth-domain/main.fmf | 6 - Sanity/dnsmasq-synth-domain/test.sh | 51 --- Sanity/dummy-run-test/main.fmf | 9 - Sanity/dummy-run-test/test.sh | 29 -- Sanity/local-service-host/main.fmf | 12 - Sanity/local-service-host/test.sh | 120 ------- Sanity/main.fmf | 2 - plans/all.fmf | 7 - plans/nm.fmf | 11 - plans/others.fmf | 20 -- plans/tier1.fmf | 20 -- plans/tier2-tier3.fmf | 20 -- 29 files changed, 1 insertion(+), 1118 deletions(-) delete mode 100644 .fmf/version delete mode 100644 COMMITMENT delete mode 100644 LICENSE delete mode 100644 README delete mode 100644 Regression/cannot-open-log/main.fmf delete mode 100755 Regression/cannot-open-log/test.sh delete mode 100644 Regression/dbus-watches/main.fmf delete mode 100755 Regression/dbus-watches/test.sh delete mode 100644 Regression/dns-large-blocklists/main.fmf delete mode 100755 Regression/dns-large-blocklists/test.sh delete mode 100644 Regression/dnssec-domain-redirect-crash/dnssec.conf delete mode 100644 Regression/dnssec-domain-redirect-crash/main.fmf delete mode 100755 Regression/dnssec-domain-redirect-crash/test.sh delete mode 100644 Regression/main.fmf delete mode 100644 Sanity/dnsmasq-2namespace-dig-check-open-ports/main.fmf delete mode 100755 Sanity/dnsmasq-2namespace-dig-check-open-ports/runtest.sh delete mode 100644 Sanity/dnsmasq-synth-domain/main.fmf delete mode 100755 Sanity/dnsmasq-synth-domain/test.sh delete mode 100644 Sanity/dummy-run-test/main.fmf delete mode 100755 Sanity/dummy-run-test/test.sh delete mode 100644 Sanity/local-service-host/main.fmf delete mode 100755 Sanity/local-service-host/test.sh delete mode 100644 Sanity/main.fmf delete mode 100644 plans/all.fmf delete mode 100644 plans/nm.fmf delete mode 100644 plans/others.fmf delete mode 100644 plans/tier1.fmf delete mode 100644 plans/tier2-tier3.fmf diff --git a/.fmf/version b/.fmf/version deleted file mode 100644 index d00491f..0000000 --- a/.fmf/version +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/COMMITMENT b/COMMITMENT deleted file mode 100644 index a687e0d..0000000 --- a/COMMITMENT +++ /dev/null @@ -1,46 +0,0 @@ -GPL Cooperation Commitment -Version 1.0 - -Before filing or continuing to prosecute any legal proceeding or claim -(other than a Defensive Action) arising from termination of a Covered -License, we commit to extend to the person or entity ('you') accused -of violating the Covered License the following provisions regarding -cure and reinstatement, taken from GPL version 3. As used here, the -term 'this License' refers to the specific Covered License being -enforced. - - However, if you cease all violation of this License, then your - license from a particular copyright holder is reinstated (a) - provisionally, unless and until the copyright holder explicitly - and finally terminates your license, and (b) permanently, if the - copyright holder fails to notify you of the violation by some - reasonable means prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is - reinstated permanently if the copyright holder notifies you of the - violation by some reasonable means, this is the first time you - have received notice of violation of this License (for any work) - from that copyright holder, and you cure the violation prior to 30 - days after your receipt of the notice. - -We intend this Commitment to be irrevocable, and binding and -enforceable against us and assignees of or successors to our -copyrights. - -Definitions - -'Covered License' means the GNU General Public License, version 2 -(GPLv2), the GNU Lesser General Public License, version 2.1 -(LGPLv2.1), or the GNU Library General Public License, version 2 -(LGPLv2), all as published by the Free Software Foundation. - -'Defensive Action' means a legal proceeding or claim that We bring -against you in response to a prior proceeding or claim initiated by -you or your affiliate. - -'We' means each contributor to this repository as of the date of -inclusion of this file, including subsidiaries of a corporate -contributor. - -This work is available under a Creative Commons Attribution-ShareAlike -4.0 International license (https://creativecommons.org/licenses/by-sa/4.0/). diff --git a/LICENSE b/LICENSE deleted file mode 100644 index d159169..0000000 --- a/LICENSE +++ /dev/null @@ -1,339 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Lesser General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - 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 - the 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. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. diff --git a/README b/README deleted file mode 100644 index 6dc5554..0000000 --- a/README +++ /dev/null @@ -1 +0,0 @@ -Repository for dnsmasq CI tests. diff --git a/README.md b/README.md index 4ea8e5c..bd55c47 100644 --- a/README.md +++ b/README.md @@ -1,3 +1 @@ -# dnsmasq - -Fedora dnsmasq tests +Public tests have been moved to: https://gitlab.com/redhat/centos-stream/tests/ diff --git a/Regression/cannot-open-log/main.fmf b/Regression/cannot-open-log/main.fmf deleted file mode 100644 index 7919d33..0000000 --- a/Regression/cannot-open-log/main.fmf +++ /dev/null @@ -1,23 +0,0 @@ -summary: dnsmasq cannot open log /var/log/dnsmasq.log -contact: Petr Sklenar -test: ./test.sh -framework: beakerlib -tier: 1 -component: - - dnsmasq -recommend: - - dnsmasq -adjust: - - enabled: false - when: distro ~< rhel-8.9 - continue: false - because: BZ 2207798 fixed in RHEL 8.9 - - enabled: false - when: distro ~< rhel-9.3 - continue: false - because: BZ 2156789 fixed in RHEL 9.3 -link: - - relates: https://bugzilla.redhat.com/show_bug.cgi?id=2156789 - - relates: https://bugzilla.redhat.com/show_bug.cgi?id=2207798 -extra-nitrate: TC#0615607 -id: ce714969-217c-4bc6-9091-ee821236ed96 diff --git a/Regression/cannot-open-log/test.sh b/Regression/cannot-open-log/test.sh deleted file mode 100755 index c85ead5..0000000 --- a/Regression/cannot-open-log/test.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -: ${DELAY:=1} - -rlJournalStart - rlPhaseStartSetup - rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" - rlRun "pushd $tmp" - rlRun "set -o pipefail" - rlFileBackup --missing-ok /etc/dnsmasq.d/log.conf - rlFileBackup --missing-ok /var/log/dnsmasq.log - echo "log-facility=/var/log/dnsmasq.log" > /etc/dnsmasq.d/log.conf - rlPhaseEnd - - rlPhaseStartTest - rlRun "systemctl enable dnsmasq" - rlRun "systemctl start dnsmasq" - sleep $DELAY - rlRun "systemctl status dnsmasq" - rlRun "systemctl restart dnsmasq" - sleep $DELAY - rlRun "ls -l /var/log/dnsmasq.log" - rlRun "systemctl disable dnsmasq" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -f /var/log/dnsmasq.log" - rlRun "rm -f /etc/dnsmasq.d/log.conf" - rlRun "rm -r $tmp" 0 "Remove tmp directory" - rlFileRestore - rlPhaseEnd -echo "debug:::::::::" -cat /var/log/audit/audit.log |grep den -echo "end of debug" -rlJournalEnd diff --git a/Regression/dbus-watches/main.fmf b/Regression/dbus-watches/main.fmf deleted file mode 100644 index ee9baea..0000000 --- a/Regression/dbus-watches/main.fmf +++ /dev/null @@ -1,18 +0,0 @@ -summary: Restart dbus.service while dnsmasq is using it. -description: | - Start dnsmasq with dbus enabled. Stop dbus service when dnsmasq keeps running. - Ensure dnsmasq survives the restart. - - This test restarts dbus-broker.service, which is not handled well by other dbus - services, including NetworkManager. - - Reproduces https://bugzilla.redhat.com/show_bug.cgi?id=2186468 -test: ./test.sh -framework: beakerlib -require: dnsmasq -recommend: - - bind-utils - - dnsmasq - - dbus-broker - - systemd -enabled: false diff --git a/Regression/dbus-watches/test.sh b/Regression/dbus-watches/test.sh deleted file mode 100755 index a9bbcc3..0000000 --- a/Regression/dbus-watches/test.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -rlJournalStart - rlPhaseStartSetup - rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" - rlRun "pushd $tmp" - rlRun "set -o pipefail" - rlFileBackup --missing-ok /etc/dnsmasq.d/dbus.conf - rlRun "echo 'enable-dbus=uk.org.thekelleys.dnsmasq.test' > /etc/dnsmasq.d/dbus.conf" - rlServiceStart "dbus-broker" - rlServiceStart "dnsmasq" - rlPhaseEnd - - rlPhaseStartTest - rlRun "busctl status uk.org.thekelleys.dnsmasq.test" - sleep 1 - rlServiceStop "dbus-broker" - rlServiceStart "dbus-broker" - sleep 10 - rlRun -s "dig @localhost localhost" - rlRun "lsof -np $(pidof dnsmasq)" - rlRun "busctl list" - # After dbus restart dnsmasq disconnects from DBus - # it does not connect back. - rlRun "busctl status uk.org.thekelleys.dnsmasq.test" 0,1 - rlServiceStatus "dnsmasq" - rlAssertGrep "status: NOERROR" "$rlRun_LOG" - rlPhaseEnd - - rlPhaseStartCleanup - rlServiceRestore "dnsmasq" - rlServiceRestore "dbus-broker" - rlRun "popd" - rlRun "rm -r $tmp" 0 "Remove tmp directory" - rlRun "rm -f /etc/dnsmasq.d/dbus.conf" - rlFileRestore - rlPhaseEnd -rlJournalEnd diff --git a/Regression/dns-large-blocklists/main.fmf b/Regression/dns-large-blocklists/main.fmf deleted file mode 100644 index 6532867..0000000 --- a/Regression/dns-large-blocklists/main.fmf +++ /dev/null @@ -1,19 +0,0 @@ -summary: Generate large blocklist and check it parses fast -description: | - Try parsing long blocklist and test it does not take extended time. - Some people use quite long blocklist files. - - Related: https://bugzilla.redhat.com/show_bug.cgi?id=2209031 -test: ./test.sh -framework: beakerlib -require: - - dnsmasq -tier: 1 -component: - - dnsmasq -recommend: - - dnsmasq -link: - - relates: https://bugzilla.redhat.com/show_bug.cgi?id=2209031 -extra-nitrate: TC#0615770 -id: 9b174917-0329-46be-b539-63f938fb18b6 diff --git a/Regression/dns-large-blocklists/test.sh b/Regression/dns-large-blocklists/test.sh deleted file mode 100755 index 6253294..0000000 --- a/Regression/dns-large-blocklists/test.sh +++ /dev/null @@ -1,41 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -generate() -{ - local TEMPLATE="$1" - local FILE="$2" - for I in {1..100000}; do - printf "$TEMPLATE" $RANDOM $RANDOM >> "$FILE" - done -} - -rlJournalStart - rlPhaseStartSetup - rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" - rlRun "pushd $tmp" - rlRun "set -o pipefail" - rlRun "generate 'address=/block.%x.%x.test/0.0.0.0\n' block-100k-ipv4.conf" - rlRun "generate 'address=/block.%x.%x.test/::\n' block-100k-ipv6.conf" - rlRun "generate 'address=/block.%x.%x.test/#\n' block-100k-any.conf" - rlRun "generate 'local=/local.%x.%x.test/\n' local-100k.conf" - rlRun "tail local-100k.conf" - rlPhaseEnd - - rlPhaseStartTest - TIMEOUT=20 - rlRun "time timeout $TIMEOUT dnsmasq --test --conf-file=block-100k-ipv4.conf" - rlRun "time timeout $TIMEOUT dnsmasq --test --conf-file=block-100k-ipv6.conf" - rlRun "time timeout $TIMEOUT dnsmasq --test --conf-file=local-100k.conf" - if rlIsRHEL '>=9' || rlIsFedora; then - # This feature is not present on RHEL8 and earlier - rlRun "time timeout $TIMEOUT dnsmasq --test --conf-file=block-100k-any.conf" - fi - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $tmp" 0 "Remove tmp directory" - rlPhaseEnd -rlJournalEnd diff --git a/Regression/dnssec-domain-redirect-crash/dnssec.conf b/Regression/dnssec-domain-redirect-crash/dnssec.conf deleted file mode 100644 index 705dbae..0000000 --- a/Regression/dnssec-domain-redirect-crash/dnssec.conf +++ /dev/null @@ -1,6 +0,0 @@ -# https://bugzilla.redhat.com/show_bug.cgi?id=2182342 -conf-file=/usr/share/dnsmasq/trust-anchors.conf -dnssec -server=/example.net/127.0.0.2 -# extra test debug -log-queries diff --git a/Regression/dnssec-domain-redirect-crash/main.fmf b/Regression/dnssec-domain-redirect-crash/main.fmf deleted file mode 100644 index 4aaf1ca..0000000 --- a/Regression/dnssec-domain-redirect-crash/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: Reproduce crash on dnssec validation with extra domain -description: | - Configure dnssec validating resolver. - Have one extra domain directed to other nameserver, its target is unimportant. - - Related: https://bugzilla.redhat.com/show_bug.cgi?id=2182342 -test: ./test.sh -framework: beakerlib -require: - - dnsmasq -recommend: - - bind-utils - - valgrind - - yum-utils -enabled: false diff --git a/Regression/dnssec-domain-redirect-crash/test.sh b/Regression/dnssec-domain-redirect-crash/test.sh deleted file mode 100755 index 1b924e6..0000000 --- a/Regression/dnssec-domain-redirect-crash/test.sh +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k expandtab ts=4 -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -RESOLV_CONF_BACKUP="" - -# Filter flags from dig output -bu_dig_flags() -{ - sed -e 's/^;; flags:\([^;]*\);.*/\1/' -e t -e d $@ -} - -bu_dig_ad() -{ - rlRun -s "$1" ${2:-0} - rlRun "bu_dig_flags ${rlRun_LOG} | grep -w ad" -} - -rlJournalStart - rlPhaseStartSetup - rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" - rlFileBackup --missing-ok /etc/dnsmasq.d/dnssec.conf - rlRun "cp -p dnssec.conf /etc/dnsmasq.d/dnssec.conf" - rlRun "pushd $tmp" - if ls -l /etc/resolv.conf | grep -q systemd/resolve; then - # systemd-resolved is breaking DNSSEC validation. Avoid it during test. - RESOLV_CONF_BACKUP="/etc/resolv-resolved.$$.conf" - mv /etc/resolv.conf "$RESOLV_CONF_BACKUP" - rlRun "ln -s /run/NetworkManager/no-stub-resolv.conf /etc/resolv.conf" - fi - rlRun "dig +dnssec +nocrypto -t SOA . | grep RRSIG" 0 "Check infrastructure has working DNSSEC" - rlRun "debuginfo-install -y dnsmasq" - rlRun "valgrind --log-file=$tmp/dnsmasq.valgrind dnsmasq -k --log-facility=$tmp/dnsmasq.log &" - DNSMASQ_PID=$! - sleep 2 - rlPhaseEnd - - rlPhaseStartTest - rlRun "ps u -p $DNSMASQ_PID" - bu_dig_ad "dig @localhost example.com" - bu_dig_ad "dig @localhost example.org" - bu_dig_ad "dig +tcp @localhost www.example.com" - bu_dig_ad "dig +tcp @localhost www.example.org" - rlRun "ps u -p $DNSMASQ_PID" - [ "$DEBUG" = y ] && PS1="test-debug $PS1" bash -i - rlPhaseEnd - - rlPhaseStartCleanup - rlBundleLogs dnsmasq dnsmasq.valgrind dnsmasq.log - rlRun "popd" - rlRun "kill $DNSMASQ_PID" 0,1 - [ -n "$RESOLV_CONF_BACKUP" ] && mv -f "$RESOLV_CONF_BACKUP" /etc/resolv.conf - rlRun "rm -r $tmp" 0 "Remove tmp directory" - rlRun "rm -f /etc/dnsmasq.d/dnssec.conf" - rlFileRestore - rlPhaseEnd -rlJournalEnd diff --git a/Regression/main.fmf b/Regression/main.fmf deleted file mode 100644 index 41e2fab..0000000 --- a/Regression/main.fmf +++ /dev/null @@ -1,2 +0,0 @@ -# QE owner -contact: Petr Sklenar diff --git a/Sanity/dnsmasq-2namespace-dig-check-open-ports/main.fmf b/Sanity/dnsmasq-2namespace-dig-check-open-ports/main.fmf deleted file mode 100644 index f79c2b9..0000000 --- a/Sanity/dnsmasq-2namespace-dig-check-open-ports/main.fmf +++ /dev/null @@ -1,27 +0,0 @@ -summary: dnsmasq in running in 2 namespaces -description: | - dnsmasq in running in 2 namespaces -contact: Petr Sklenar -component: - - dnsmasq -test: ./runtest.sh -framework: beakerlib -recommend: - - dnsmasq - - bind-utils - - bind - - bind-utils - - tcpdump -duration: 25m -enabled: true -tag: - - NoRHEL4 - - NoRHEL5 - - Tier2 -tier: '1' -adjust: - - enabled: false - when: distro == rhel-4, rhel-5 - continue: false -extra-summary: /CoreOS/dnsmasq/Regression/dnsmasq-2namespace-dig-check-open-ports -extra-task: /CoreOS/dnsmasq/Regression/dnsmasq-2namespace-dig-check-open-ports diff --git a/Sanity/dnsmasq-2namespace-dig-check-open-ports/runtest.sh b/Sanity/dnsmasq-2namespace-dig-check-open-ports/runtest.sh deleted file mode 100755 index 4b13c58..0000000 --- a/Sanity/dnsmasq-2namespace-dig-check-open-ports/runtest.sh +++ /dev/null @@ -1,135 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /CoreOS/dnsmasq/Regression/dnsmasq-2namespace-dig-check-open-ports -# Description: dnsmasq-2namespace-dig-check-open-ports -# Author: Petr Sklenar -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2020 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 the 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, see http://www.gnu.org/licenses/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="dnsmasq" - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE -#to debug when running on one machine again and again -ps aux | grep -ie dnsmasq | awk '{print "kill -9 " $2}' -ps aux | grep -ie tcpdump | awk '{print "kill -9 " $2}' -ps aux | grep -ie dig | awk '{print "kill -9 " $2}' - rlPhaseEnd - - rlPhaseStartSetup "namespace" -# TODO: use rlImport kernel/network or move it to separate library -# Similar code is already prepared for both IPv4 and IPv6 -IPV6_PREFIX=fc7a:5313:5f5a # /48 -ip link add veth0 type veth peer name veth1 - -ip netns add vnet0 -ip link set veth0 netns vnet0 -ip -n vnet0 addr add 10.0.1.0/24 dev veth0 -ip -n vnet0 addr add $IPV6_PREFIX:1::/64 dev veth0 -ip -n vnet0 link set veth0 up -ip -n vnet0 link set lo up - -ip netns add vnet1 -ip link set veth1 netns vnet1 -ip -n vnet1 addr add 10.0.2.0/24 dev veth1 -ip -n vnet1 addr add $IPV6_PREFIX:2::/64 dev veth1 -ip -n vnet1 link set veth1 up -ip -n vnet1 link set lo up - -ip -n vnet0 route add 10.0.2.0/24 dev veth0 -ip -n vnet0 route add $IPV6_PREFIX:2::/64 dev veth0 -ip -n vnet1 route add 10.0.1.0/24 dev veth1 -ip -n vnet1 route add $IPV6_PREFIX:1::/64 dev veth1 - - rlRun "ip netns exec vnet0 ping -c10 10.0.2.0 -c2" - rlRun "ip netns exec vnet1 ping -c10 10.0.1.0 -c2" - rlRun "ip netns exec vnet0 ping6 -c10 $IPV6_PREFIX:2:: -c2" - rlRun "ip netns exec vnet1 ping6 -c10 $IPV6_PREFIX:1:: -c2" - rlPhaseEnd - - rlPhaseStartTest "run dnsmasq" - echo -n > dnsmasq-auth.log - echo -n > dnsmasq-rec.log - rlRun "ip netns exec vnet1 dnsmasq --no-daemon --except-interface=lo --listen-address=10.0.2.0 --bind-interfaces --address=/localhost/127.0.0.1 --no-resolv --log-facility=./dnsmasq-auth.log --pid-file=./dnsmasq-auth.pid &" - DNSMASQ_AUTH=$! - rlRun "ip netns exec vnet0 dnsmasq --no-daemon --except-interface=lo --listen-address=10.0.1.0 --server=10.0.2.0@veth0 --bind-interfaces --no-resolv --log-queries --log-facility=./dnsmasq-rec.log --pid-file=./dnsmasq-rec.pid &" - DNSMASQ_REC=$! - sleep 5 - rlRun "ps u $DNSMASQ_AUTH" 0 "Check authoritative server is running" - rlRun "ps u $DNSMASQ_REC" 0 "Check recursive server is running" - rlRun "ip netns exec vnet0 dig @10.0.2.0 localhost" - rlPhaseEnd - - rlPhaseStartTest "tcpdump in vnet0" - rlRun "ip netns exec vnet0 tcpdump -w dns.pcap -i veth0 port domain &" - sleep 10 - TCPDUMP_FWD=$! - rlRun "pgrep tcpdump" - - rlPhaseEnd - - rlPhaseStartTest "dig from the both vnet0 and vnet1 to 10.0.1.0 which is dnsmasq" - for H in test{1..10}.localhost; do - ip netns exec vnet0 dig +timeout=2 +short @10.0.1.0 $H - rlAssert0 "dig from vnet0 " $? - ip netns exec vnet1 dig +timeout=2 +short @10.0.1.0 $H - rlAssert0 "dig from vnet1 " $? - done - sleep 60 # its really needed, aarch64 needs that - -# there should be 2x10 replies from loop above - rlRun "REPLIES=$(grep reply dnsmasq-rec.log |wc -l)" - rlAssertEquals "Replies count matches sent queries" ${REPLIES} 20 - rlPhaseEnd - - rlPhaseStartTest "count src ports" - rlRun "kill $TCPDUMP_FWD" 0 "kill tcpdump" - rlRun "wait $TCPDUMP_FWD" 0 "wait until tcpdump stops" - rlRun "tcpdump -r dns.pcap -nn &>dns.tcpdump" - sleep 5 - UNIQUE_PORTS=$(gawk -F' ' '{ print $3 }' dns.tcpdump | gawk -F'.' '{ print $5 }' | grep -v 53 | sort|uniq|wc -l) - UNIQUE_IDS=$(awk '{print $6}' dns.tcpdump | grep '[0-9]\++' | sort -u | wc -l) - rlLog "WE HAVE ${UNIQUE_PORTS} PORT" - - if [ $UNIQUE_PORTS -gt 17 ]; then - rlPass "many PORTs" - else - rlFail "only $UNIQUE_PORTS ports used" - fi - rlAssertGreater "Check IDs are unique too" "$UNIQUE_IDS" 17 - [ "$DEBUG" = y ] && PS1="test-debug $PS1" bash -i - rlPhaseEnd - - - rlPhaseStartCleanup "kill all" - killall dnsmasq tcpdump - ps aux | grep -ie dnsmasq | awk '{print "kill -9 " $2}' - ps aux | grep -ie dig | awk '{print "kill -9 " $2}' - rlBundleLogs dnsmasq*.log dns.pcap dns.tcpdump - rlLog "test end" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/Sanity/dnsmasq-synth-domain/main.fmf b/Sanity/dnsmasq-synth-domain/main.fmf deleted file mode 100644 index b5926e8..0000000 --- a/Sanity/dnsmasq-synth-domain/main.fmf +++ /dev/null @@ -1,6 +0,0 @@ -summary: Configure synthetization of generated name addresses -test: ./test.sh -framework: beakerlib -require: dnsmasq -recommend: - - bind-utils diff --git a/Sanity/dnsmasq-synth-domain/test.sh b/Sanity/dnsmasq-synth-domain/test.sh deleted file mode 100755 index 6e8c39a..0000000 --- a/Sanity/dnsmasq-synth-domain/test.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -rlJournalStart - rlPhaseStartSetup - rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" - rlRun "pushd $tmp" - export LC_ALL=C.UTF-8 - rlFileBackup --missing-ok /etc/dnsmasq.d/synth-domain.conf - rlRun "echo 'synth-domain=1.test,192.168.0.0/16' > /etc/dnsmasq.d/synth-domain.conf" - rlRun "echo 'synth-domain=2.test,2001:db8::/64' >> /etc/dnsmasq.d/synth-domain.conf" - rlRun "dnsmasq --test" - rlRun "rlServiceStart dnsmasq" - sleep 1 - rlRun "host 127.0.0.1 localhost" - rlRun "rlServiceStatus dnsmasq" - rlPhaseEnd - - rlPhaseStartTest - rlRun "host 192.168.0.0 localhost" - rlRun "host 192.168.128.127 localhost" - rlRun "host 192.168.255.255 localhost" - rlRun "host -t A 192-168-0-0.1.test localhost" - rlRun "host -t A 192-168-255-255.1.test localhost" - rlRun "host -t A 192-168-7-144.1.test localhost" - - rlRun "host 2001:db8::1 localhost" - rlRun "host 2001:db8::01a:02b:03c:1 localhost" - rlRun "host 2001:db8::01a:02b:03c:1 localhost" - rlRun "host -t AAAA 2001-db8--1.2.test localhost" - rlRun "host -t AAAA 2001-db8--0.2.test localhost" - rlRun "host -t AAAA 2001-db8-0000-0000-0000-0000-0000-0000.2.test localhost" - rlRun "host -t AAAA 2001-db8-0000-0000-F00B-a5E4-abCD-1234.2.test localhost" - rlRun "host -t AAAA 2001-db8-0000-0000-FFFF-FFFF-FFFF-FFFF.2.test localhost" - - # Ensure it is either okay or refused, but not crashing. - rlRun "dnsmasq --conf-file=/dev/null --test --synth-domain=.,192.168.0.0/24" 0,1 - rlRun "dnsmasq --conf-file=/dev/null --test --synth-domain=.,2001:db8::/64" 0,1 - rlRun "dnsmasq --conf-file=/dev/null --test --synth-domain=example.net,192.0.2.0/24" 0 - rlRun "dnsmasq --conf-file=/dev/null --test --synth-domain=example.net,2001:db8::/64" 0 - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "rm -f /etc/dnsmasq.d/synth-domain.conf" - rlFileRestore - rlServiceRestore dnsmasq - rlRun "popd" - rlRun "rm -r $tmp" 0 "Remove tmp directory" - rlPhaseEnd -rlJournalEnd diff --git a/Sanity/dummy-run-test/main.fmf b/Sanity/dummy-run-test/main.fmf deleted file mode 100644 index 9fb1c32..0000000 --- a/Sanity/dummy-run-test/main.fmf +++ /dev/null @@ -1,9 +0,0 @@ -summary: The test runs the dnsmasq and check the output -test: ./test.sh -component: - - dnsmasq -recommend: - - dnsmasq - - tmt -framework: beakerlib - diff --git a/Sanity/dummy-run-test/test.sh b/Sanity/dummy-run-test/test.sh deleted file mode 100755 index 7b6caab..0000000 --- a/Sanity/dummy-run-test/test.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -rlJournalStart - rlPhaseStartSetup - rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" - rlRun "pushd $tmp" - rlRun "set -o pipefail" - rlPhaseEnd - - rlPhaseStartTest "no conf file provided" - rlRun "dnsmasq --test &> output" 0 "test dnsmasq conf file" - rlRun "grep OK output" - rlPhaseEnd - - rlPhaseStartTest "conf file is wrong" - rlRun "echo 'nonsense into some confile' > /etc/dnsmasq.d/nonsense.conf" - rlRun "dnsmasq --test &> output" 1 "--test should fail" - rlRun "grep 'bad option' output" - rlRun "cat output" 0 "see whats in output" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "rm -f /etc/dnsmasq.d/nonsense.conf" 0 "clean wrong conf" - rlRun "popd" - rlRun "rm -r $tmp" 0 "Remove tmp directory" - rlPhaseEnd -rlJournalEnd diff --git a/Sanity/local-service-host/main.fmf b/Sanity/local-service-host/main.fmf deleted file mode 100644 index 04d82b9..0000000 --- a/Sanity/local-service-host/main.fmf +++ /dev/null @@ -1,12 +0,0 @@ -summary: Test presence and behaviour of local-service=host variant -test: ./test.sh -framework: beakerlib -require: - - dnsmasq -recommend: - - bind-utils -adjust: - - enabled: false - when: distro != rhel-8 - continue: false - diff --git a/Sanity/local-service-host/test.sh b/Sanity/local-service-host/test.sh deleted file mode 100755 index 26f6611..0000000 --- a/Sanity/local-service-host/test.sh +++ /dev/null @@ -1,120 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -: ${DNSMASQ_CONF:="/etc/dnsmasq.conf"} - -rlJournalStart - rlPhaseStartSetup - rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" - rlRun "pushd $tmp" - rlAssertRpm dnsmasq - rlRun "LOOPBACK_ADDRESSES=\"$(ip address show dev lo | awk '/inet/ { print $2 }' | cut -d/ -f1 | xargs echo)\"" - # contains non-loopback interface - rlRun "INTERFACE=$(ip link show up | grep '^[0-9]\+:' | grep -v LOOPBACK | cut -d: -f2 | xargs echo | head -1)" - rlRun "ip address show up dev $INTERFACE" 0 "Check interface is up and present" - rlRun "INTERFACE_ADDRESSES=\"$(ip address show dev $INTERFACE | grep -v 'scope link' | awk '/inet/ { print $2 }' | cut -d/ -f1 | xargs echo)\"" - rlFileBackup "$DNSMASQ_CONF" - rlRun "dnsmasq --test" - rlPhaseEnd - - rlPhaseStartTest "Feature test" - rlRun "dnsmasq --test --conf-file=/dev/null --local-service" 0 - rlRun "dnsmasq --test --conf-file=/dev/null --local-service=host" 0 "Check new feature is present" - rlPhaseEnd - - rlPhaseStartTest "local-service=host" - rlRun "echo local-service=host > $DNSMASQ_CONF" - rlRun "rlServiceStart dnsmasq" 0 "Check local-service=host accepts just on loopback" - for IP in $LOOPBACK_ADDRESSES; do - rlRun "host localhost $IP" 0 "Check resolution is accepted on lo addresses: $IP" - done - for IP in $INTERFACE_ADDRESSES; do - rlRun "host localhost $IP" 1-255 "Check resolution is denied on other addresses: $IP" - done - rlPhaseEnd - - rlPhaseStartTest "local-service=host + listen-address" - rlRun "echo bind-interfaces > $DNSMASQ_CONF" - rlRun "echo local-service=host >> $DNSMASQ_CONF" - for IP in $INTERFACE_ADDRESSES; do - rlRun "echo listen-address=$IP >> $DNSMASQ_CONF" - done - rlRun "rlServiceStart dnsmasq" 0 "Check listen-address overrides local-service" - for IP in $LOOPBACK_ADDRESSES; do - rlRun "host localhost $IP" 1-255 "Check resolution is denied on lo addresses: $IP" - done - for IP in $INTERFACE_ADDRESSES; do - rlRun "host localhost $IP" 0 "Check resolution is accepted on other addresses: $IP" - done - rlPhaseEnd - - rlPhaseStartTest "interface not lo" - rlRun "echo bind-interfaces > $DNSMASQ_CONF" - rlRun "echo interface=$INTERFACE >> $DNSMASQ_CONF" - rlRun "echo except-interface=lo >> $DNSMASQ_CONF" - rlRun "rlServiceStart dnsmasq" 0 "Check interface overrides local-service" - for IP in $LOOPBACK_ADDRESSES; do - rlRun "host localhost $IP" 1-255 "Check resolution is denied on lo addresses: $IP" - done - for IP in $INTERFACE_ADDRESSES; do - rlRun "host localhost $IP" 0 "Check resolution is accepted on other addresses: $IP" - done - rlPhaseEnd - - rlPhaseStartTest "interface=lo" - rlRun "echo bind-interfaces > $DNSMASQ_CONF" - rlRun "echo interface=lo >> $DNSMASQ_CONF" - rlRun "rlServiceStart dnsmasq" 0 "Check explicit loopback still works" - for IP in $LOOPBACK_ADDRESSES; do - rlRun "host localhost $IP" 0 "Check resolution is accepted on lo addresses: $IP" - done - for IP in $INTERFACE_ADDRESSES; do - rlRun "host localhost $IP" 1-255 "Check resolution is denied on other addresses: $IP" - done - rlPhaseEnd - - rlPhaseStartTest "interface lo+not lo" - rlRun "echo bind-interfaces > $DNSMASQ_CONF" - rlRun "echo interface=lo >> $DNSMASQ_CONF" - rlRun "echo interface=$INTERFACE >> $DNSMASQ_CONF" - rlRun "rlServiceStart dnsmasq" - for IP in $LOOPBACK_ADDRESSES $INTERFACE_ADDRESSES; do - rlRun "host localhost $IP" 0 "Check resolution is accepted on lo addresses: $IP" - done - rlPhaseEnd - - rlPhaseStartTest "local-service+interface" - rlRun "echo local-service=host > $DNSMASQ_CONF" - rlRun "echo bind-interfaces >> $DNSMASQ_CONF" - rlRun "echo interface=$INTERFACE >> $DNSMASQ_CONF" - rlRun "echo except-interface=lo >> $DNSMASQ_CONF" - rlRun "rlServiceStart dnsmasq" 0 "Check local-service is ignored when interface is specified." - for IP in $LOOPBACK_ADDRESSES; do - rlRun "host localhost $IP" 1-255 "Check resolution is denied on lo addresses: $IP" - done - for IP in $INTERFACE_ADDRESSES; do - rlRun "host localhost $IP" 0 "Check resolution is accepted on other addresses: $IP" - done - rlPhaseEnd - - rlPhaseStartTest "local-service+except-interface" - rlRun "echo local-service=host > $DNSMASQ_CONF" - rlRun "echo bind-interfaces >> $DNSMASQ_CONF" - rlRun "echo except-interface=lo >> $DNSMASQ_CONF" - rlRun "rlServiceStart dnsmasq" 0 "Check local-service is ignored when except-interface is specified." - for IP in $LOOPBACK_ADDRESSES; do - rlRun "host localhost $IP" 1-255 "Check resolution is denied on lo addresses: $IP" - done - for IP in $INTERFACE_ADDRESSES; do - rlRun "host localhost $IP" 0 "Check resolution is accepted on other addresses: $IP" - done - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "rlServiceRestore dnsmasq" - rlRun "popd" - rlRun "rm -r $tmp" 0 "Remove tmp directory" - rlFileRestore - rlPhaseEnd -rlJournalEnd diff --git a/Sanity/main.fmf b/Sanity/main.fmf deleted file mode 100644 index 41e2fab..0000000 --- a/Sanity/main.fmf +++ /dev/null @@ -1,2 +0,0 @@ -# QE owner -contact: Petr Sklenar diff --git a/plans/all.fmf b/plans/all.fmf deleted file mode 100644 index 64edeab..0000000 --- a/plans/all.fmf +++ /dev/null @@ -1,7 +0,0 @@ -summary: Run all tests for tests/dnsmasq PR -discover: - how: fmf -execute: - how: tmt -context: - component: bind diff --git a/plans/nm.fmf b/plans/nm.fmf deleted file mode 100644 index a7141da..0000000 --- a/plans/nm.fmf +++ /dev/null @@ -1,11 +0,0 @@ -summary: Run Network Manager tests -prepare: - how: install - package: git-core -execute: - how: tmt - script: | - dnf install -y git-core - git clone https://gitlab.freedesktop.org/NetworkManager/NetworkManager-ci.git - cd NetworkManager-ci - ./run/osci/run-tests dnsmasq diff --git a/plans/others.fmf b/plans/others.fmf deleted file mode 100644 index 33a9f2e..0000000 --- a/plans/others.fmf +++ /dev/null @@ -1,20 +0,0 @@ -/public: - summary: Public other tests - discover: - how: fmf - filter: 'tier: -1 & tier: -2 & tier: -3 & tag: -multihost' - url: "https://src.fedoraproject.org/tests/dnsmasq.git" - execute: - how: tmt - -/internal: - summary: Internal other tests - discover: - how: fmf - filter: 'tier: -1 & tier: -2 & tier: -3 & tag: -multihost' - url: git://pkgs.devel.redhat.com/tests/dnsmasq - adjust: - enabled: false - when: distro == centos-stream or distro == fedora - execute: - how: tmt \ No newline at end of file diff --git a/plans/tier1.fmf b/plans/tier1.fmf deleted file mode 100644 index 1cef49c..0000000 --- a/plans/tier1.fmf +++ /dev/null @@ -1,20 +0,0 @@ -/public: - summary: Public Tier1 tests - discover: - how: fmf - filter: 'tier: 1' - url: "https://src.fedoraproject.org/tests/dnsmasq.git" - execute: - how: tmt - -/internal: - summary: Internal Tier1 tests - discover: - how: fmf - filter: 'tier: 1' - url: git://pkgs.devel.redhat.com/tests/dnsmasq - adjust: - enabled: false - when: distro == centos-stream or distro == fedora - execute: - how: tmt diff --git a/plans/tier2-tier3.fmf b/plans/tier2-tier3.fmf deleted file mode 100644 index b0e9bdd..0000000 --- a/plans/tier2-tier3.fmf +++ /dev/null @@ -1,20 +0,0 @@ -/public: - summary: Public Tier2 and Tier3 tests - discover: - how: fmf - filter: 'tier: 2 | tier: 3' - url: "https://src.fedoraproject.org/tests/dnsmasq.git" - execute: - how: tmt - -/internal: - summary: Internal Tier2 and Tier3 tests - discover: - how: fmf - filter: 'tier: 2 | tier: 3' - url: git://pkgs.devel.redhat.com/tests/dnsmasq - adjust: - enabled: false - when: distro == centos-stream or distro == fedora - execute: - how: tmt