Compare commits

...
Sign in to create a new pull request.

7 commits

Author SHA1 Message Date
Jakub Ružička
8dd998cc1d knot-resolver-5.3.2-1: new upstream version 2021-05-07 15:54:02 +02:00
Jakub Ružička
23259c85ba knot-resolver-5.3.1-1: new upstream version
Changelog:
- update to upstream version 5.3.1
2021-04-01 16:55:53 +02:00
Jakub Ružička
fb3a70c057 knot-resolver-5.3.0-1: new upstream version
Changelog:
- update to upstream version 5.3.0
- add dnstap module subpackage
- required Knot DNS >= 2.9
2021-03-02 14:19:41 +01:00
Jakub Ružička
0d2ff97e66 knot-resolver-5.2.1-1: new upstream version
Changelog:
- update to upstream version 5.2.1
2020-12-18 12:40:39 +01:00
Jakub Ružička
95aded022e tests: replace standard-test-rpm with -basic
Currently, tests fail with

    TASK [standard-test-rpm : Install the test subject RPMs] ***********************
    fatal: [/workDir/workspace/fedora-rawhide-pr-pipeline/images/test_subject.qcow2]: FAILED! =>
      msg: '''subjects'' is undefined'

'subjects' should be a list of RPMs to install but it looks undefined
in fedora-rawhide-pr-pipeline.

Try replacing this with standard-test-basic as seen in Fedora CI docs:

https://docs.fedoraproject.org/en-US/ci/how-to-add-dist-git-test/

Same doc describes standard-test-rpm as "A role for installing
additional rpms" which I don't think is the use case here.
2020-11-12 14:56:24 +01:00
Jakub Ružička
4ce78d6cb4 tests: remove obsolete socket activation test 2020-11-12 14:56:20 +01:00
Jakub Ružička
c2a4abf3db 5.2.0-1: new upstream version
Changelog:
- update to upstream version 5.2.0
- sync packaging from upstream
2020-11-11 17:20:39 +01:00
7 changed files with 94 additions and 97 deletions

View file

@ -2,13 +2,13 @@
%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}}
%define GPG_CHECK 1
%define VERSION 5.1.3
%define VERSION 5.3.2
%define repodir %{_builddir}/%{name}-%{version}
%define NINJA ninja-build
Name: knot-resolver
Version: %{VERSION}
Release: 2%{?dist}
Release: 1%{?dist}
Summary: Caching full DNS Resolver
License: GPL-3.0-or-later
@ -40,9 +40,10 @@ BuildRequires: meson
BuildRequires: pkgconfig(cmocka)
BuildRequires: pkgconfig(gnutls)
BuildRequires: pkgconfig(libedit)
BuildRequires: pkgconfig(libknot) >= 2.8
BuildRequires: pkgconfig(libzscanner) >= 2.8
BuildRequires: pkgconfig(libdnssec) >= 2.8
BuildRequires: pkgconfig(libknot) >= 2.9
BuildRequires: pkgconfig(libzscanner) >= 2.9
BuildRequires: pkgconfig(libdnssec) >= 2.9
BuildRequires: pkgconfig(libnghttp2)
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(libcap-ng)
BuildRequires: pkgconfig(libuv)
@ -51,6 +52,13 @@ BuildRequires: pkgconfig(luajit) >= 2.0
Requires: systemd
Requires(post): systemd
# dnstap module dependencies
# SUSE is missing protoc-c protobuf compiler
%if "x%{?suse_version}" == "x"
BuildRequires: pkgconfig(libfstrm)
BuildRequires: pkgconfig(libprotobuf-c)
%endif
# Distro-dependent dependencies
%if 0%{?rhel} == 7
BuildRequires: lmdb-devel
@ -90,6 +98,7 @@ Requires(pre): shadow
BuildRequires: doxygen
BuildRequires: python3-breathe
BuildRequires: python3-sphinx_rtd_theme
BuildRequires: texinfo
%endif
%description
@ -119,9 +128,20 @@ Requires: %{name} = %{version}-%{release}
Documentation for Knot Resolver
%endif
%if "x%{?suse_version}" == "x"
%package module-dnstap
Summary: dnstap module for Knot Resolver
Requires: %{name} = %{version}-%{release}
%description module-dnstap
dnstap module for Knot Resolver supports logging DNS responses to a unix socket
in dnstap format using fstrm framing library. This logging is useful if you
need effectivelly log all DNS traffic.
%endif
%if "x%{?suse_version}" == "x"
%package module-http
Summary: HTTP/2 module for Knot Resolver
Summary: HTTP module for Knot Resolver
Requires: %{name} = %{version}-%{release}
%if 0%{?fedora} || 0%{?rhel} > 7
Requires: lua5.1-http
@ -132,9 +152,10 @@ Requires: lua-mmdb
%endif
%description module-http
HTTP/2 module for Knot Resolver has multiple uses. It enables use of
DNS-over-HTTP, can serve as API endpoint for other modules or provide a web
interface for local visualization of the resolver cache and queries.
HTTP module for Knot Resolver can serve as API endpoint for other modules or
provide a web interface for local visualization of the resolver cache and
queries. It can also serve DNS-over-HTTPS, but it is deprecated in favor of
native C implementation, which doesn't require this package.
%endif
%prep
@ -153,6 +174,9 @@ CFLAGS="%{optflags}" LDFLAGS="%{?__global_ldflags}" meson build_rpm \
%endif
-Dsystemd_files=enabled \
-Dclient=enabled \
%if "x%{?suse_version}" == "x"
-Ddnstap=enabled \
%endif
-Dunit_tests=enabled \
-Dmanaged_ta=enabled \
-Dkeyfile_default="%{_sharedstatedir}/knot-resolver/root.keys" \
@ -183,6 +207,9 @@ ln -s ../kresd.target %{buildroot}%{_unitdir}/multi-user.target.wants/kresd.targ
# remove modules with missing dependencies
rm %{buildroot}%{_libdir}/knot-resolver/kres_modules/etcd.lua
# remove unused sysusers
rm %{buildroot}%{_prefix}/lib/sysusers.d/knot-resolver.conf
%if 0%{?suse_version}
rm %{buildroot}%{_libdir}/knot-resolver/kres_modules/experimental_dot_auth.lua
rm -r %{buildroot}%{_libdir}/knot-resolver/kres_modules/http
@ -267,12 +294,12 @@ fi
%doc %{_pkgdocdir}/AUTHORS
%doc %{_pkgdocdir}/NEWS
%doc %{_pkgdocdir}/examples
%attr(755,root,knot-resolver) %dir %{_sysconfdir}/knot-resolver
%attr(644,root,knot-resolver) %config(noreplace) %{_sysconfdir}/knot-resolver/kresd.conf
%attr(644,root,knot-resolver) %config(noreplace) %{_sysconfdir}/knot-resolver/root.hints
%attr(644,root,knot-resolver) %{_sysconfdir}/knot-resolver/icann-ca.pem
%attr(775,root,knot-resolver) %dir %{_sharedstatedir}/knot-resolver
%attr(664,root,knot-resolver) %{_sharedstatedir}/knot-resolver/root.keys
%dir %{_sysconfdir}/knot-resolver
%config(noreplace) %{_sysconfdir}/knot-resolver/kresd.conf
%config(noreplace) %{_sysconfdir}/knot-resolver/root.hints
%{_sysconfdir}/knot-resolver/icann-ca.pem
%attr(750,knot-resolver,knot-resolver) %dir %{_sharedstatedir}/knot-resolver
%attr(640,knot-resolver,knot-resolver) %{_sharedstatedir}/knot-resolver/root.keys
%{_unitdir}/kresd@.service
%{_unitdir}/kres-cache-gc.service
%{_unitdir}/kresd.target
@ -282,7 +309,7 @@ fi
%{_tmpfilesdir}/knot-resolver.conf
%ghost /run/%{name}
%ghost %{_localstatedir}/cache/%{name}
%attr(770,root,knot-resolver) %dir %{_libdir}/%{name}
%attr(750,knot-resolver,knot-resolver) %dir %{_libdir}/%{name}
%{_sbindir}/kresd
%{_sbindir}/kresc
%{_sbindir}/kres-cache-gc
@ -291,7 +318,12 @@ fi
%{_libdir}/knot-resolver/*.so
%{_libdir}/knot-resolver/*.lua
%dir %{_libdir}/knot-resolver/kres_modules
%{_libdir}/knot-resolver/kres_modules/*.so
%{_libdir}/knot-resolver/kres_modules/bogus_log.so
%{_libdir}/knot-resolver/kres_modules/edns_keepalive.so
%{_libdir}/knot-resolver/kres_modules/hints.so
%{_libdir}/knot-resolver/kres_modules/nsid.so
%{_libdir}/knot-resolver/kres_modules/refuse_nord.so
%{_libdir}/knot-resolver/kres_modules/stats.so
%{_libdir}/knot-resolver/kres_modules/daf
%{_libdir}/knot-resolver/kres_modules/daf.lua
%{_libdir}/knot-resolver/kres_modules/detect_time_jump.lua
@ -325,6 +357,14 @@ fi
%files doc
%dir %{_pkgdocdir}
%doc %{_pkgdocdir}/html
%doc %{_datadir}/info/knot-resolver.info*
%dir %{_datadir}/info/knot-resolver-figures
%doc %{_datadir}/info/knot-resolver-figures/*
%endif
%if "x%{?suse_version}" == "x"
%files module-dnstap
%{_libdir}/knot-resolver/kres_modules/dnstap.so
%endif
%if "x%{?suse_version}" == "x"
@ -336,6 +376,24 @@ fi
%endif
%changelog
* Fri May 07 2021 Jakub Ružička <jakub.ruzicka@nic.cz> - 5.3.2-1
- update to upstream version 5.3.2
* Thu Apr 01 2021 Jakub Ružička <jakub.ruzicka@nic.cz> - 5.3.1-1
- update to upstream version 5.3.1
* Mon Mar 01 2021 Jakub Ružička <jakub.ruzicka@nic.cz> - 5.3.0-1
- update to upstream version 5.3.0
- add dnstap module subpackage
- required Knot DNS >= 2.9
* Fri Dec 18 2020 Jakub Ružička <jakub.ruzicka@nic.cz> - 5.2.1-1
- update to upstream version 5.2.1
* Wed Nov 11 2020 Jakub Ružička <jakub.ruzicka@nic.cz> 5.2.0-1
- update to upstream version 5.2.0
- sync packaging from upstream
* Wed Sep 23 2020 Jakub Ružička <jakub.ruzicka@nic.cz> 5.1.3-2
- rebuild for Knot DNS 3.0.0

View file

@ -1,2 +1,2 @@
SHA512 (knot-resolver-5.1.3.tar.xz) = 0d97a7094922cd02a47bb24f703186b167e04e8545e4c433821544643a9adc44e00f7c33c31ab852a402a5bc25f05742c8f3b955099a0bafd910496d5cca43e2
SHA512 (knot-resolver-5.1.3.tar.xz.asc) = 5fe43f3001d4990e3f20c0e9d58d5c825f32693a56822e585f3a40a2b31e57c128686088428cb1e8be36e458620d57aaeab6d7995860f753df11fc9fbb946812
SHA512 (knot-resolver-5.3.2.tar.xz) = 180490f058d90d15f336bbce28a175d6660a4a98e88956071f26a40e2b9a14f57eea6b62b992f88011f80acda9418813d53c7f00753c97bcf6b527cf41cc0b8a
SHA512 (knot-resolver-5.3.2.tar.xz.asc) = 0d73384f00c1cb7d9dcb27fac201d29cb1ebf4568f2ff6d0767296550fee7e753f15a69127d5f5e141d5739a8f0899e8ea63b44c50c6f7e7c1f58af7bfd9fe38

View file

@ -2,7 +2,7 @@ Package tests
=============
These tests implement the standard test interface in Fedora CI.
See https://fedoraproject.org/wiki/CI/Tests for details.
See https://docs.fedoraproject.org/en-US/ci/tests/ for details.
Manual execution
----------------
@ -12,11 +12,3 @@ modifications to your system. It's best to run these on a clean, throw-away
testing system or a VM.
ansible-playbook tests/tests.yml -e subjects=/path/to/knot-resolver.rpm -e artifacts=/path/to/artifacts
Automatic execution
-------------------
These tests should eventually be automatically executed by the Fedora CI
pipeline. As of 2018-01-10, it is not supported for packages that aren't part
of Fedora Atomic. Once it is implemented, the results of these tests should be
visible in dist-git commits on src.fedoraproject.org

View file

@ -0,0 +1,7 @@
#!/bin/bash
set -ex
systemctl stop kresd@1.service
systemctl start kresd@1.service
dig @127.0.0.1 .

View file

@ -1,24 +0,0 @@
---
- block:
- name: make sure kresd@1 socket and service is off
service:
name: "{{ item }}"
state: stopped
with_items:
- kresd@1.service
- kresd@1.socket
failed_when: false
- name: start kresd@1.service
service:
name: kresd@1.service
state: started
- name: check if query is answered
shell: dig @127.0.0.1 .
rescue:
- set_fact:
manual_activation_failed: true
always:
- name: collect journal
shell: journalctl --since -10m > {{ artifacts }}/test_manual_activation_journal.log

View file

@ -1,23 +0,0 @@
---
- block:
- name: make sure kresd socket and service is off
service:
name: "{{ item }}"
state: stopped
with_items:
- kresd@1.service
- kresd.socket
- name: start kresd.socket
service:
name: kresd.socket
state: started
- name: check if query is answered
shell: dig @127.0.0.1 .
rescue:
- set_fact:
socket_activation_failed: true
always:
- name: collect journal
shell: journalctl --since -10m > {{ artifacts }}/test_socket_activation_journal.log

View file

@ -1,28 +1,15 @@
---
- hosts: localhost
remote_user: root
pre_tasks:
- package: # Install additional dependecies
name: bind-utils
state: latest
roles:
- role: standard-test-rpm
- role: standard-test-basic
tags:
- classic
tasks:
- include_tasks: test_socket_activation.yml
when: ansible_distribution == 'Fedora'
- include_tasks: test_manual_activation.yml
- set_fact:
tests_passed: '{{ socket_activation_failed is undefined and manual_activation_failed is undefined }}'
- name: report results
debug:
msg: |
test_socket_activation: {{ 'FAILED' if socket_activation_failed is defined else 'OK'}}
test_manual_activation: {{ 'FAILED' if manual_activation_failed is defined else 'OK'}}
- name: fail playbook if tests failed
debug:
msg: --- {{ 'PASSED' if tests_passed else 'FAILED' }} ---
failed_when: not tests_passed
required_packages:
- bind-utils
tests:
- kresd-show-version:
run: kresd --version
- manual-activation:
dir: scripts
run: ./test_manual_activation.sh