spec: regenerate from go2rpm

The old spec file was a mess full of things we didn't need/use.
Regenerate a new one from `go2rpm` and then import back the bits we
need.

Co-authored by: Stephen Lowrie <slowrie@redhat.com>
This commit is contained in:
Jonathan Lebon 2021-05-26 06:27:06 +00:00
parent 882b9d831a
commit 57fc8be7c9

View File

@ -1,74 +1,26 @@
# Original spec file for 0.28.0 as generated by: # Generated by go2rpm 1.3
# gofed repo2spec --detect github.com/coreos/ignition --commit f7079129b8651ac51dba14c3af65692bb413c1dd --with-extra --with-build -f %bcond_without check
# With:
# gofed/gofed:v1.0.1 docker image
# Modified by hand for v2.0.0-alpha
# If any of the following macros should be set otherwise,
# you can wrap any of them with the following conditions:
# - %%if 0%%{centos} == 7
# - %%if 0%%{?rhel} == 7
# - %%if 0%%{?fedora} == 23
# Or just test for particular distribution:
# - %%if 0%%{centos}
# - %%if 0%%{?rhel}
# - %%if 0%%{?fedora}
#
# Be aware, on centos, both %%rhel and %%centos are set. If you want to test
# rhel specific macros, you can use %%if 0%%{?rhel} && 0%%{?centos} == 0 condition.
# (Don't forget to replace double percentage symbol with single one in order to apply a condition)
# Not all devel deps exist in Fedora so you can't install the devel rpm
# so we need to build without devel for now
# Generate devel rpm
%global with_devel 0
# Build project from bundled dependencies
%global with_bundled 1
# Build with debug info rpm
%global with_debug 1
# Run tests in check section
%global with_check 1
# Generate unit-test rpm
%global with_unit_test 1
%if 0%{?with_debug}
%global _dwz_low_mem_die_limit 0
%else
%global debug_package %{nil}
%endif
%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
# macros for Ignition
%global provider github
%global provider_tld com
%global project coreos
%global repo ignition
# https://github.com/coreos/ignition # https://github.com/coreos/ignition
%global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo} %global goipath github.com/coreos/ignition
%global import_path %{provider_prefix}/v2 %global gomodulesmode GO111MODULE=on
# define ldflags, buildflags, testflags here. The ldflags were Version: 2.10.1
# taken from ./build. We will need to periodically check these
# for consistency %gometa
%global ldflags ' -X github.com/coreos/ignition/v2/internal/version.Raw=%{version} '
%global buildflags %nil %global golicenses LICENSE
%global testflags %nil %global godocs README.md docs/
%global dracutlibdir %{_prefix}/lib/dracut %global dracutlibdir %{_prefix}/lib/dracut
Name: ignition Name: ignition
Version: 2.10.1 Release: 2%{?dist}
Release: 1%{?dist}
Summary: First boot installer and configuration tool Summary: First boot installer and configuration tool
License: ASL 2.0
URL: https://%{provider_prefix}
Source0: https://%{provider_prefix}/archive/v%{version}/%{repo}-%{version}.tar.gz
%define gopath %{_datadir}/gocode # Upstream license specification: Apache-2.0
ExclusiveArch: %{go_arches} License: ASL 2.0
BuildRequires: golang >= 1.10 URL: %{gourl}
# add non golang BuildRequires that weren't detected Source0: %{gosource}
BuildRequires: libblkid-devel BuildRequires: libblkid-devel
# Requires for 'disks' stage # Requires for 'disks' stage
@ -82,36 +34,7 @@ Requires: dracut-network
Obsoletes: ignition-dracut < 0.31.0-3 Obsoletes: ignition-dracut < 0.31.0-3
# Main rpm package BuildRequires # Generated by `go-mods-to-bundled-provides.py | sort`
%if ! 0%{?with_bundled}
# Remaining dependencies not included in main packages (sorted)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws/awserr)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws/credentials)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws/ec2metadata)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws/session)
BuildRequires: golang(github.com/aws/aws-sdk-go/service/s3)
BuildRequires: golang(github.com/aws/aws-sdk-go/service/s3/s3manager)
BuildRequires: golang(github.com/coreos/go-semver/semver)
BuildRequires: golang(github.com/coreos/go-systemd/dbus)
BuildRequires: golang(github.com/coreos/go-systemd/unit)
BuildRequires: golang(github.com/coreos/vcontext/json)
BuildRequires: golang(github.com/coreos/vcontext/path)
BuildRequires: golang(github.com/coreos/vcontext/report)
BuildRequires: golang(github.com/coreos/vcontext/tree)
BuildRequires: golang(github.com/coreos/vcontext/validate)
BuildRequires: golang(github.com/google/uuid)
BuildRequires: golang(github.com/pin/tftp)
BuildRequires: golang(github.com/vincent-petithory/dataurl)
BuildRequires: golang(github.com/vmware/vmw-guestinfo/rpcvmx)
BuildRequires: golang(github.com/vmware/vmw-guestinfo/vmcheck)
BuildRequires: golang(github.com/vmware/vmw-ovflib)
BuildRequires: golang(golang.org/x/net/http/httpproxy)
%endif
# Main package Provides (generated with go-mods-to-bundled-provides.py | sort)
%if 0%{?with_bundled}
Provides: bundled(golang(cloud.google.com/go)) = 0.58.0 Provides: bundled(golang(cloud.google.com/go)) = 0.58.0
Provides: bundled(golang(cloud.google.com/go/compute/metadata)) = 0.58.0 Provides: bundled(golang(cloud.google.com/go/compute/metadata)) = 0.58.0
Provides: bundled(golang(cloud.google.com/go/iam)) = 0.58.0 Provides: bundled(golang(cloud.google.com/go/iam)) = 0.58.0
@ -185,12 +108,28 @@ Provides: bundled(golang(github.com/vmware/vmw-guestinfo/rpcout)) = 0.0.0-201707
Provides: bundled(golang(github.com/vmware/vmw-guestinfo/rpcvmx)) = 0.0.0-20170707015358.git25eff159a728 Provides: bundled(golang(github.com/vmware/vmw-guestinfo/rpcvmx)) = 0.0.0-20170707015358.git25eff159a728
Provides: bundled(golang(github.com/vmware/vmw-guestinfo/vmcheck)) = 0.0.0-20170707015358.git25eff159a728 Provides: bundled(golang(github.com/vmware/vmw-guestinfo/vmcheck)) = 0.0.0-20170707015358.git25eff159a728
Provides: bundled(golang(github.com/vmware/vmw-ovflib)) = 0.0.0-20170608004843.git1f217b9dc714 Provides: bundled(golang(github.com/vmware/vmw-ovflib)) = 0.0.0-20170608004843.git1f217b9dc714
Provides: bundled(golang(go.opencensus.io)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/internal)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/internal/tagencoding)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/metric/metricdata)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/metric/metricproducer)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/plugin/ochttp)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/plugin/ochttp/propagation/b3)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/resource)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/stats)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/stats/internal)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/stats/view)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/tag)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/trace)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/trace/internal)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/trace/propagation)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/trace/tracestate)) = 0.22.5
Provides: bundled(golang(golang.org/x/net/context)) = 0.0.0-20200602114024.git627f9648deb9 Provides: bundled(golang(golang.org/x/net/context)) = 0.0.0-20200602114024.git627f9648deb9
Provides: bundled(golang(golang.org/x/net/context/ctxhttp)) = 0.0.0-20200602114024.git627f9648deb9 Provides: bundled(golang(golang.org/x/net/context/ctxhttp)) = 0.0.0-20200602114024.git627f9648deb9
Provides: bundled(golang(golang.org/x/net/http2)) = 0.0.0-20200602114024.git627f9648deb9
Provides: bundled(golang(golang.org/x/net/http2/hpack)) = 0.0.0-20200602114024.git627f9648deb9
Provides: bundled(golang(golang.org/x/net/http/httpguts)) = 0.0.0-20200602114024.git627f9648deb9 Provides: bundled(golang(golang.org/x/net/http/httpguts)) = 0.0.0-20200602114024.git627f9648deb9
Provides: bundled(golang(golang.org/x/net/http/httpproxy)) = 0.0.0-20200602114024.git627f9648deb9 Provides: bundled(golang(golang.org/x/net/http/httpproxy)) = 0.0.0-20200602114024.git627f9648deb9
Provides: bundled(golang(golang.org/x/net/http2)) = 0.0.0-20200602114024.git627f9648deb9
Provides: bundled(golang(golang.org/x/net/http2/hpack)) = 0.0.0-20200602114024.git627f9648deb9
Provides: bundled(golang(golang.org/x/net/idna)) = 0.0.0-20200602114024.git627f9648deb9 Provides: bundled(golang(golang.org/x/net/idna)) = 0.0.0-20200602114024.git627f9648deb9
Provides: bundled(golang(golang.org/x/net/internal/timeseries)) = 0.0.0-20200602114024.git627f9648deb9 Provides: bundled(golang(golang.org/x/net/internal/timeseries)) = 0.0.0-20200602114024.git627f9648deb9
Provides: bundled(golang(golang.org/x/net/trace)) = 0.0.0-20200602114024.git627f9648deb9 Provides: bundled(golang(golang.org/x/net/trace)) = 0.0.0-20200602114024.git627f9648deb9
@ -242,24 +181,6 @@ Provides: bundled(golang(google.golang.org/genproto/googleapis/iam/v1)) = 0.0.0-
Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc/code)) = 0.0.0-20200610104632.gita5b850bcf112 Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc/code)) = 0.0.0-20200610104632.gita5b850bcf112
Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc/status)) = 0.0.0-20200610104632.gita5b850bcf112 Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc/status)) = 0.0.0-20200610104632.gita5b850bcf112
Provides: bundled(golang(google.golang.org/genproto/googleapis/type/expr)) = 0.0.0-20200610104632.gita5b850bcf112 Provides: bundled(golang(google.golang.org/genproto/googleapis/type/expr)) = 0.0.0-20200610104632.gita5b850bcf112
Provides: bundled(golang(go.opencensus.io)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/internal)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/internal/tagencoding)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/metric/metricdata)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/metric/metricproducer)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/plugin/ochttp)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/plugin/ochttp/propagation/b3)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/resource)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/stats)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/stats/internal)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/stats/view)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/tag)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/trace)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/trace/internal)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/trace/propagation)) = 0.22.5
Provides: bundled(golang(go.opencensus.io/trace/tracestate)) = 0.22.5
%endif
%description %description
Ignition is a utility used to manipulate systems during the initramfs. Ignition is a utility used to manipulate systems during the initramfs.
@ -269,144 +190,8 @@ boot, Ignition reads its configuration from a source of truth (remote
URL, network metadata service, hypervisor bridge, etc.) and applies URL, network metadata service, hypervisor bridge, etc.) and applies
the configuration. the configuration.
############## devel subpackage ##############
%if 0%{?with_devel}
%package devel
Summary: %{summary}
BuildArch: noarch
License: ASL 2.0
# devel subpackage BuildRequires
%if 0%{?with_check} && ! 0%{?with_bundled}
# These buildrequires are only for our tests (check) (sorted)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws/awserr)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws/credentials)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws/ec2metadata)
BuildRequires: golang(github.com/aws/aws-sdk-go/aws/session)
BuildRequires: golang(github.com/aws/aws-sdk-go/service/s3)
BuildRequires: golang(github.com/aws/aws-sdk-go/service/s3/s3manager)
BuildRequires: golang(github.com/coreos/go-semver/semver)
BuildRequires: golang(github.com/coreos/go-systemd/dbus)
BuildRequires: golang(github.com/coreos/go-systemd/unit)
BuildRequires: golang(github.com/coreos/vcontext/json)
BuildRequires: golang(github.com/coreos/vcontext/path)
BuildRequires: golang(github.com/coreos/vcontext/report)
BuildRequires: golang(github.com/coreos/vcontext/tree)
BuildRequires: golang(github.com/coreos/vcontext/validate)
BuildRequires: golang(github.com/google/uuid)
BuildRequires: golang(github.com/pin/tftp)
BuildRequires: golang(github.com/vincent-petithory/dataurl)
BuildRequires: golang(github.com/vmware/vmw-guestinfo/rpcvmx)
BuildRequires: golang(github.com/vmware/vmw-guestinfo/vmcheck)
BuildRequires: golang(github.com/vmware/vmw-ovflib)
BuildRequires: golang(golang.org/x/net/http/httpproxy)
%endif
# devel subpackage Requires. This is basically the source code from
# all of the libraries that ignition imports during build. (sorted)
Requires: golang(github.com/aws/aws-sdk-go/aws)
Requires: golang(github.com/aws/aws-sdk-go/aws/awserr)
Requires: golang(github.com/aws/aws-sdk-go/aws/credentials)
Requires: golang(github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds)
Requires: golang(github.com/aws/aws-sdk-go/aws/ec2metadata)
Requires: golang(github.com/aws/aws-sdk-go/aws/session)
Requires: golang(github.com/aws/aws-sdk-go/service/s3)
Requires: golang(github.com/aws/aws-sdk-go/service/s3/s3manager)
Requires: golang(github.com/coreos/go-semver/semver)
Requires: golang(github.com/coreos/go-systemd/dbus)
Requires: golang(github.com/coreos/go-systemd/unit)
Requires: golang(github.com/coreos/vcontext/json)
Requires: golang(github.com/coreos/vcontext/path)
Requires: golang(github.com/coreos/vcontext/report)
Requires: golang(github.com/coreos/vcontext/tree)
Requires: golang(github.com/coreos/vcontext/validate)
Requires: golang(github.com/google/uuid)
Requires: golang(github.com/pin/tftp)
Requires: golang(github.com/vincent-petithory/dataurl)
Requires: golang(github.com/vmware/vmw-guestinfo/rpcvmx)
Requires: golang(github.com/vmware/vmw-guestinfo/vmcheck)
Requires: golang(github.com/vmware/vmw-ovflib)
Requires: golang(golang.org/x/net/http/httpproxy)
# devel subpackage Provides (sorted)
Provides: golang(%{import_path}/config) = %{version}-%{release}
Provides: golang(%{import_path}/config/merge) = %{version}-%{release}
Provides: golang(%{import_path}/config/shared) = %{version}-%{release}
Provides: golang(%{import_path}/config/shared/errors) = %{version}-%{release}
Provides: golang(%{import_path}/config/shared/validations) = %{version}-%{release}
Provides: golang(%{import_path}/config/translate) = %{version}-%{release}
Provides: golang(%{import_path}/config/translate/tests/pkga) = %{version}-%{release}
Provides: golang(%{import_path}/config/translate/tests/pkgb) = %{version}-%{release}
Provides: golang(%{import_path}/config/util) = %{version}-%{release}
Provides: golang(%{import_path}/config/v3_0) = %{version}-%{release}
Provides: golang(%{import_path}/config/v3_0/types) = %{version}-%{release}
Provides: golang(%{import_path}/config/v3_1_experimental) = %{version}-%{release}
Provides: golang(%{import_path}/config/v3_1_experimental/translate) = %{version}-%{release}
Provides: golang(%{import_path}/config/v3_1_experimental/types) = %{version}-%{release}
Provides: golang(%{import_path}/config/validate) = %{version}-%{release}
Provides: golang(%{import_path}/tests) = %{version}-%{release}
Provides: golang(%{import_path}/tests/negative/files) = %{version}-%{release}
Provides: golang(%{import_path}/tests/negative/filesystems) = %{version}-%{release}
Provides: golang(%{import_path}/tests/negative/general) = %{version}-%{release}
Provides: golang(%{import_path}/tests/negative/partitions) = %{version}-%{release}
Provides: golang(%{import_path}/tests/negative/proxy) = %{version}-%{release}
Provides: golang(%{import_path}/tests/negative/regression) = %{version}-%{release}
Provides: golang(%{import_path}/tests/negative/security) = %{version}-%{release}
Provides: golang(%{import_path}/tests/negative/timeouts) = %{version}-%{release}
Provides: golang(%{import_path}/tests/positive/files) = %{version}-%{release}
Provides: golang(%{import_path}/tests/positive/filesystems) = %{version}-%{release}
Provides: golang(%{import_path}/tests/positive/general) = %{version}-%{release}
Provides: golang(%{import_path}/tests/positive/partitions) = %{version}-%{release}
Provides: golang(%{import_path}/tests/positive/passwd) = %{version}-%{release}
Provides: golang(%{import_path}/tests/positive/proxy) = %{version}-%{release}
Provides: golang(%{import_path}/tests/positive/regression) = %{version}-%{release}
Provides: golang(%{import_path}/tests/positive/security) = %{version}-%{release}
Provides: golang(%{import_path}/tests/positive/systemd) = %{version}-%{release}
Provides: golang(%{import_path}/tests/positive/timeouts) = %{version}-%{release}
Provides: golang(%{import_path}/tests/register) = %{version}-%{release}
Provides: golang(%{import_path}/tests/registry) = %{version}-%{release}
Provides: golang(%{import_path}/tests/servers) = %{version}-%{release}
Provides: golang(%{import_path}/tests/types) = %{version}-%{release}
%description devel
%{summary}
This package contains library source intended for
building other packages which use import path with
%{import_path} prefix.
%endif
############## unit-test-devel subpackage ##############
%if 0%{?with_unit_test} && 0%{?with_devel}
%package unit-test-devel
Summary: Unit tests for %{name} package
License: ASL 2.0
%if 0%{?with_check}
#Here comes all BuildRequires: PACKAGE the unit tests
#in %%check section need for running
%endif
# test subpackage tests code from devel subpackage
Requires: %{name}-devel = %{version}-%{release}
%if 0%{?with_check} && ! 0%{?with_bundled}
BuildRequires: golang(github.com/stretchr/testify/assert)
%endif
Requires: golang(github.com/stretchr/testify/assert)
%description unit-test-devel
%{summary}
This package contains unit tests for project
providing packages with %{import_path} prefix.
%endif
############## validate subpackage ############## ############## validate subpackage ##############
%package validate %package validate
Summary: Validation tool for Ignition configs Summary: Validation tool for Ignition configs
@ -425,6 +210,7 @@ the configuration.
This package contains a tool for validating Ignition configurations. This package contains a tool for validating Ignition configurations.
############## validate-nonlinux subpackage ############## ############## validate-nonlinux subpackage ##############
%package validate-nonlinux %package validate-nonlinux
Summary: Validation tool for Ignition configs for macOS and Windows Summary: Validation tool for Ignition configs for macOS and Windows
@ -440,40 +226,26 @@ building binaries to sign by Fedora release engineering and include on the
Ignition project's Github releases page. Ignition project's Github releases page.
%prep %prep
%autosetup -p1 %goprep -k
%autopatch -p1
%build %build
# Set up PWD as a proper import path for go export LDFLAGS="-X github.com/coreos/ignition/v2/internal/version.Raw=%{version} -X github.com/coreos/ignition/v2/internal/distro.selinuxRelabel=true "
mkdir -p src/%{provider}.%{provider_tld}/%{project} export GOFLAGS="-mod=vendor"
ln -s ../../../ src/%{provider_prefix}
export LDFLAGS=%{ldflags}
# Enable SELinux relabeling
export LDFLAGS+=' -X github.com/coreos/ignition/v2/internal/distro.selinuxRelabel=true '
# Modules, baby!
export GO111MODULE=on
export GOFLAGS='-mod=vendor'
echo "Building ignition..." echo "Building ignition..."
%gobuild -o ./ignition %{import_path}/internal %gobuild -o ./ignition internal/main.go
echo "Building ignition-validate..." echo "Building ignition-validate..."
%gobuild -o ./ignition-validate %{import_path}/validate %gobuild -o ./ignition-validate validate/main.go
echo "Building macOS ignition-validate" %global gocrossbuild go build -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n')" -a -v -x
export GOARCH=amd64
export GOOS=darwin
%gobuild -o ./ignition-validate-x86_64-apple-darwin %{import_path}/validate
echo "Building Windows ignition-validate" echo "Building macOS ignition-validate..."
export GOARCH=amd64 GOARCH=amd64 GOOS=darwin %gocrossbuild -o ./ignition-validate-x86_64-apple-darwin validate/main.go
export GOOS=windows
%gobuild -o ./ignition-validate-x86_64-pc-windows-gnu.exe %{import_path}/validate
# Set this back, just in case echo "Building Windows ignition-validate..."
export GOARCH= GOARCH=amd64 GOOS=windows %gocrossbuild -o ./ignition-validate-x86_64-pc-windows-gnu.exe validate/main.go
export GOOS=linux
%install %install
# dracut modules # dracut modules
@ -494,120 +266,33 @@ install -p -m 0644 ./ignition-validate-x86_64-pc-windows-gnu.exe %{buildroot}%{_
# the command line. Install directly into the dracut module dir. # the command line. Install directly into the dracut module dir.
install -p -m 0755 ./ignition %{buildroot}/%{dracutlibdir}/modules.d/30ignition install -p -m 0755 ./ignition %{buildroot}/%{dracutlibdir}/modules.d/30ignition
# source codes for building projects %if %{with check}
%if 0%{?with_devel}
install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
echo "%%dir %%{gopath}/src/%%{import_path}/." >> devel.file-list
# find all *.go but no *_test.go files and generate devel.file-list
for file in $(find . \( -iname "*.go" -or -iname "*.s" \) \! -iname "*_test.go" | grep -v "vendor") ; do
dirprefix=$(dirname $file)
install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$dirprefix
cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
echo "%%{gopath}/src/%%{import_path}/$file" >> devel.file-list
while [ "$dirprefix" != "." ]; do
echo "%%dir %%{gopath}/src/%%{import_path}/$dirprefix" >> devel.file-list
dirprefix=$(dirname $dirprefix)
done
done
%endif
# testing files for this project
%if 0%{?with_unit_test} && 0%{?with_devel}
install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
# find all *_test.go files and generate unit-test-devel.file-list
for file in $(find . -iname "*_test.go" | grep -v "vendor") ; do
dirprefix=$(dirname $file)
install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$dirprefix
cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
echo "%%{gopath}/src/%%{import_path}/$file" >> unit-test-devel.file-list
while [ "$dirprefix" != "." ]; do
echo "%%dir %%{gopath}/src/%%{import_path}/$dirprefix" >> devel.file-list
dirprefix=$(dirname $dirprefix)
done
done
%endif
%if 0%{?with_devel}
sort -u -o devel.file-list devel.file-list
%endif
%check %check
%if 0%{?with_check} && 0%{?with_unit_test} && 0%{?with_devel} # Exclude the blackbox tests
%if ! 0%{?with_bundled} %gocheck -t tests
export GOPATH=%{buildroot}/%{gopath}:%{gopath}
%else
# Since we aren't packaging up the vendor directory we need to link
# back to it somehow. Hack it up so that we can add the vendor
# directory from BUILD dir as a gopath to be searched when executing
# tests from the BUILDROOT dir.
ln -s ./ ./vendor/src # ./vendor/src -> ./vendor
export GOPATH=%{buildroot}/%{gopath}:$(pwd)/vendor:%{gopath}
%endif %endif
%if ! 0%{?gotest:1}
%global gotest go test
%endif
%gotest %{import_path}/config
%gotest %{import_path}/config/merge
%gotest %{import_path}/config/translate
%gotest %{import_path}/config/v3_0
%gotest %{import_path}/config/v3_0/translate
%gotest %{import_path}/config/v3_0/types
%gotest %{import_path}/config/v3_1
%gotest %{import_path}/config/v3_1/translate
%gotest %{import_path}/config/v3_1/types
%gotest %{import_path}/config/v3_2
%gotest %{import_path}/config/v3_2/translate
%gotest %{import_path}/config/v3_2/types
%gotest %{import_path}/config/v3_3_experimental
%gotest %{import_path}/config/v3_3_experimental/translate
%gotest %{import_path}/config/v3_3_experimental/types
%gotest %{import_path}/config/validate
%gotest %{import_path}/internal/exec/stages/files
%gotest %{import_path}/internal/exec/util
%gotest %{import_path}/internal/registry
%gotest %{import_path}/internal/util
%gotest %{import_path}/tests
%endif
#define license tag if not already defined
%{!?_licensedir:%global license %doc}
%files %files
%license LICENSE %license %{golicenses}
%doc README.md docs/ %doc %{godocs}
%{dracutlibdir}/modules.d/* %{dracutlibdir}/modules.d/*
%{_prefix}/lib/systemd/system/*.service %{_prefix}/lib/systemd/system/*.service
%files validate %files validate
%doc README.md %doc README.md
%license LICENSE %license %{golicenses}
%{_bindir}/%{name}-validate %{_bindir}/ignition-validate
%files validate-nonlinux %files validate-nonlinux
%license LICENSE %license %{golicenses}
%dir %{_datadir}/ignition %dir %{_datadir}/ignition
%{_datadir}/ignition/ignition-validate-x86_64-apple-darwin %{_datadir}/ignition/ignition-validate-x86_64-apple-darwin
%{_datadir}/ignition/ignition-validate-x86_64-pc-windows-gnu.exe %{_datadir}/ignition/ignition-validate-x86_64-pc-windows-gnu.exe
%if 0%{?with_devel}
%files devel -f devel.file-list
%license LICENSE
%doc README.md code-of-conduct.md CONTRIBUTING.md
%dir %{gopath}/src/%{provider}.%{provider_tld}/%{project}
%endif
%if 0%{?with_unit_test} && 0%{?with_devel}
%files unit-test-devel -f unit-test-devel.file-list
%license LICENSE
%doc README.md code-of-conduct.md CONTRIBUTING.md
%endif
%changelog %changelog
* Wed May 26 2021 Jonathan Lebon <jonathan@jlebon.com> - 2.10.1-2
- Redo packaging using go2rpm
* Thu Apr 29 2021 Stephen Lowrie <slowrie@redhat.com> - 2.10.1-1 * Thu Apr 29 2021 Stephen Lowrie <slowrie@redhat.com> - 2.10.1-1
- New release - New release