mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-06-12 01:14:22 +00:00
Add script to run cloud build 'locally'.
This commit is contained in:
committed by
Jeffrey Regan
parent
e2a660c787
commit
bb9b3163ee
@@ -1,23 +1,8 @@
|
|||||||
# Copyright 2018 The Kubernetes Authors.
|
|
||||||
#
|
|
||||||
# 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.
|
|
||||||
|
|
||||||
# TODO(droot): add instructions for running in production.
|
|
||||||
steps:
|
steps:
|
||||||
- name: "gcr.io/cloud-builders/git"
|
- name: "gcr.io/cloud-builders/git"
|
||||||
args: [fetch, --tags, --depth=100]
|
args: [fetch, --tags, --depth=100]
|
||||||
- name: "gcr.io/kustomize-199618/golang_with_goreleaser:1.10-stretch"
|
- name: "gcr.io/kustomize-199618/golang_with_goreleaser:1.10-stretch"
|
||||||
args: ["bash", "build/build.sh"]
|
args: ["bash", "build/cloudbuild.sh"]
|
||||||
secretEnv: ['GITHUB_TOKEN']
|
secretEnv: ['GITHUB_TOKEN']
|
||||||
secrets:
|
secrets:
|
||||||
- kmsKeyName: projects/kustomize-199618/locations/global/keyRings/github-tokens/cryptoKeys/gh-release-token
|
- kmsKeyName: projects/kustomize-199618/locations/global/keyRings/github-tokens/cryptoKeys/gh-release-token
|
||||||
|
|||||||
@@ -1,30 +0,0 @@
|
|||||||
# Copyright 2018 The Kubernetes Authors.
|
|
||||||
#
|
|
||||||
# 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.
|
|
||||||
|
|
||||||
# Instructions to run locally:
|
|
||||||
# Download google container builder: https://github.com/kubernetes-sigs/container-builder-local
|
|
||||||
# Set you GOOS and GOARCH vars to match your system
|
|
||||||
# Set OUTPUT to the location to write the directory containing the tar.gz
|
|
||||||
# $ container-builder-local --config=build/cloudbuild_local.yaml --dryrun=false \
|
|
||||||
# --substitutions=_GOOS=$GOOS,_GOARCH=$GOARCH --write-workspace=$OUTPUT .
|
|
||||||
# Release tar will be in $OUTPUT
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: "gcr.io/kustomize-199618/golang_with_goreleaser:1.10-stretch"
|
|
||||||
args: ["bash", "build/build.sh", "--snapshot"]
|
|
||||||
secretEnv: ['GITHUB_TOKEN']
|
|
||||||
secrets:
|
|
||||||
- kmsKeyName: projects/kustomize-199618/locations/global/keyRings/github-tokens/cryptoKeys/gh-release-token
|
|
||||||
secretEnv:
|
|
||||||
GITHUB_TOKEN: CiQAyrREbPgXJOeT7M3t+WlxkhXwlMPudixBeiyWTjmLOMLqdK4SUQA0W+xUmDJKAhyfHCcwqSEzUn9OwKC7XAYcmwe0CCKTCbPbDgmioDK24q3LVapndXNvnnHvCjhOJNEr1o+P1DCF+LlzYV2YL8lP09rrKrslPg==
|
|
||||||
67
build/localbuild.sh
Executable file
67
build/localbuild.sh
Executable file
@@ -0,0 +1,67 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Usage
|
||||||
|
#
|
||||||
|
# ./build/localbuild.sh
|
||||||
|
#
|
||||||
|
# The script attempts to use cloudbuild configuration
|
||||||
|
# to create a release "locally".
|
||||||
|
#
|
||||||
|
# At the time of writing,
|
||||||
|
#
|
||||||
|
# https://pantheon.corp.google.com/cloud-build/triggers?project=kustomize-199618
|
||||||
|
#
|
||||||
|
# has a trigger such that whenever a git tag is
|
||||||
|
# applied to the kustomize repo, the cloud builder
|
||||||
|
# reads the repository-relative file
|
||||||
|
#
|
||||||
|
# build/cloudbuild.yaml
|
||||||
|
#
|
||||||
|
# Inside this yaml file is a reference to the script
|
||||||
|
#
|
||||||
|
# build/cloudbuild.sh
|
||||||
|
#
|
||||||
|
# The script you are reading now does something
|
||||||
|
# analogous via docker tricks.
|
||||||
|
|
||||||
|
set -e
|
||||||
|
# set -x
|
||||||
|
|
||||||
|
if [ -z ${GOPATH+x} ]; then
|
||||||
|
echo GOPATH is unset; cannot proceed.
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
WORK=$(mktemp -d)
|
||||||
|
|
||||||
|
pushd $GOPATH/src/sigs.k8s.io/kustomize
|
||||||
|
pwd
|
||||||
|
|
||||||
|
echo "Building in $WORK"
|
||||||
|
|
||||||
|
cat <<EOF >/tmp/localbuild.yaml
|
||||||
|
steps:
|
||||||
|
- name: "gcr.io/kustomize-199618/golang_with_goreleaser:1.10-stretch"
|
||||||
|
args: ["bash", "build/cloudbuild.sh", "--snapshot"]
|
||||||
|
secretEnv: ['GITHUB_TOKEN']
|
||||||
|
secrets:
|
||||||
|
- kmsKeyName: projects/kustomize-199618/locations/global/keyRings/github-tokens/cryptoKeys/gh-release-token
|
||||||
|
secretEnv:
|
||||||
|
GITHUB_TOKEN: CiQAyrREbPgXJOeT7M3t+WlxkhXwlMPudixBeiyWTjmLOMLqdK4SUQA0W+xUmDJKAhyfHCcwqSEzUn9OwKC7XAYcmwe0CCKTCbPbDgmioDK24q3LVapndXNvnnHvCjhOJNEr1o+P1DCF+LlzYV2YL8lP09rrKrslPg==
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# --substitutions=_GOOS=linux,_GOARCH=amd64
|
||||||
|
|
||||||
|
config=build/cloudbuild.yaml
|
||||||
|
config=/tmp/localbuild.yaml
|
||||||
|
|
||||||
|
# See https://cloud.google.com/cloud-build/docs/build-debug-locally
|
||||||
|
cloud-build-local \
|
||||||
|
--config=$config \
|
||||||
|
--dryrun=false \
|
||||||
|
--write-workspace=$WORK \
|
||||||
|
.
|
||||||
|
|
||||||
|
tree $WORK
|
||||||
|
|
||||||
|
popd
|
||||||
Reference in New Issue
Block a user