%global _hardened_build 1 %define _user cicd %define _group cicd %define _varlib /var/lib/cds/ %define _logdir /var/log/cds/ Name: cds Version: 0.49.0 Release: 1%{?dist} Summary: Pipeline Group: System/Pipeline License: GPLv2 URL: https://github.com/ovh/cds BuildRequires: git BuildRequires: golang BuildRequires: npm #Requires: %description %package engine Summary: Engine %description engine %package worker Summary: Worker %description worker %package cli Summary: CLI %description cli %prep %setup -q -T -c %{name}-%{version} export GOPATH=`pwd` mkdir -p src/github.com/ovh/ cd src/github.com/ovh/ git clone https://github.com/ovh/cds/ %build export GOPATH=`pwd` export GEN_PATH="$GOPATH/src/github.com/ovh/cds/docs/content/docs/components" export DATE=$(date "+%m/%d/%y-%H:%M:%S") %ifarch x86_64 export ARCH=amd64 %else export ARCH=%{_arch} %endif cd src/github.com/ovh/cds/ pushd cli/cdsctl go build -gcflags=all="-N -l" -ldflags "-X github.com/ovh/cds/sdk.VERSION=%{version} -X github.com/ovh/cds/sdk.GOOS=linux -X github.com/ovh/cds/sdk.GOARCH=$ARCH -X github.com/ovh/cds/sdk.GITHASH=%{version} -X github.com/ovh/cds/sdk.BUILDTIME=$DATE -X github.com/ovh/cds/sdk.BINARY=cdscli -extldflags -s -w -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n')" -o dist/cdscli . popd pushd engine ### need to figure out words and wildcard ### export DBMIGRATE=$(words $(wildcard sql/*.sql)) ### github.com/ovh/cds/sdk.DBMIGRATE=$DBMIGRATE go build -ldflags "-X github.com/ovh/cds/sdk.VERSION=%{version} -X github.com/ovh/cds/sdk.GOOS=linux -X github.com/ovh/cds/sdk.GOARCH=$ARCH -X github.com/ovh/cds/sdk.GITHASH=%{version} -X github.com/ovh/cds/sdk.BUILDTIME=$DATE -X github.com/ovh/cds/sdk.BINARY=cds-engine -extldflags -s -w -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n')" -o dist/cds-engine . popd pushd engine/worker go build -ldflags "-X github.com/ovh/cds/sdk.VERSION=%{version} -X github.com/ovh/cds/sdk.GOOS=linux -X github.com/ovh/cds/sdk.GOARCH=$ARCH -X github.com/ovh/cds/sdk.GITHASH=%{version} -X github.com/ovh/cds/sdk.BUILDTIME=$DATE -X github.com/ovh/cds/sdk.BINARY=cds-worker -extldflags -s -w -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n')" -o dist/cds-worker . popd pushd tools/os-ansible-inventory go build -ldflags "-X github.com/ovh/cds/sdk.VERSION=%{version} -X github.com/ovh/cds/sdk.GOOS=linux -X github.com/ovh/cds/sdk.GOARCH=$ARCH -X github.com/ovh/cds/sdk.GITHASH=%{version} -X github.com/ovh/cds/sdk.BUILDTIME=$DATE -X github.com/ovh/cds/sdk.BINARY=os-ansible-inventory -extldflags -s -w -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n')" -o dist/os-ansible-inventory . popd pushd ui rm -rf package-lock.json sed '/sentry/d' -i package.json sed 's|"build:analyse": "webpack-bundle-analyzer dist/stats.json",|"build:analyse": "webpack-bundle-analyzer dist/stats.json"|' -i package.json npm install npm install ng NODE_OPTIONS="--max-old-space-size=8192" node_modules/@angular/cli/bin/ng build --prod popd %install mkdir -p %{buildroot}%{_bindir} cp src/github.com/ovh/cds/cli/cdsctl/dist/cdscli %{buildroot}%{_bindir} cp src/github.com/ovh/cds/engine/worker/dist/cds-worker %{buildroot}%{_bindir} mkdir -p %{buildroot}%{_varlib} cp src/github.com/ovh/cds/engine/dist/cds-engine %{buildroot}%{_varlib} cp src/github.com/ovh/cds/tools/os-ansible-inventory/dist/os-ansible-inventory %{buildroot}%{_varlib} cp -rv src/github.com/ovh/cds/ui/dist/ %{buildroot}%{_varlib}/ui/ %files %files engine %{_varlib}/cds-engine %{_varlib}/os-ansible-inventory %{_varlib}/ui/ %files worker %{_bindir}/cds-worker %files cli %{_bindir}/cdscli %changelog