Production-Grade Container Scheduling and Management
Go to file
Ryan Hitchman dd40e612dd Add test/typecheck, a fast typecheck for all build platforms.
Most of the time spent compiling is spent optimizing and linking
binary code. Most errors occur at the syntax or semantic (type) layers.
Go's compiler is importable as a normal package, so we can do fast
syntax and type checking for the 10 platforms we build on.

This currently takes ~6 minutes of CPU time (parallelized).

This makes presubmit cross builds superfluous, since it should catch
most cross-build breaks (generally Unix and 64-bit assumptions).

Example output:

$ time go run test/typecheck/main.go
type-checking:  linux/amd64, windows/386, darwin/amd64, linux/arm, linux/386, windows/amd64, linux/arm64, linux/ppc64le, linux/s390x, darwin/386
ERROR(windows/amd64) pkg/proxy/ipvs/proxier.go:1708:27: ENXIO not declared by package unix
ERROR(windows/386) pkg/proxy/ipvs/proxier.go:1708:27: ENXIO not declared by package unix

real	0m45.083s
user	6m15.504s
sys	1m14.000s
2018-02-27 13:53:32 -08:00
.github Merge pull request #54114 from xiangpengzhao/fix-pr-template 2017-10-30 18:37:06 -07:00
api Merge pull request #59912 from superbrothers/fix-broken-link 2018-02-26 21:34:14 -08:00
build Merge pull request #60467 from BenTheElder/cache-busters 2018-02-27 12:05:43 -08:00
cluster Merge pull request #60259 from jiayingz/gpu-e2e-fix 2018-02-27 12:28:01 -08:00
cmd Move linux-only getProxyMode tests to a linux-only file. 2018-02-27 13:53:32 -08:00
docs Merge pull request #57415 from stealthybox/feature/kubeadm_594-etcd_tls 2018-02-24 21:19:42 -08:00
examples Merge pull request #59256 from hanxiaoshuai/fixtodo02021 2018-02-26 23:47:50 -08:00
Godeps Merge pull request #60446 from cblecker/no-dep-reviewer 2018-02-27 10:50:38 -08:00
hack Add test/typecheck, a fast typecheck for all build platforms. 2018-02-27 13:53:32 -08:00
logo Don't use strokes in the logo SVG 2017-10-12 09:38:56 -07:00
pkg Add a few "+build linux" tags where appropriate. 2018-02-27 13:53:32 -08:00
plugin Merge pull request #55019 from mikedanese/svcacct 2018-02-27 10:50:46 -08:00
staging Fix build tag for grpc_service_unix_test.go. 2018-02-27 13:53:32 -08:00
test Add test/typecheck, a fast typecheck for all build platforms. 2018-02-27 13:53:32 -08:00
third_party Vendor golang's go/types to include a fix for CGo typechecking. 2018-02-27 13:53:32 -08:00
translations Add OWNERS for translations folder 2018-02-04 23:54:07 -08:00
vendor Merge pull request #60446 from cblecker/no-dep-reviewer 2018-02-27 10:50:38 -08:00
.bazelrc
.generated_files
.gitattributes Hide generated files only on github 2018-01-22 10:58:48 +01:00
.gitignore fix all the typos across the project 2018-02-11 11:04:14 +08:00
.kazelcfg.json
BUILD.bazel
CHANGELOG-1.2.md
CHANGELOG-1.3.md fix the format for github error 2018-01-31 14:49:29 +08:00
CHANGELOG-1.4.md fix the format for github error 2018-02-02 18:44:27 +08:00
CHANGELOG-1.5.md fix typo in kubeadm 2018-02-06 13:48:18 +08:00
CHANGELOG-1.6.md Fix typo 2018-02-01 19:11:19 +08:00
CHANGELOG-1.7.md Update CHANGELOG-1.7.md for v1.7.12. 2017-12-29 13:42:49 +01:00
CHANGELOG-1.8.md Update CHANGELOG-1.8.md for v1.8.8. 2018-02-09 15:01:39 -08:00
CHANGELOG-1.9.md Fix incorrectly formatted URL 2018-02-22 12:20:54 -08:00
CHANGELOG-1.10.md Merge pull request #59250 from thedrow/patch-1 2018-02-20 20:00:38 -08:00
CHANGELOG.md Update release note links for 1.10 2018-01-17 22:45:12 +01:00
code-of-conduct.md Update code-of-conduct.md 2017-12-20 13:33:36 -05:00
CONTRIBUTING.md Pointed to community/contributors/guide/README.md 2017-12-15 22:08:34 +05:30
labels.yaml
LICENSE
Makefile
Makefile.generated_files
OWNERS
OWNERS_ALIASES Remove dep-reviewers 2018-02-26 17:04:32 -08:00
README.md Update README.md 2018-02-11 04:34:01 +00:00
SUPPORT.md
WORKSPACE

Kubernetes

Submit Queue Widget GoDoc Widget CII Best Practices


Kubernetes is an open source system for managing containerized applications across multiple hosts; providing basic mechanisms for deployment, maintenance, and scaling of applications.

Kubernetes builds upon a decade and a half of experience at Google running production workloads at scale using a system called Borg, combined with best-of-breed ideas and practices from the community.

Kubernetes is hosted by the Cloud Native Computing Foundation (CNCF). If you are a company that wants to help shape the evolution of technologies that are container-packaged, dynamically-scheduled and microservices-oriented, consider joining the CNCF. For details about who's involved and how Kubernetes plays a role, read the CNCF announcement.


To start using Kubernetes

See our documentation on kubernetes.io.

Try our interactive tutorial.

Take a free course on Scalable Microservices with Kubernetes.

To start developing Kubernetes

The community repository hosts all information about building Kubernetes from source, how to contribute code and documentation, who to contact about what, etc.

If you want to build Kubernetes right away there are two options:

You have a working Go environment.
$ go get -d k8s.io/kubernetes
$ cd $GOPATH/src/k8s.io/kubernetes
$ make
You have a working Docker environment.
$ git clone https://github.com/kubernetes/kubernetes
$ cd kubernetes
$ make quick-release

For the full story, head over to the developer's documentation.

Support

If you need support, start with the troubleshooting guide, and work your way through the process that we've outlined.

That said, if you have questions, reach out to us one way or another.

Analytics