Blob Blame History Raw
%if 0%{?fedora} || 0%{?rhel} == 6
%global with_debug 1
%global with_check 1
%else
%global with_debug 0
%global with_check 0
%endif

%if 0%{?with_debug}
%global _dwz_low_mem_die_limit 0
%else
%global debug_package   %{nil}
%endif

%global provider        github
%global provider_tld    com
%global project         estesp
%global repo            manifest-tool
# https://github.com/estesp/manifest-tool
%global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo}
%global import_path     %{provider_prefix}
%global commit         a28af2b6bf3748859149bf161eb0630e677c3906
%global shortcommit    %(c=%{commit}; echo ${c:0:7})

Name:           manifest-tool
Version:        1.0.0
Release:        0.rc2%{?dist}.1
#Release:        5.git%{shortcommit}%{?dist}
Summary:        A command line tool used for creating manifest list objects
License:        ASL 2.0
URL:            https://%{provider_prefix}
#Source:         https://%{provider_prefix}/archive/%{commit}/%{repo}-%{shortcommit}.tar.gz
Source:         https://%{provider_prefix}/%{repo}-%{version}-rc2.tar.gz

ExclusiveArch:  x86_64 aarch64 ppc64le s390x
# If go_compiler is not set to 1, there is no virtual provide. Use golang instead.
BuildRequires:  %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang}
BuildRequires:  git
Provides:       %{repo} = %{version}-%{release}
Provides:       bundled(golang(github.com/codegangsta/cli)) = v1.2.0
Provides:       bundled(golang(github.com/Sirupsen/logrus)) = v1.0.3
Provides:       bundled(golang(github.com/vbatts/tar-split)) = v0.10.1
Provides:       bundled(golang(github.com/gorilla/mux))
Provides:       bundled(golang(golang.org/x/net))
Provides:       bundled(golang(golang.org/x/time))
Provides:       bundled(golang(golang.org/x/sys))
Provides:       bundled(golang(golang.org/x/crypto)) = 49796115aa4b964c318aad4f3084fdb41e9aa067
Provides:       bundled(golang(github.com/go-yaml/yaml)) = v2
Provides:       bundled(golang(github.com/docker/cli)) = 18.09
Provides:       bundled(golang(github.com/docker/docker)) = 18.09
Provides:       bundled(golang(github.com/docker/docker-credential-helpers)) = 5241b46610f2491efdf9d1c85f1ddf5b02f6d962
Provides:       bundled(golang(github.com/docker/distribution)) = 83389a148052d74ac602f5f1d62f86ff2f3c4aa5
Provides:       bundled(golang(github.com/opencontainers/go-digest)) = a6d0ee40d4207ea02364bd3b9e8e77b9159ba1eb
Provides:       bundled(golang(github.com/docker/go-connections))
Provides:       bundled(golang(github.com/docker/go-units))
Provides:       bundled(golang(github.com/docker/libtrust))
Provides:       bundled(golang(github.com/opencontainers/runc)) = 96ec2177ae841256168fcf76954f7177af9446eb
Provides:       bundled(golang(github.com/opencontainers/runtime-spec)) = eba862dc2470385a233c7507392675cbeadf7353
Provides:       bundled(golang(github.com/opencontainers/image-spec)) = v1.0.1
Provides:       bundled(golang(github.com/prometheus/client_golang)) = f4fb1b73fb099f396a7f0036bf86aa8def4ed823
Provides:       bundled(golang(github.com/prometheus/client_model)) = 99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c
Provides:       bundled(golang(github.com/prometheus/common)) = 89604d197083d4781071d3c65855d24ecfb0a563
Provides:       bundled(golang(github.com/prometheus/procfs)) = cb4147076ac75738c9a7d279075a253c0cc5acbd
Provides:       bundled(golang(github.com/beorn7/perks)) = 4c0e84591b9aa9e6dcfdf3e020114cd81f89d5f9
Provides:       bundled(golang(github.com/matttproud/golang_protobuf_extensions)) = v1.0.0
Provides:       bundled(golang(google.golang.org/grpc)) = v1.12.0
Provides:       bundled(golang(google.golang.org/genproto)) = d80a6e20e776b0b17a324d0ba1ab50a39c8e8944
Provides:       bundled(golang(github.com/pkg/errors))
Provides:       bundled(golang(github.com/gogo/protobuf)) = v1.0.0
Provides:       bundled(golang(github.com/golang/protobuf)) = v1.1.0
Provides:       bundled(golang(github.com/Azure/go-ansiterm))
Provides:       bundled(golang(github.com/Microsoft/go-winio))
Provides:       bundled(golang(github.com/mattn/go-shellwords))
Provides:       bundled(golang(github.com/containerd/containerd)) = 9754871865f7fe2f4e74d43e2fc7ccd237edcbce
Provides:       bundled(golang(github.com/containerd/continuity)) = 004b46473808b3e7a4a3049c20e4376c91eb966d
Provides:       bundled(golang(github.com/Nveen/Gotty)) = a8b993ba6abdb0e0c12b0125c603323a71c7790c


%description
This tool was mainly created for the purpose of viewing, creating, and
pushing the new manifests list object type in the Docker registry. Manifest
lists are defined in the v2.2 image specification and exist mainly for the
purpose of supporting multi-architecture and/or multi-platform images within
a Docker registry.

%prep
#autosetup -Sgit -n %{name}-%{commit}
%autosetup -n %{name}-%{version}-rc2

%build
mkdir _build
pushd _build
mkdir -p src/%{provider}.%{provider_tld}/%{project}
ln -s $(dirs +1 -l) src/%{import_path}
popd

export GOPATH=$(pwd)/_build:$(pwd):%{gopath}
make binary

%install
export GOPATH=$(pwd)/_build:$(pwd):%{gopath}
make DESTDIR=%{buildroot} install

%files
%license LICENSE
%doc README.md
%{_bindir}/%{name}

%changelog
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.0-0.rc2.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

* Fri Mar 22 2019 Josh Boyer <jwboyer@fedoraproject.org> - 1.0.0-0.rc2
- Update to 1.0.0-rc2 release

* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Tue Oct 10 2017 Josh Boyer <jwboyer@fedoraproject.org> - 0.7.0-1
- Update to 0.7.0 upstream release

* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.6.0-5.gita28af2b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild

* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.6.0-4.gita28af2b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Mon Jul 10 2017 Josh Boyer <jwboyer@fedoraproject.org> 0.6.0-3.gita28af2b
- Add bundled provides (rhbz 1467322)

* Wed Jul 05 2017 Josh Boyer <jwboyer@fedoraproject.org> 0.6.0-2.gita28af2b
- Cleanup with_bundled and license macro definitions (rhbz 1467322)

* Sun Jul 02 2017 Josh Boyer <jwboyer@fedoraproject.org> 0.6.0-1.gita28af2b
- Initial package for manifest-tool