#!/bin/bash # Copyright 2014 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. # Build a Kubernetes release. This will build the binaries, create the Docker # images and other build artifacts. # # For pushing these artifacts publicly to Google Cloud Storage or to a registry # please refer to the kubernetes/release repo at # https://github.com/kubernetes/release. set -o errexit set -o nounset set -o pipefail global KUBE_ROOT := "$[dirname $(BASH_SOURCE)]/.." source "$(KUBE_ROOT)/build/common.sh" source "$(KUBE_ROOT)/build/lib/release.sh" global KUBE_RELEASE_RUN_TESTS := $(KUBE_RELEASE_RUN_TESTS-y) kube::build::verify_prereqs kube::build::build_image kube::build::run_build_command make cross if [[ $KUBE_RELEASE_RUN_TESTS =~ ^[yY]$ ]] { kube::build::run_build_command make test kube::build::run_build_command make test-integration } kube::build::copy_output kube::release::package_tarballs (CommandList children: [ (C {(set)} {(-o)} {(errexit)}) (C {(set)} {(-o)} {(nounset)}) (C {(set)} {(-o)} {(pipefail)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:KUBE_ROOT) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(dirname)} {(DQ (${ VSub_Name BASH_SOURCE))})] ) left_token: spids: [83 91] ) (/..) } spids: [82] ) ] spids: [82] ) (C {(source)} {(DQ (${ VSub_Name KUBE_ROOT) (/build/common.sh))}) (C {(source)} {(DQ (${ VSub_Name KUBE_ROOT) (/build/lib/release.sh))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:KUBE_RELEASE_RUN_TESTS) op: Equal rhs: { (BracedVarSub token: suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(y)}) spids: [114 118] ) } spids: [113] ) ] spids: [113] ) (C {(kube) (Lit_Other ":") (Lit_Other ":") (build) (Lit_Other ":") (Lit_Other ":") (verify_prereqs)} ) (C {(kube) (Lit_Other ":") (Lit_Other ":") (build) (Lit_Other ":") (Lit_Other ":") (build_image)}) (C {(kube) (Lit_Other ":") (Lit_Other ":") (build) (Lit_Other ":") (Lit_Other ":") (run_build_command)} {(make)} {(cross)} ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_EqualTilde left: {($ VSub_Name "$KUBE_RELEASE_RUN_TESTS")} right: {(Lit_Other "^") (Lit_Other "[") (yY) (Lit_Other "]") (Lit_Other "$")} ) ) terminator: ) ] action: [ (C {(kube) (Lit_Other ":") (Lit_Other ":") (build) (Lit_Other ":") (Lit_Other ":") (run_build_command) } {(make)} {(test)} ) (C {(kube) (Lit_Other ":") (Lit_Other ":") (build) (Lit_Other ":") (Lit_Other ":") (run_build_command) } {(make)} {(test-integration)} ) ] spids: [-1 167] ) ] spids: [-1 195] ) (C {(kube) (Lit_Other ":") (Lit_Other ":") (build) (Lit_Other ":") (Lit_Other ":") (copy_output)}) (C {(kube) (Lit_Other ":") (Lit_Other ":") (release) (Lit_Other ":") (Lit_Other ":") (package_tarballs) } ) ] )