From cdc8c60c529874ed5ab4903b1c0eb4f5f0f6edb3 Mon Sep 17 00:00:00 2001 From: Sam Stoelinga Date: Fri, 6 Mar 2020 17:21:43 -0800 Subject: [PATCH] Move testing scripts to scripts directory Since we recently started adding more scripts it makes sense to move to a separate directory. This aligns with a common practice across golang projects: https://github.com/golang-standards/project-layout --- Makefile | 14 +++---- integration-test.sh | 41 +------------------ scripts/integration-test.sh | 40 ++++++++++++++++++ .../misc-integration-test.sh | 2 +- test.sh => scripts/test.sh | 0 travis-setup.sh => scripts/travis-setup.sh | 0 6 files changed, 49 insertions(+), 48 deletions(-) mode change 100755 => 120000 integration-test.sh create mode 100755 scripts/integration-test.sh rename misc-integration-test.sh => scripts/misc-integration-test.sh (93%) rename test.sh => scripts/test.sh (100%) rename travis-setup.sh => scripts/travis-setup.sh (100%) diff --git a/Makefile b/Makefile index 7d94dee5c..2eebc829d 100644 --- a/Makefile +++ b/Makefile @@ -55,28 +55,28 @@ out/warmer: $(GO_FILES) .PHONY: travis-setup travis-setup: - @ ./travis-setup.sh + @ ./scripts/travis-setup.sh .PHONY: test test: out/executor - @ ./test.sh + @ ./scripts/test.sh .PHONY: integration-test integration-test: - @ ./integration-test.sh + @ ./scripts/integration-test.sh .PHONY: integration-test-run integration-test-run: - @ ./integration-test.sh -run "TestRun" + @ ./scripts/integration-test.sh -run "TestRun" .PHONY: integration-test-layers integration-test-layers: - @ ./integration-test.sh -run "TestLayers" + @ ./scripts/integration-test.sh -run "TestLayers" .PHONY: integration-test-misc integration-test-misc: - $(eval RUN_ARG=$(shell ./misc-integration-test.sh)) - @ ./integration-test.sh -run "$(RUN_ARG)" + $(eval RUN_ARG=$(shell ./scripts/misc-integration-test.sh)) + @ ./scripts/integration-test.sh -run "$(RUN_ARG)" .PHONY: images images: diff --git a/integration-test.sh b/integration-test.sh deleted file mode 100755 index 3af24c922..000000000 --- a/integration-test.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash -# Copyright 2018 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -set -ex - -GCS_BUCKET="${GCS_BUCKET:-gs://kaniko-test-bucket}" -IMAGE_REPO="${IMAGE_REPO:-gcr.io/kaniko-test}" - -docker version - -# Sets up a kokoro (Google internal integration testing tool) environment -if [ -f "$KOKORO_GFILE_DIR"/common.sh ]; then - echo "Installing dependencies..." - source "$KOKORO_GFILE_DIR/common.sh" - mkdir -p /usr/local/go/src/github.com/GoogleContainerTools/ - cp -r github/kaniko /usr/local/go/src/github.com/GoogleContainerTools/ - pushd /usr/local/go/src/github.com/GoogleContainerTools/kaniko - echo "Installing container-diff..." - mv $KOKORO_GFILE_DIR/container-diff-linux-amd64 $KOKORO_GFILE_DIR/container-diff - chmod +x $KOKORO_GFILE_DIR/container-diff - export PATH=$PATH:$KOKORO_GFILE_DIR - cp $KOKORO_ROOT/src/keystore/72508_gcr_application_creds $HOME/.config/gcloud/application_default_credentials.json -fi - -echo "Running integration tests..." -make out/executor -make out/warmer -go test ./integration/... -v --bucket "${GCS_BUCKET}" --repo "${IMAGE_REPO}" --timeout 50m "$@" diff --git a/integration-test.sh b/integration-test.sh new file mode 120000 index 000000000..8a77788df --- /dev/null +++ b/integration-test.sh @@ -0,0 +1 @@ +scripts/integration-test.sh \ No newline at end of file diff --git a/scripts/integration-test.sh b/scripts/integration-test.sh new file mode 100755 index 000000000..3af24c922 --- /dev/null +++ b/scripts/integration-test.sh @@ -0,0 +1,40 @@ +#!/bin/bash +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -ex + +GCS_BUCKET="${GCS_BUCKET:-gs://kaniko-test-bucket}" +IMAGE_REPO="${IMAGE_REPO:-gcr.io/kaniko-test}" + +docker version + +# Sets up a kokoro (Google internal integration testing tool) environment +if [ -f "$KOKORO_GFILE_DIR"/common.sh ]; then + echo "Installing dependencies..." + source "$KOKORO_GFILE_DIR/common.sh" + mkdir -p /usr/local/go/src/github.com/GoogleContainerTools/ + cp -r github/kaniko /usr/local/go/src/github.com/GoogleContainerTools/ + pushd /usr/local/go/src/github.com/GoogleContainerTools/kaniko + echo "Installing container-diff..." + mv $KOKORO_GFILE_DIR/container-diff-linux-amd64 $KOKORO_GFILE_DIR/container-diff + chmod +x $KOKORO_GFILE_DIR/container-diff + export PATH=$PATH:$KOKORO_GFILE_DIR + cp $KOKORO_ROOT/src/keystore/72508_gcr_application_creds $HOME/.config/gcloud/application_default_credentials.json +fi + +echo "Running integration tests..." +make out/executor +make out/warmer +go test ./integration/... -v --bucket "${GCS_BUCKET}" --repo "${IMAGE_REPO}" --timeout 50m "$@" diff --git a/misc-integration-test.sh b/scripts/misc-integration-test.sh similarity index 93% rename from misc-integration-test.sh rename to scripts/misc-integration-test.sh index c227fcb14..e02c700c0 100755 --- a/misc-integration-test.sh +++ b/scripts/misc-integration-test.sh @@ -17,7 +17,7 @@ # TestRun and TestLayers set -e -TESTS=$(./integration-test.sh -list=Test -mod=vendor) +TESTS=$(./scripts/integration-test.sh -list=Test -mod=vendor) TESTS=$(echo $TESTS | tr ' ' '\n' | grep 'Test'| grep -v 'TestRun' | grep -v 'TestLayers') diff --git a/test.sh b/scripts/test.sh similarity index 100% rename from test.sh rename to scripts/test.sh diff --git a/travis-setup.sh b/scripts/travis-setup.sh similarity index 100% rename from travis-setup.sh rename to scripts/travis-setup.sh