diff --git a/coredns.spec b/coredns.spec new file mode 100644 index 0000000..0fa981e --- /dev/null +++ b/coredns.spec @@ -0,0 +1,67 @@ +%define project github.com/coredns/coredns +%global debug_package %{nil} +Name: coredns +Version: 1.7.0 +Release: 1.0 +Summary: CoreDNS is a DNS server/forwarder, written in Go +License: Apache-2.0 +URL: https://coredns.io +Source0: https://github.com/%{name}/%{name}/archive/v%{version}.tar.gz +Source1: vendor.tar.gz + +BuildRequires: golang >= 1.13 +BuildRequires: fdupes + +%description +CoreDNS is a fast and flexible DNS server. The key word here is flexible: +with CoreDNS you are able to do what you want with your DNS data by +utilizing plugins. + +%package help +Summary: Help document for the coredns package + +%description help +Help document for the coredns package. + +%prep +%setup -q -a1 + +%build +GO_BUILD_PATH=$PWD/_build +install -m 0755 -vd $(dirname $GO_BUILD_PATH/src/%{project}) +ln -fs $PWD $GO_BUILD_PATH/src/%{project} +cd $GO_BUILD_PATH/src/%{project} +export GOPATH=$GO_BUILD_PATH:%{gopath} +export PATH=$PATH:$GOPATH/bin +go build -mod=vendor -v -buildmode=pie -o coredns + +# It is not recommended to test in the build environment, +# because some testcases will be affected by the factors of +# the build environment and fail. +# It is recommended to execute the use cases manually + +%install +# Binaries +install -D -m 0755 coredns %{buildroot}%{_sbindir}/coredns +# Manpages +install -d %{buildroot}/%{_mandir}/man1 +install -m 0644 man/coredns*.1 %{buildroot}/%{_mandir}/man1 +install -d %{buildroot}/%{_mandir}/man5 +install -m 0644 man/corefile*.5 %{buildroot}/%{_mandir}/man5 +install -d %{buildroot}/%{_mandir}/man7 +install -m 0644 man/coredns-*.7 %{buildroot}/%{_mandir}/man7 + +%fdupes %{buildroot}/%{_prefix} + +%files +%{_sbindir}/coredns +%license LICENSE + +%files help +%{_mandir}/man1/coredns* +%{_mandir}/man5/corefile* +%{_mandir}/man7/coredns-* + +%changelog +* Thu Mar 11 2021 WuJing +- Initial Packaging diff --git a/v1.7.0.tar.gz b/v1.7.0.tar.gz new file mode 100644 index 0000000..d2e0a60 Binary files /dev/null and b/v1.7.0.tar.gz differ diff --git a/vendor.tar.gz b/vendor.tar.gz new file mode 100644 index 0000000..14bb449 Binary files /dev/null and b/vendor.tar.gz differ