Skip to content

Commit

Permalink
e2e: Install ginkgo via Makefile
Browse files Browse the repository at this point in the history
Signed-off-by: Tobias Giese <[email protected]>
Co-authored-by: Andrea Panattoni <[email protected]>
  • Loading branch information
tobiasgiese and zeeke committed Jul 22, 2024
1 parent 00f8a61 commit 25585da
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 22 deletions.
17 changes: 11 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ MAIN_PKG=cmd/manager/main.go
export NAMESPACE?=openshift-sriov-network-operator
export WATCH_NAMESPACE?=openshift-sriov-network-operator
export HOME?=$(PWD)
export GOPATH?=$(shell go env GOPATH)
export GO111MODULE=on
PKGS=$(shell go list ./... | grep -v -E '/vendor/|/test|/examples')
TESTPKGS?=./...
Expand Down Expand Up @@ -162,6 +163,10 @@ GOMOCK = $(shell pwd)/bin/mockgen
gomock:
$(call go-install-tool,$(GOMOCK),github.com/golang/mock/[email protected])

GINKGO = $(BIN_DIR)/ginkgo
ginkgo:
$(call go-install-tool,$(GINKGO),github.com/onsi/ginkgo/v2/ginkgo)

# go-install-tool will 'go install' any package $2 and install it to $1.
define go-install-tool
@[ -f $(1) ] || { \
Expand Down Expand Up @@ -193,25 +198,25 @@ deploy-setup-k8s: export OPERATOR_EXEC=kubectl
deploy-setup-k8s: export CLUSTER_TYPE=kubernetes
deploy-setup-k8s: deploy-setup

test-e2e-conformance:
test-e2e-conformance: ginkgo
SUITE=./test/conformance ./hack/run-e2e-conformance.sh

test-e2e-conformance-virtual-k8s-cluster-ci:
test-e2e-conformance-virtual-k8s-cluster-ci: ginkgo
./hack/run-e2e-conformance-virtual-cluster.sh

test-e2e-conformance-virtual-k8s-cluster:
test-e2e-conformance-virtual-k8s-cluster: ginkgo
SKIP_DELETE=TRUE ./hack/run-e2e-conformance-virtual-cluster.sh

test-e2e-conformance-virtual-ocp-cluster-ci:
test-e2e-conformance-virtual-ocp-cluster-ci: ginkgo
./hack/run-e2e-conformance-virtual-ocp.sh

test-e2e-conformance-virtual-ocp-cluster:
test-e2e-conformance-virtual-ocp-cluster: ginkgo
SKIP_DELETE=TRUE ./hack/run-e2e-conformance-virtual-ocp.sh

redeploy-operator-virtual-cluster:
./hack/virtual-cluster-redeploy.sh

test-e2e-validation-only:
test-e2e-validation-only: ginkgo
SUITE=./test/validation ./hack/run-e2e-conformance.sh

test-e2e: generate manifests skopeo envtest
Expand Down
21 changes: 5 additions & 16 deletions hack/run-e2e-conformance.sh
Original file line number Diff line number Diff line change
@@ -1,21 +1,10 @@
#!/bin/bash
set -x
which ginkgo
if [ $? -ne 0 ]; then
# we are moving to a temp folder as in go.mod we have a dependency that is not
# resolved if we are not using google's GOPROXY. That is not the case when building as
# we are using vendored dependencies
GINKGO_TMP_DIR=$(mktemp -d)
cd $GINKGO_TMP_DIR
go mod init tmp
go install -mod=readonly github.com/onsi/ginkgo/v2/[email protected]
rm -rf $GINKGO_TMP_DIR
echo "Downloading ginkgo tool"
cd -
fi

GOPATH="${GOPATH:-~/go}"
here="$(dirname "$(readlink --canonicalize "${BASH_SOURCE[0]}")")"
root="$(readlink --canonicalize "$here/..")"

GOPATH="${GOPATH:-$HOME/go}"
JUNIT_OUTPUT="${JUNIT_OUTPUT:-/tmp/artifacts}"
export PATH=$PATH:$GOPATH/bin

ginkgo -output-dir=$JUNIT_OUTPUT --junit-report "unit_report.xml" -v "$SUITE" -- -report=$JUNIT_OUTPUT
${root}/bin/ginkgo -output-dir=$JUNIT_OUTPUT --junit-report "unit_report.xml" -v "$SUITE" -- -report=$JUNIT_OUTPUT

0 comments on commit 25585da

Please sign in to comment.