|
|
eee0e33 |
#
|
|
|
eee0e33 |
# Currently debuginfo breaks the build.
|
|
|
eee0e33 |
#
|
|
|
eee0e33 |
# I get one of the following two failures following recommended debuginfo
|
|
|
eee0e33 |
# methods for golang:
|
|
|
eee0e33 |
#
|
|
|
eee0e33 |
# *** ERROR: No build ID note found in /builddir/build/BUILDROOT/reg-0.4.1-1.x86_64/usr/bin/reg-server
|
|
|
eee0e33 |
#
|
|
|
eee0e33 |
# or:
|
|
|
eee0e33 |
#
|
|
|
eee0e33 |
# /var/tmp/rpm-tmp.U9Lwrk: line 36: syntax error near unexpected token `)'
|
|
|
eee0e33 |
#
|
|
|
eee0e33 |
%global debug_package %{nil}
|
|
|
eee0e33 |
|
|
|
eee0e33 |
# https://bugzilla.redhat.com/show_bug.cgi?id=995136#c12
|
|
|
eee0e33 |
%global _dwz_low_mem_die_limit 0
|
|
|
eee0e33 |
|
|
|
eee0e33 |
# modifying the Go binaries breaks the DWARF debugging
|
|
|
eee0e33 |
%global __os_install_post %{_rpmconfigdir}/brp-compress
|
|
|
eee0e33 |
|
|
|
fc69222 |
%global provider_prefix github.com/genuinetools/reg
|
|
|
eee0e33 |
%global import_path %{provider_prefix}
|
|
|
fc69222 |
#global commit 8d8ca405f7a8c8c4f72686ed239c767aba663f9b
|
|
|
fc69222 |
#global shortcommit %%(c=%%{commit}; echo ${c:0:7})
|
|
|
eee0e33 |
|
|
|
eee0e33 |
Name: reg
|
|
|
fc69222 |
Version: 0.15.5
|
|
|
ec723d6 |
Release: 3%{?dist}
|
|
|
eee0e33 |
Summary: Docker registry v2 command line client
|
|
|
eee0e33 |
|
|
|
eee0e33 |
|
|
|
eee0e33 |
License: MIT
|
|
|
eee0e33 |
URL: https://%{import_path}/%{name}
|
|
|
eee0e33 |
|
|
|
fc69222 |
Source0: https://github.com/genuinetools/reg/archive/v%{version}.tar.gz
|
|
|
bb73934 |
|
|
|
eee0e33 |
# Upstream advertises this as something that's meant to be run in a container
|
|
|
eee0e33 |
# and doesn't provide a systemd unit or sysV init script or sysconfig files
|
|
|
eee0e33 |
# so I'm providing them here.
|
|
|
eee0e33 |
Source1: reg-server.service
|
|
|
eee0e33 |
Source2: sysconfig.reg-server
|
|
|
eee0e33 |
|
|
|
eee0e33 |
BuildRequires: golang
|
|
|
eee0e33 |
BuildRequires: systemd
|
|
|
eee0e33 |
|
|
|
3b40a24 |
%if 0%{?epel}
|
|
|
3b40a24 |
# The version of golang is too old to understand the vendor manifest and can't
|
|
|
3b40a24 |
# find the appropriate path for the vendored version of this.
|
|
|
3b40a24 |
BuildRequires: golang-github-gorilla-context-devel
|
|
|
3b40a24 |
|
|
|
3b40a24 |
# For whatever reason golang-github-gorilla-context-devel isn't available in
|
|
|
3b40a24 |
# EPEL for any of the other arches.
|
|
|
6114104 |
# BZ filed: https://bugzilla.redhat.com/show_bug.cgi?id=1466521
|
|
|
3b40a24 |
ExclusiveArch: x86_64
|
|
|
3b40a24 |
%endif # 0%{?epel}
|
|
|
3b40a24 |
|
|
|
fc69222 |
# The following section is populated by parsing the Gopkg.lock file
|
|
|
fc69222 |
# at the base dir of a git checkout of the source code.
|
|
|
eee0e33 |
#
|
|
|
eee0e33 |
# $ git clone https://github.com/jessfraz/reg.git
|
|
|
eee0e33 |
# $ cd reg
|
|
|
eee0e33 |
#
|
|
|
eee0e33 |
# Bundled Provides are defined as per Fedora Guidelines:
|
|
|
eee0e33 |
# https://fedoraproject.org/wiki/Packaging:Guidelines#Bundling_and_Duplication_of_system_libraries
|
|
|
eee0e33 |
#
|
|
|
fc69222 |
Provides: bundled(golang(github.com/Azure/go-ansiterm)) = d6e3b3328b783f23731bc4d058875b0371ff8109
|
|
|
fc69222 |
Provides: bundled(golang(github.com/Microsoft/go-winio)) = 67921128fb397dd80339870d2193d6b1e6856fd4
|
|
|
eee0e33 |
Provides: bundled(golang(github.com/Nvveen/Gotty)) = cd527374f1e5bff4938207604a14f2e38a9cf512
|
|
|
fc69222 |
Provides: bundled(golang(github.com/beorn7/perks)) = 3a771d992973f24aa725d07868b467d1ddfceafb
|
|
|
fc69222 |
Provides: bundled(golang(github.com/containerd/continuity)) = 0377f7d767206f3a9e8881d0f02267b0d89c7a62
|
|
|
fc69222 |
Provides: bundled(golang(github.com/coreos/clair)) = 9a9b1f7a13fa1cb796fe6dfb45ed241f39ce9f01
|
|
|
fc69222 |
Provides: bundled(golang(github.com/docker/cli)) = b395d2d6f5eec2c047e6bba4a3fd941d5757d725
|
|
|
fc69222 |
Provides: bundled(golang(github.com/docker/distribution)) = 749f6afb4572201e3c37325d0ffedb6f32be8950
|
|
|
fc69222 |
Provides: bundled(golang(github.com/docker/docker)) = 492545e139e7461aac044149a931bb4b2dd48f75
|
|
|
fc69222 |
Provides: bundled(golang(github.com/docker/docker-ce)) = 2ec1cede27a3dc04c44f8ed2feb1efb00c724d63
|
|
|
fc69222 |
Provides: bundled(golang(github.com/docker/docker-credential-helpers)) = 5241b46610f2491efdf9d1c85f1ddf5b02f6d962
|
|
|
fc69222 |
Provides: bundled(golang(github.com/docker/go-connections)) = 7395e3f8aa162843a74ed6d48e79627d9792ac55
|
|
|
fc69222 |
Provides: bundled(golang(github.com/docker/go-metrics)) = 399ea8c73916000c64c2c76e8da00ca82f8387ab
|
|
|
fc69222 |
Provides: bundled(golang(github.com/docker/go-units)) = 47565b4f722fb6ceae66b95f853feed578a4a51c
|
|
|
eee0e33 |
Provides: bundled(golang(github.com/docker/libtrust)) = aabc10ec26b754e797f9028f4589c5b7bd90dc20
|
|
|
fc69222 |
Provides: bundled(golang(github.com/genuinetools/pkg)) = 3654fc151753f8cd41b366e0c15b9fa070890ddf
|
|
|
fc69222 |
Provides: bundled(golang(github.com/gogo/protobuf)) = 7d68e886eac4f7e34d0d82241a6273d6c304c5cf
|
|
|
fc69222 |
Provides: bundled(golang(github.com/golang/protobuf)) = b4deda0973fb4c70b50d226b1af49f3da59f5265
|
|
|
fc69222 |
Provides: bundled(golang(github.com/google/go-cmp)) = 3af367b6b30c263d47e8895973edcca9a49cf029
|
|
|
eee0e33 |
Provides: bundled(golang(github.com/gorilla/context)) = 08b5f424b9271eedf6f9f0ce86cb9396ed337a42
|
|
|
fc69222 |
Provides: bundled(golang(github.com/gorilla/mux)) = e3702bed27f0d39777b0b37b664b6280e8ef8fbf
|
|
|
fc69222 |
Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway)) = 92583770e3f01b09a0d3e9bdf64321d8bebd48f2
|
|
|
fc69222 |
Provides: bundled(golang(github.com/matttproud/golang_protobuf_extensions)) = c12348ce28de40eed0136aa2b644d0ee0650e56c
|
|
|
eee0e33 |
Provides: bundled(golang(github.com/mitchellh/go-wordwrap)) = ad45545899c7b13c020ea92b2072220eefad42b8
|
|
|
fc69222 |
Provides: bundled(golang(github.com/opencontainers/go-digest)) = c9281466c8b2f606084ac71339773efd177436e7
|
|
|
fc69222 |
Provides: bundled(golang(github.com/opencontainers/image-spec)) = d60099175f88c47cd379c4738d158884749ed235
|
|
|
fc69222 |
Provides: bundled(golang(github.com/opencontainers/runc)) = baf6536d6259209c3edfa2b22237af82942d3dfa
|
|
|
fc69222 |
Provides: bundled(golang(github.com/peterhellberg/link)) = d1cebc7ea14a5fc0de7cb4a45acae773161642c6
|
|
|
fc69222 |
Provides: bundled(golang(github.com/pkg/errors)) = 645ef00459ed84a119197bfb8d8205042c6df63d
|
|
|
fc69222 |
Provides: bundled(golang(github.com/prometheus/client_golang)) = bcbbc08eb2ddff3af83bbf11e7ec13b4fd730b6e
|
|
|
fc69222 |
Provides: bundled(golang(github.com/prometheus/client_model)) = 5c3871d89910bfb32f5fcab2aa4b9ec68e65a99f
|
|
|
fc69222 |
Provides: bundled(golang(github.com/prometheus/common)) = 7600349dcfe1abd18d72d3a1770870d9800a7801
|
|
|
fc69222 |
Provides: bundled(golang(github.com/prometheus/procfs)) = ae68e2d4c00fed4943b5f6698d504a5fe083da8a
|
|
|
fc69222 |
Provides: bundled(golang(github.com/sirupsen/logrus)) = c155da19408a8799da419ed3eeb0cb5db0ad5dbc
|
|
|
fc69222 |
Provides: bundled(golang(golang.org/x/crypto)) = a49355c7e3f8fe157a85be2f77e6e269a0f89602
|
|
|
fc69222 |
Provides: bundled(golang(golang.org/x/net)) = d0887baf81f4598189d4e12a37c6da86f0bba4d0
|
|
|
fc69222 |
Provides: bundled(golang(golang.org/x/sys)) = ac767d655b305d4e9612f5f6e33120b9176c4ad4
|
|
|
fc69222 |
Provides: bundled(golang(golang.org/x/text)) = f21a4dfb5e38f5895301dc265a8def02365cc3d0
|
|
|
fc69222 |
Provides: bundled(golang(google.golang.org/genproto)) = e92b116572682a5b432ddd840aeaba2a559eeff1
|
|
|
fc69222 |
Provides: bundled(golang(google.golang.org/grpc)) = 168a6198bcb0ef175f7dacec0b8691fc141dc9b8
|
|
|
fc69222 |
Obsoletes: reg-server < %{version}
|
|
|
eee0e33 |
|
|
|
eee0e33 |
%description
|
|
|
eee0e33 |
Docker registry v2 client.
|
|
|
eee0e33 |
|
|
|
eee0e33 |
%prep
|
|
|
fc69222 |
%setup -q -n %{name}-%{version}
|
|
|
549ed79 |
|
|
|
eee0e33 |
# Have to move things around because of how golang likes to search $GOPATH
|
|
|
eee0e33 |
cd ../
|
|
|
eee0e33 |
mv $OLDPWD hack
|
|
|
eee0e33 |
mkdir $OLDPWD
|
|
|
eee0e33 |
cd $OLDPWD
|
|
|
eee0e33 |
mkdir -p $(pwd)/go/src/%{import_path}
|
|
|
eee0e33 |
mv ../hack/* $(pwd)/go/src/%{import_path}/
|
|
|
eee0e33 |
|
|
|
3b40a24 |
# Have to mess with the pathing even more to make the older version of golang
|
|
|
3b40a24 |
# in el7 happy.
|
|
|
3b40a24 |
%if 0%{?epel}
|
|
|
3b40a24 |
for d in $(ls $(pwd)/go/src/%{import_path}/vendor/)
|
|
|
3b40a24 |
do
|
|
|
3b40a24 |
if [[ -d "$(pwd)/go/src/%{import_path}/vendor/${d}" ]]; then
|
|
|
3b40a24 |
printf "D VALUE: %s\n" "${d}"
|
|
|
3b40a24 |
mkdir -p $(pwd)/go/src/${d}
|
|
|
3b40a24 |
cp -r $(pwd)/go/src/%{import_path}/vendor/${d}/* $(pwd)/go/src/${d}/
|
|
|
3b40a24 |
fi
|
|
|
3b40a24 |
done
|
|
|
3b40a24 |
%endif # 0%{?epel}
|
|
|
eee0e33 |
|
|
|
eee0e33 |
%build
|
|
|
eee0e33 |
export GOPATH="$(pwd)/go:%{buildroot}%{gopath}:%{gopath}"
|
|
|
eee0e33 |
|
|
|
eee0e33 |
cd $(pwd)/go/src/%{import_path}/
|
|
|
eee0e33 |
|
|
|
eee0e33 |
# Leave this here for when we can sort out the debuginfo fix
|
|
|
eee0e33 |
# https://bugzilla.redhat.com/show_bug.cgi?id=1432214
|
|
|
eee0e33 |
#go build \
|
|
|
eee0e33 |
# -ldflags '-B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d \' \\n\')' \
|
|
|
eee0e33 |
# -o reg .
|
|
|
eee0e33 |
#
|
|
|
eee0e33 |
#go build \
|
|
|
eee0e33 |
# -ldflags '-B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d \' \\n\')' \
|
|
|
eee0e33 |
# -o reg-server ./server
|
|
|
eee0e33 |
|
|
|
eee0e33 |
go build -o reg .
|
|
|
eee0e33 |
|
|
|
eee0e33 |
%install
|
|
|
eee0e33 |
|
|
|
eee0e33 |
# Install the binaries
|
|
|
eee0e33 |
cd ./go/src/%{import_path}/
|
|
|
eee0e33 |
mkdir -p %{buildroot}%{_bindir}
|
|
|
eee0e33 |
install -p -m 0755 %{name} %{buildroot}%{_bindir}/%{name}
|
|
|
eee0e33 |
|
|
|
eee0e33 |
# Install templates and static content
|
|
|
eee0e33 |
mkdir -p %{buildroot}%{_sharedstatedir}/%{name}-server
|
|
|
eee0e33 |
install -d server/templates/ %{buildroot}/%{_sharedstatedir}/%{name}-server/templates/
|
|
|
eee0e33 |
install -d server/static/ %{buildroot}%{_sharedstatedir}/%{name}-server/static/
|
|
|
eee0e33 |
cp -p -r server/templates/* %{buildroot}%{_sharedstatedir}/%{name}-server/templates/
|
|
|
eee0e33 |
cp -p -r server/static/* %{buildroot}%{_sharedstatedir}/%{name}-server/static/
|
|
|
eee0e33 |
|
|
|
eee0e33 |
# Install the systemd unit
|
|
|
eee0e33 |
mkdir -p %{buildroot}%{_unitdir}
|
|
|
eee0e33 |
install -p -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/%{name}-server.service
|
|
|
eee0e33 |
|
|
|
eee0e33 |
# Install the sysconfig file
|
|
|
eee0e33 |
mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
|
|
|
eee0e33 |
install -p -m 0640 %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/%{name}-server
|
|
|
eee0e33 |
|
|
|
eee0e33 |
|
|
|
eee0e33 |
mkdir -p %{buildroot}/%{name}-%{version}
|
|
|
eee0e33 |
|
|
|
eee0e33 |
# Setup doc files for doc macro
|
|
|
eee0e33 |
for i in README.md Dockerfile Makefile
|
|
|
eee0e33 |
do
|
|
|
fc69222 |
cp -p ${i} %{_builddir}/%{name}-%{version}/
|
|
|
eee0e33 |
done
|
|
|
eee0e33 |
|
|
|
eee0e33 |
# Setup license file for license macro
|
|
|
fc69222 |
cp -p LICENSE %{_builddir}/%{name}-%{version}/
|
|
|
eee0e33 |
|
|
|
fc69222 |
%post
|
|
|
eee0e33 |
%systemd_post %{name}-server.service
|
|
|
eee0e33 |
|
|
|
fc69222 |
%preun
|
|
|
eee0e33 |
%systemd_preun %{name}-server.service
|
|
|
eee0e33 |
|
|
|
fc69222 |
%postun
|
|
|
eee0e33 |
%systemd_postun
|
|
|
eee0e33 |
|
|
|
eee0e33 |
%files
|
|
|
eee0e33 |
%doc README.md Dockerfile Makefile
|
|
|
eee0e33 |
%license LICENSE
|
|
|
eee0e33 |
%{_bindir}/%{name}
|
|
|
eee0e33 |
%{_unitdir}/%{name}-server.service
|
|
|
eee0e33 |
%config(noreplace) %{_sysconfdir}/sysconfig/%{name}-server
|
|
|
eee0e33 |
%config(noreplace) %{_sharedstatedir}/%{name}-server/static/
|
|
|
eee0e33 |
%config(noreplace) %{_sharedstatedir}/%{name}-server/templates/
|
|
|
eee0e33 |
|
|
|
eee0e33 |
%changelog
|
|
|
ec723d6 |
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.5-3
|
|
|
ec723d6 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
|
ec723d6 |
|
|
|
8efe93e |
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.5-2
|
|
|
8efe93e |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
|
8efe93e |
|
|
|
fc69222 |
* Tue Oct 16 2018 Kevin Fenzi <kevin@scrye.com> - 0.15.5-1
|
|
|
fc69222 |
- Update to 0.15.5
|
|
|
fc69222 |
|
|
|
fc69222 |
* Thu Jul 26 2018 Kevin Fenzi <kevin@scrye.com> - 0.15.4-1
|
|
|
fc69222 |
- Update to 0.15.4.
|
|
|
fc69222 |
|
|
|
f099da7 |
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.1-9
|
|
|
f099da7 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
|
f099da7 |
|
|
|
5a2ab72 |
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.1-8
|
|
|
5a2ab72 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
5a2ab72 |
|
|
|
8f25730 |
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.1-7
|
|
|
8f25730 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
|
|
8f25730 |
|
|
|
03b7787 |
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.1-6
|
|
|
03b7787 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
|
03b7787 |
|
|
|
549ed79 |
* Thu Jun 29 2017 Adam Miller <maxamillion@fedoraproject.org> - 0.4.1-5
|
|
|
549ed79 |
- Actually apply the patch for single-run execution
|
|
|
549ed79 |
|
|
|
3b40a24 |
* Thu Jun 29 2017 Adam Miller <maxamillion@fedoraproject.org> - 0.4.1-4
|
|
|
3b40a24 |
- Fix epel7 build
|
|
|
3b40a24 |
|
|
|
bb73934 |
* Tue Jun 27 2017 Adam Miller <maxamillion@fedoraproject.org> - 0.4.1-3
|
|
|
bb73934 |
- Add patch to allow single-run execution of reg-server for static html
|
|
|
bb73934 |
generation
|
|
|
bb73934 |
|
|
|
8cc907f |
* Mon Jun 19 2017 Adam Miller <maxamillion@fedoraproject.org> - 0.4.1-2
|
|
|
8cc907f |
- Add ghost file entry for statically generated index.html
|
|
|
8cc907f |
|
|
|
eee0e33 |
* Mon Jun 12 2017 Adam Miller <maxamillion@fedoraproject.org> - 0.4.1-1
|
|
|
eee0e33 |
- Update to latest upstream
|
|
|
eee0e33 |
- Switch to using upstream versioning, they are tagging versions now.
|
|
|
eee0e33 |
|
|
|
eee0e33 |
* Tue Mar 21 2017 Adam Miller <maxamillion@fedoraproject.org> - 0.2.0-2.git.0.94d0af5
|
|
|
eee0e33 |
- Move static/templates and systemd workingdir to /var/lib/reg-server
|
|
|
eee0e33 |
- Change Source0 to point to github archive url instead of local git-archive
|
|
|
eee0e33 |
- Fix tabs vs spaces in the spec file
|
|
|
eee0e33 |
|
|
|
eee0e33 |
* Tue Mar 14 2017 Adam Miller <maxamillion@fedoraproject.org> - 0.2.0-1.git.0.94d0af5
|
|
|
eee0e33 |
- First package for Fedora
|