mirror of
https://github.com/kubernetes-sigs/node-feature-discovery.git
synced 2025-03-16 21:38:23 +00:00
scripts: copy prow integration from master
Copy all test-infra scripts and cloudbuild.yaml from master.
Also cherry-pick the required poll-image Makefile target.
(copied from commit a08fb66fa7
)
This commit is contained in:
parent
d2bfee21cd
commit
6249bfc5cb
8 changed files with 93 additions and 0 deletions
12
Makefile
12
Makefile
|
@ -104,6 +104,18 @@ push:
|
||||||
$(IMAGE_PUSH_CMD) $(IMAGE_TAG)
|
$(IMAGE_PUSH_CMD) $(IMAGE_TAG)
|
||||||
for tag in $(IMAGE_EXTRA_TAGS); do $(IMAGE_PUSH_CMD) $$tag; done
|
for tag in $(IMAGE_EXTRA_TAGS); do $(IMAGE_PUSH_CMD) $$tag; done
|
||||||
|
|
||||||
|
poll-image:
|
||||||
|
set -e; \
|
||||||
|
image=$(IMAGE_REPO):$(IMAGE_TAG_NAME); \
|
||||||
|
base_url=`echo $(IMAGE_REPO) | sed -e s'!\([^/]*\)!\1/v2!'`; \
|
||||||
|
errors=`curl -fsS -X GET https://$$base_url/manifests/$(IMAGE_TAG_NAME)|jq .errors`; \
|
||||||
|
if [ "$$errors" = "null" ]; then \
|
||||||
|
echo Image $$image found; \
|
||||||
|
else \
|
||||||
|
echo Image $$image not found; \
|
||||||
|
exit 1; \
|
||||||
|
fi;
|
||||||
|
|
||||||
site-build:
|
site-build:
|
||||||
@mkdir -p docs/vendor/bundle
|
@mkdir -p docs/vendor/bundle
|
||||||
$(SITE_BUILD_CMD) sh -c "bundle install && jekyll build $(JEKYLL_OPTS)"
|
$(SITE_BUILD_CMD) sh -c "bundle install && jekyll build $(JEKYLL_OPTS)"
|
||||||
|
|
12
cloudbuild.yaml
Normal file
12
cloudbuild.yaml
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
steps:
|
||||||
|
- name: gcr.io/k8s-testimages/gcb-docker-gcloud:v20200824-5d057db
|
||||||
|
entrypoint: scripts/test-infra/push-image.sh
|
||||||
|
env:
|
||||||
|
- IMAGE_REGISTRY=gcr.io/$PROJECT_ID
|
||||||
|
- _GIT_TAG=$_GIT_TAG
|
||||||
|
- IMAGE_EXTRA_TAG_NAMES=$_PULL_BASE_REF
|
||||||
|
substitutions:
|
||||||
|
_GIT_TAG: '0.0.0'
|
||||||
|
_PULL_BASE_REF: 'master'
|
||||||
|
options:
|
||||||
|
substitution_option: ALLOW_LOOSE
|
11
scripts/test-infra/build-gh-pages.sh
Executable file
11
scripts/test-infra/build-gh-pages.sh
Executable file
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
# Pre-create output directory with all write access. The Jekyll docker image is
|
||||||
|
# stupid enough to do all sorts of uid/gid/chown magic making build fail for
|
||||||
|
# root user. In prow we run as root because of DIND.
|
||||||
|
_outdir="docs/_site"
|
||||||
|
mkdir -p "$_outdir"
|
||||||
|
chmod a+rwx "$_outdir"
|
||||||
|
|
||||||
|
# Build docs
|
||||||
|
make site-build
|
3
scripts/test-infra/build-image.sh
Executable file
3
scripts/test-infra/build-image.sh
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
make image
|
3
scripts/test-infra/build.sh
Executable file
3
scripts/test-infra/build.sh
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
make build
|
9
scripts/test-infra/push-image.sh
Executable file
9
scripts/test-infra/push-image.sh
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
# Override VERSION if _GIT_TAG is specified. Strip 10 first characters
|
||||||
|
# ('vYYYYMMDD-') from _GIT_TAG in order to get a reproducible version and
|
||||||
|
# container image tag
|
||||||
|
VERSION_OVERRIDE=${_GIT_TAG+VERSION=${_GIT_TAG:10}}
|
||||||
|
|
||||||
|
make image $VERSION_OVERRIDE
|
||||||
|
make push $VERSION_OVERRIDE
|
34
scripts/test-infra/test-e2e.sh
Executable file
34
scripts/test-infra/test-e2e.sh
Executable file
|
@ -0,0 +1,34 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
# Install deps
|
||||||
|
curl -o $HOME/bin/aws-iam-authenticator --create-dirs https://amazon-eks.s3-us-west-2.amazonaws.com/1.10.3/2018-07-26/bin/linux/amd64/aws-iam-authenticator
|
||||||
|
chmod a+x $HOME/bin/aws-iam-authenticator
|
||||||
|
export PATH=$PATH:$HOME/bin
|
||||||
|
|
||||||
|
|
||||||
|
# Configure environment
|
||||||
|
export KUBECONFIG=`pwd`/kubeconfig
|
||||||
|
export E2E_TEST_CONFIG=`pwd`/e2e-test-config
|
||||||
|
|
||||||
|
echo "$KUBECONFIG_DATA" > "$KUBECONFIG"
|
||||||
|
echo "$E2E_TEST_CONFIG_DATA" > "$E2E_TEST_CONFIG"
|
||||||
|
|
||||||
|
|
||||||
|
# Wait for the image to be built and published
|
||||||
|
i=1
|
||||||
|
while true; do
|
||||||
|
if make poll-image; then
|
||||||
|
break
|
||||||
|
elif [ $i -ge 10 ]; then
|
||||||
|
"ERROR: too many tries when polling for image"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
sleep 60
|
||||||
|
|
||||||
|
i=$(( $i + 1 ))
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
# Configure environment and run tests
|
||||||
|
make e2e-test
|
||||||
|
|
9
scripts/test-infra/verify.sh
Executable file
9
scripts/test-infra/verify.sh
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
# Install deps
|
||||||
|
curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s -- -b $(go env GOPATH)/bin v1.30.0
|
||||||
|
export PATH=$PATH:$(go env GOPATH)/bin
|
||||||
|
|
||||||
|
# Run verify steps
|
||||||
|
make gofmt-verify
|
||||||
|
make ci-lint
|
Loading…
Add table
Reference in a new issue