Add go "dep" tool to support lockfiles in go pkgs
The go compiler supports "go get" to download dependencies, but it will download the latest version of dependencies from the git repository of the dependency. This could lead to non-reproducable builds, or the potential of dependency API changes (including deprecated features) to break the build of packages. The "dep" tool allows for a lockfile to be created, which captures the git commit ID of dependencies, and can restore dependencies to the captured state. Since no binary package containing "dep" is currently available for CentOS, this change adds the package and compiles it from source. Depends-On: https://review.openstack.org/625333 Story: 2004617 Task: 28525 Change-Id: Ic3bfad6a419b344e7c147c3839d16956c432a99e Signed-off-by: Jason McKenna <jason.mckenna@windriver.com>
This commit is contained in:
parent
0dd574e635
commit
38613cac94
2
base/golang-dep/centos/build_srpm.data
Normal file
2
base/golang-dep/centos/build_srpm.data
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
COPY_LIST="$CGCS_BASE/downloads/dep-v0.5.0.tar.gz"
|
||||||
|
TIS_PATCH_VER=0
|
45
base/golang-dep/centos/golang-dep.spec
Normal file
45
base/golang-dep/centos/golang-dep.spec
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
Name: golang-dep
|
||||||
|
Version: 0.5.0
|
||||||
|
Release: %{tis_patch_ver}%{?_tis_dist}
|
||||||
|
Summary: Go dep dependency management tool
|
||||||
|
Group: Development/Languages
|
||||||
|
License: Go
|
||||||
|
URL: https://github.com/golang/dep
|
||||||
|
Source: dep-v0.5.0.tar.gz
|
||||||
|
BuildRequires: golang
|
||||||
|
Requires: golang
|
||||||
|
|
||||||
|
%global with_debug 0
|
||||||
|
%global debug_package %{nil}
|
||||||
|
%define __spec_install_post %{nil}
|
||||||
|
|
||||||
|
%define tooldir %{_libdir}/go/pkg/%{name}/linux_amd64
|
||||||
|
|
||||||
|
%if ! 0%{?gobuild:1}
|
||||||
|
%define gobuild(o:) go build -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n')" -a -v -x %{?**};
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description
|
||||||
|
This package includes additional go development tools.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -T -c -n go/src/github.com/golang/dep
|
||||||
|
tar --strip-components=1 -x -f %{SOURCE0}
|
||||||
|
|
||||||
|
%build
|
||||||
|
export GOPATH=%{_builddir}/go
|
||||||
|
(cd cmd/dep && %gobuild -o dep)
|
||||||
|
|
||||||
|
%install
|
||||||
|
rm -rf %{buildroot}
|
||||||
|
install -d %{buildroot}%{_bindir}
|
||||||
|
install -d %{buildroot}%{tooldir}
|
||||||
|
install cmd/dep/dep %{buildroot}%{_bindir}
|
||||||
|
|
||||||
|
%clean
|
||||||
|
rm -rf %{buildroot}
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_bindir}/dep
|
||||||
|
|
@ -145,6 +145,7 @@ database/python-psycopg2
|
|||||||
base/crontabs
|
base/crontabs
|
||||||
base/dnsmasq
|
base/dnsmasq
|
||||||
base/dnsmasq-config
|
base/dnsmasq-config
|
||||||
|
base/golang-dep
|
||||||
filesystem/parted
|
filesystem/parted
|
||||||
security/python-keyring
|
security/python-keyring
|
||||||
grub/grub2
|
grub/grub2
|
||||||
|
Loading…
Reference in New Issue
Block a user