https://bugzilla.redhat.com/show_bug.cgi?id=1945771 Robert-André Mauchin 🐧 <zebob.m@xxxxxxxxx> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |zebob.m@xxxxxxxxx --- Comment #1 from Robert-André Mauchin 🐧 <zebob.m@xxxxxxxxx> --- - License seems to be ASL 2.0 https://github.com/osbuild/weldr-client/blob/master/LICENSE - git-core is generally sufficient: BuildRequires: git-core - I don't see how the build can work on EPEL7 or 8 - gobuildflags and gometa are not available on EPEL - %if 0%{?fedora} BuildRequires: golang(github.com/BurntSushi/toml) BuildRequires: golang(github.com/spf13/cobra) %endif How do you get these deps on EPEL? Build fails because no deps are found: + make 'GOBUILDFLAGS=%{gobuildflags}' build fatal: not a git repository (or any of the parent directories): .git fatal: not a git repository (or any of the parent directories): .git go build -ldflags="-X github.com/osbuild/weldr-client/cmd/composer-cli/root.Version=35.0" %{gobuildflags} ./cmd/composer-cli go: inconsistent vendoring in /builddir/build/BUILD/weldr-client-35.0/_build/src/github.com/osbuild/weldr-client: github.com/BurntSushi/toml@v0.3.1: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt github.com/niemeyer/pretty@v0.0.0-20200227124842-a10e7caefd8e: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt github.com/spf13/cobra@v1.0.0: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt github.com/stretchr/testify@v1.5.1: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt gopkg.in/check.v1@v1.0.0-20200227125254-8fa46927fb4f: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt gopkg.in/yaml.v2@v2.3.0: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt run 'go mod vendor' to sync, or use -mod=mod or -mod=readonly to ignore the vendor directory make: *** [Makefile:14: composer-cli] Error 1 - You've added the asc but haven't verified it https://docs.fedoraproject.org/en-US/packaging-guidelines/#_verifying_signatures Here is the SPEC I suggest you: # Generated by go2rpm 1.3 # Pass --with tests to rpmbuild to build composer-cli-tests %bcond_with tests %if 0%{?rhel} %bcond_without vendor %ifnarch ppc64 %global gobuildflags -buildmode pie -compiler gc -tags=\\\"rpm_crashtraceback ${BUILDTAGS:-}\\\" -ldflags \\\"${LDFLAGS:-}%{?currentgoldflags} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n') -extldflags '%__global_ldflags %{?__golang_extldflags}' -compressdwarf=false\\\" -a -v -x %else %global gobuildflags -compiler gc -tags=\\\"rpm_crashtraceback ${BUILDTAGS:-}\\\" -ldflags \\\"${LDFLAGS:-}%{?currentgoldflags} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n') -extldflags '%__global_ldflags %{?__golang_extldflags}' -compressdwarf=false\\\" -a -v -x %endif %endif %define setgoconfig() %{expand: # On Fedora, turn off go modules and set the path to the one into which # the golang-* packages install source code. %if %{without vendor} export GOPATH="%{gobuilddir}:${GOPATH:+${GOPATH}:}%{?gopath}" export GO111MODULE=off %else export GO111MODULE=on export GOFLAGS=-mod=vendor %endif export LDFLAGS="-X github.com/osbuild/weldr-client/cmd/composer-cli/root.Version=%{version} " export GOBUILDFLAGS="%{gobuildflags}" } # https://github.com/osbuild/weldr-client %global goipath github.com/osbuild/weldr-client Version: 35.0 %if %{without vendor} %gometa %endif %global common_description %{expand: Command line utility to control osbuild-composer.} Name: weldr-client Release: 1%{?dist} Summary: Command line utility to control osbuild-composer # Upstream license specification: Apache-2.0 License: ASL 2.0 URL: https://github.com/osbuild/weldr-client Source0: https://github.com/osbuild/weldr-client/releases/download/v%{version}/%{name}-%{version}.tar.gz Source1: https://github.com/osbuild/weldr-client/releases/download/v%{version}/%{name}-%{version}.tar.gz.asc Source2: https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB4C6B451E4FA8B4232CA191E117E8C168EFE3A7F#/bcl-gpg.key # git clone https://github.com/osbuild/weldr-client # cd weldr-client # git checkout v%%{version} # go mod vendor # tar czvf vendor-%%{version}.tar.gz vendor/ Source10: vendor-%{version}.tar.gz Obsoletes: composer-cli < 34.0 Provides: composer-cli = %{version}-%{release} %if %{without vendor} BuildRequires: golang(github.com/BurntSushi/toml) BuildRequires: golang(github.com/spf13/cobra) BuildRequires: golang(github.com/spf13/cobra/doc) %if %{with tests} # Tests BuildRequires: golang(github.com/stretchr/testify/assert) BuildRequires: golang(github.com/stretchr/testify/require) %endif %else BuildRequires: %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang} %endif BuildRequires: git-core BuildRequires: make BuildRequires: gnupg2 %description %{common_description} %prep %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' %if %{without vendor} %goprep %else %forgeautosetup -p1 %setup -q -T -D -a 10 -n %{name}-%{version} %endif # Makefile modification # 1. We pass tags already through BUILDTAGS in gobuildflags # 2. We export LDFLAGS in the SPEC so it is used in gobuildflags # 3. -v is already present in gobuildflags sed -i "s|go test -c -tags=integration|go test -c |; \ s|\${BUILDFLAGS}||; \ s|-v -covermode=atomic |-covermode=atomic |;" \ Makefile %build %setgoconfig %make_build # TODO # make man %if %{with tests} || 0%{?rhel} # Build test binaries with `go test -c`, so that they can take advantage of # golang's testing package. The golang rpm macros don't support building them # directly. Thus, do it manually, taking care to also include a build id. export BUILDTAGS=integration %make_build integration %endif %install %make_install %if %{with tests} || 0%{?rhel} make DESTDIR=%{buildroot} install-tests %endif %if %{with tests} %check %setgoconfig make test %endif %files %license LICENSE %doc examples HACKING.md README.md %{_bindir}/composer-cli %dir %{_sysconfdir}/bash_completion.d %{_sysconfdir}/bash_completion.d/composer-cli %{_mandir}/man1/composer-cli* %if %{with tests} || 0%{?rhel} %package tests Summary: Integration tests for composer-cli %description tests Integration tests to be run on a pristine-dedicated system to test the composer-cli package. %files tests %license LICENSE %{_libexecdir}/tests/composer-cli/ %endif %changelog * Thu Apr 01 2021 Brian C. Lane <bcl@xxxxxxxxxx> - 35.0-1 - spec: Update Source urls with new project location (bcl) - Makefile: Start with version 35.0 (bcl) - Makefile: Move test binary to an install-tests target (bcl) - Makefile: Drop -race from test target, conflicts with -pie in Fedora build (bcl) - Move the project to github.com/osbuild/weldr-client/ (bcl) - README: Add documentation and examples (bcl) - composer-cli: Update the json output with more details (bcl) - composer-cli: Add sources commands and tests (bcl) - weldr: Add sources functions and tests (bcl) - composer-cli: Add modules info command and test (bcl) - weldr: Add ModulesInfo function and tests (bcl) - composer-cli: Add projects info command and tests (bcl) - weldr: Add ProjectsInfo function and tests (bcl) - composer-cli: Add projects list command (bcl) - weldr: Add ListProjects function (bcl) - composer-cli: Add helper function to word-wrap output (bcl) - composer-cli: Add support for modules list command (bcl) - weldr: Add ListModules function and tests (bcl) - actions: Install golangci-lint (bcl) - actions: Move to go 1.14 (bcl) - weldr: Remove unused code from GetComposeTypes (bcl) - Makefile: Add golangci-lint to make check, and coverage to make test (bcl) - composer-cli: Add compose info output (bcl) - weldr: Add ComposeInfo function and tests (bcl) - weldr: Add Compose Info structs to apischema (bcl) - composer-cli: Add compose image command and tests (bcl) - weldr: Add ComposeImage function and tests (bcl) - composer-cli: Add compose results command and test (bcl) - weldr: Add ComposeResults function and tests (bcl) - maint: Update go.mod with 'go mod tidy' and set version to 1.14 (bcl) - composer-cli: Add compose metadata command and test (bcl) - weldr: Add ComposeMetadata function and tests (bcl) - weldr: Use http for ostree url tests (bcl) - composer-cli: Add compose logs command to download log tarfile (bcl) - weldr: Add MoveFile function (bcl) - weldr: Use GetContentFilename in ComposeLogs (bcl) - weldr: Add GetContentFilename helper function and tests (bcl) - weldr: Add ComposeLogs function and testing (bcl) - weldr: Add GetFile and tests (bcl) - composer-cli: Add compose log command (bcl) - weldr: Add support for retrieving running compose's log (bcl) - composer-cli: Fix compose list handling of multiple filters (bcl) - weldr: Add test for IsStringInSlice (bcl) - weldr: Make IsStringInSlice public (bcl) - weldr: Some errors use http.StatusInternalServerError(500) (bcl) - composer-cli: Add compose start-ostree command (bcl) - composer-cli: Add upload support to compose start (bcl) - weldr: Add upload functions to ComposeStart (bcl) - weldr: Add functions to start ostree composes (bcl) - Fix running composer-cli with no arguments (bcl) - Add manpages to the rpm (bcl) - Add composer-cli bash completion support (bcl) - Makefile: Adding release, srpm, and rpm creation support (bcl) - Set repo to github.com/weldr/weldr-client (bcl) - tests: Remove localtime from compose status test (bcl) - blueprints: Add json output to freeze, show, and changes (bcl) - compose: Clean up error handling (bcl) - blueprints: Add blueprints undo command and tests (bcl) - blueprints: Add blueprints tag command and tests (bcl) - blueprints: Add test for blueprints workspace command (bcl) - blueprints: Clean up error handling (bcl) - blueprints: Add test for blueprints show (bcl) - blueprints: Add test for blueprints save (bcl) - blueprints: Add test for blueprints push (bcl) - weldr: Add tests for Frozen TOML and JSON functions (bcl) - Cleanup some make check complaints (bcl) - blueprints: Add depsolve command and test (bcl) - weldr: Add DepsolveBlueprints function and test (bcl) - blueprints: Add tests for blueprints delete command (bcl) - blueprints: Add test for changes command (bcl) - Add HACKING.md document for developers (bcl) - weldr: Convert compose tests to integration tests (bcl) - weldr: Catch HTTP Status 500 and decode an APIError response (bcl) - weldr: Use integration tests for status test (bcl) - weldr: Use GetJSONAllFnTotal for changes and add cmdline use of it (bcl) - weldr: Add new GetJSONAllFnTotal function (bcl) - blueprints: Convert blueprint tests to integration tests (bcl) - weldr: Add GetBlueprintsChanges function (bcl) - composer-cli: Print uuid when compose started (bcl) - weldr: Add json output to DELETE requests (bcl) - composer-cli: Add cancel command and tests (bcl) - weldr: Add CancelCompose and tests (bcl) - composer-cli: Add compose status command and test (bcl) - weldr: Add function to sort ComposeStatusV0 structs (bcl) - Cleanup lint warnings for weldr/ (bcl) - Cleanup lint warnings for root.go (bcl) - check: Exit with a 1 if golint finds problems (bcl) - Setup github actions for make check and make test (bcl) - composer-cli: Add compose delete command and tests (bcl) - weldr: Add DeleteComposes function and tests (bcl) - composer-cli: Add compose start command and tests (bcl) - weldr: Add StartCompose function and tests (bcl) - composer-cli: Add compose types command and test (bcl) - weldr: Add GetComposeTypes function and test (bcl) - composer-cli: Sort the output of blueprints list (bcl) - composer-cli: Add compose list command (bcl) - weldr: Add ListComposes function and test (bcl) - Add a .gitignore file (bcl) - Add Apache 2.0 License file (bcl) - Add blueprints subcommands (bcl) - Add status show command and test (bcl) - composer-cli: Add the core command processing code (bcl) - weldr: Add blueprint functions (bcl) - weldr: Add server status function (bcl) - weldr: Add API schema for error responses, status, and blueprint lists (bcl) -- You are receiving this mail because: You are on the CC list for the bug. You are always notified about changes to this product and component _______________________________________________ package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/package-review@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure