mirror of
				https://github.com/k3s-io/kubernetes.git
				synced 2025-10-31 05:40:42 +00:00 
			
		
		
		
	add linux fastbuild option to ./build/release.sh
This commit is contained in:
		
							
								
								
									
										2
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Makefile
									
									
									
									
									
								
							| @@ -141,6 +141,6 @@ release: | |||||||
| # Example: | # Example: | ||||||
| #   make release-skip-tests | #   make release-skip-tests | ||||||
| release-skip-tests quick-release: | release-skip-tests quick-release: | ||||||
| 	KUBE_RELEASE_RUN_TESTS=n build/release.sh | 	KUBE_RELEASE_RUN_TESTS=n KUBE_FASTBUILD=true build/release.sh | ||||||
| .PHONY: release-skip-tests quick-release | .PHONY: release-skip-tests quick-release | ||||||
|  |  | ||||||
|   | |||||||
| @@ -580,6 +580,11 @@ function kube::build::run_build_command() { | |||||||
|     docker_run_opts+=(-e "KUBERNETES_CONTRIB=${KUBERNETES_CONTRIB}") |     docker_run_opts+=(-e "KUBERNETES_CONTRIB=${KUBERNETES_CONTRIB}") | ||||||
|   fi |   fi | ||||||
|  |  | ||||||
|  |   docker_run_opts+=( | ||||||
|  |     --env "KUBE_FASTBUILD=${KUBE_FASTBUILD:-false}" | ||||||
|  |     --env "KUBE_BUILDER_OS=${OSTYPE:-notdetected}" | ||||||
|  |   ) | ||||||
|  |  | ||||||
|   # If we have stdin we can run interactive.  This allows things like 'shell.sh' |   # If we have stdin we can run interactive.  This allows things like 'shell.sh' | ||||||
|   # to work.  However, if we run this way and don't have stdin, then it ends up |   # to work.  However, if we run this way and don't have stdin, then it ends up | ||||||
|   # running in a daemon-ish mode.  So if we don't have a stdin, we explicitly |   # running in a daemon-ish mode.  So if we don't have a stdin, we explicitly | ||||||
|   | |||||||
| @@ -47,11 +47,45 @@ kube::golang::server_targets() { | |||||||
| readonly KUBE_SERVER_TARGETS=($(kube::golang::server_targets)) | readonly KUBE_SERVER_TARGETS=($(kube::golang::server_targets)) | ||||||
| readonly KUBE_SERVER_BINARIES=("${KUBE_SERVER_TARGETS[@]##*/}") | readonly KUBE_SERVER_BINARIES=("${KUBE_SERVER_TARGETS[@]##*/}") | ||||||
|  |  | ||||||
| # The server platform we are building on. | if [[ "${KUBE_FASTBUILD:-}" == "true" ]]; then | ||||||
| readonly KUBE_SERVER_PLATFORMS=( |   readonly KUBE_SERVER_PLATFORMS=(linux/amd64) | ||||||
|   linux/amd64 |   readonly KUBE_TEST_PLATFORMS=(linux/amd64) | ||||||
|   linux/arm |   if [[ "${KUBE_BUILDER_OS:-}" == "darwin"* ]]; then | ||||||
| ) |     readonly KUBE_CLIENT_PLATFORMS=( | ||||||
|  |       darwin/amd64 | ||||||
|  |       linux/amd64 | ||||||
|  |     ) | ||||||
|  |   else | ||||||
|  |     readonly KUBE_CLIENT_PLATFORMS=(linux/amd64) | ||||||
|  |   fi | ||||||
|  | else | ||||||
|  |  | ||||||
|  |   # The server platform we are building on. | ||||||
|  |   readonly KUBE_SERVER_PLATFORMS=( | ||||||
|  |     linux/amd64 | ||||||
|  |     linux/arm | ||||||
|  |   ) | ||||||
|  |  | ||||||
|  |   # If we update this we should also update the set of golang compilers we build | ||||||
|  |   # in 'build/build-image/cross/Dockerfile'. However, it's only a bit faster since go 1.5, not mandatory | ||||||
|  |   readonly KUBE_CLIENT_PLATFORMS=( | ||||||
|  |     linux/amd64 | ||||||
|  |     linux/386 | ||||||
|  |     linux/arm | ||||||
|  |     darwin/amd64 | ||||||
|  |     darwin/386 | ||||||
|  |     windows/amd64 | ||||||
|  |     windows/386 | ||||||
|  |   ) | ||||||
|  |  | ||||||
|  |   # Which platforms we should compile test targets for. Not all client platforms need these tests | ||||||
|  |   readonly KUBE_TEST_PLATFORMS=( | ||||||
|  |     linux/amd64 | ||||||
|  |     darwin/amd64 | ||||||
|  |     windows/amd64 | ||||||
|  |     linux/arm | ||||||
|  |   ) | ||||||
|  | fi | ||||||
|  |  | ||||||
| # The set of client targets that we are building for all platforms | # The set of client targets that we are building for all platforms | ||||||
| readonly KUBE_CLIENT_TARGETS=( | readonly KUBE_CLIENT_TARGETS=( | ||||||
| @@ -60,18 +94,6 @@ readonly KUBE_CLIENT_TARGETS=( | |||||||
| readonly KUBE_CLIENT_BINARIES=("${KUBE_CLIENT_TARGETS[@]##*/}") | readonly KUBE_CLIENT_BINARIES=("${KUBE_CLIENT_TARGETS[@]##*/}") | ||||||
| readonly KUBE_CLIENT_BINARIES_WIN=("${KUBE_CLIENT_BINARIES[@]/%/.exe}") | readonly KUBE_CLIENT_BINARIES_WIN=("${KUBE_CLIENT_BINARIES[@]/%/.exe}") | ||||||
|  |  | ||||||
| # If we update this we should also update the set of golang compilers we build |  | ||||||
| # in 'build/build-image/cross/Dockerfile'. However, it's only a bit faster since go 1.5, not mandatory  |  | ||||||
| readonly KUBE_CLIENT_PLATFORMS=( |  | ||||||
|   linux/amd64 |  | ||||||
|   linux/386 |  | ||||||
|   linux/arm |  | ||||||
|   darwin/amd64 |  | ||||||
|   darwin/386 |  | ||||||
|   windows/amd64 |  | ||||||
|   windows/386 |  | ||||||
| ) |  | ||||||
|  |  | ||||||
| # The set of test targets that we are building for all platforms | # The set of test targets that we are building for all platforms | ||||||
| kube::golang::test_targets() { | kube::golang::test_targets() { | ||||||
|   local targets=( |   local targets=( | ||||||
| @@ -108,14 +130,6 @@ readonly KUBE_TEST_PORTABLE=( | |||||||
|   hack/lib |   hack/lib | ||||||
| ) | ) | ||||||
|  |  | ||||||
| # Which platforms we should compile test targets for. Not all client platforms need these tests |  | ||||||
| readonly KUBE_TEST_PLATFORMS=( |  | ||||||
|   linux/amd64 |  | ||||||
|   darwin/amd64 |  | ||||||
|   windows/amd64 |  | ||||||
|   linux/arm |  | ||||||
| ) |  | ||||||
|  |  | ||||||
| # Gigabytes desired for parallel platform builds. 11 is fairly | # Gigabytes desired for parallel platform builds. 11 is fairly | ||||||
| # arbitrary, but is a reasonable splitting point for 2015 | # arbitrary, but is a reasonable splitting point for 2015 | ||||||
| # laptops-versus-not. | # laptops-versus-not. | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user