Production-Grade Container Scheduling and Management
Go to file
Stephen Kitt f146b4287f
Licensing: skip modules with fewer subdirs than mods
This came up when updating go-oidc. After updating go-oidc (with its
dependency tree), cloud.google.com/go was no longer used as a package
import, but still listed in the module dependency graph; as a result,
"go mod vendor" no longer pulled in cloud.google.com/go itself, but
update-vendor-licenses.sh still wanted a license file for it since it
appeared in the list of modules.

This scenario is already supposed to be handled: when a module doesn't
contain any *files* as first-level content, if the number of
subdirectories it contains *equals* the number of submodules it
contains (excluding itself), the module is skipped. This fails for
cloud.google.com/go because several submodules are included in the
module dependency graph but aren't actually used, and therefore not
vendored.

Updating the test to check that the number of subdirectories is less
than or equal to the number of expected submodules fixes this.

The correct fix would be to process the submodules first, keeping a
note of which ones really have content, then check that the top-level
module only contains subdirectories corresponding to those modules;
but it's not clear to me that this is worth the effort (especially in
a shell script).

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2023-01-03 16:48:35 +01:00
.github Make root approval non-recursive 2022-10-10 08:26:53 -04:00
api Remove old comments about IPv6 not being ready 2022-12-23 11:06:44 -08:00
build Add .go-version file containing build go version 2022-12-22 11:43:23 -05:00
CHANGELOG CHANGELOG-1.26: move OpenStack in-tree provider removal to urgent notes 2023-01-01 15:07:04 +01:00
cluster store cloud-controller-manager logs 2022-12-20 11:39:18 +00:00
cmd Merge pull request #114719 from chendave/cleanup_copy 2023-01-02 19:49:31 -08:00
docs Make root approval non-recursive 2022-10-10 08:26:53 -04:00
hack Licensing: skip modules with fewer subdirs than mods 2023-01-03 16:48:35 +01:00
LICENSES Merge pull request #112988 from alexzielenski/update-kube-openapi 2022-10-14 17:31:29 -07:00
logo logo: better alignment of layers 2022-10-19 12:17:25 -07:00
pkg Merge pull request #114750 from aojea/cleanup_allocator 2023-01-02 14:57:31 -08:00
plugin Fix indentation/spacing in comments to render correctly in godoc 2022-12-17 23:27:38 -05:00
staging Merge pull request #114236 from dgrisonnet/fix-eventseries-race 2023-01-02 08:39:30 -08:00
test e2e storage: define local PersistentVolume tests in deterministic order 2023-01-02 16:22:11 +01:00
third_party Make root approval non-recursive 2022-10-10 08:26:53 -04:00
vendor Merge pull request #113538 from pohly/e2e-ginkgo-timeline 2022-12-21 13:53:28 -08:00
.generated_files remove clearly unnecessary lingering BUILD file references 2022-10-04 16:47:25 -07:00
.gitattributes
.gitignore
.go-version Add .go-version file containing build go version 2022-12-22 11:43:23 -05:00
.golangci.yaml hack/tools enable additional linter in golangci-lint 2022-10-21 17:58:15 +02:00
CHANGELOG.md Add link to to file 2022-10-19 09:13:29 +03:00
code-of-conduct.md
CONTRIBUTING.md
go.mod Merge pull request #113538 from pohly/e2e-ginkgo-timeline 2022-12-21 13:53:28 -08:00
go.sum Merge pull request #113538 from pohly/e2e-ginkgo-timeline 2022-12-21 13:53:28 -08:00
LICENSE
Makefile
OWNERS Add sig-architecture-approvers and dep-approvers to root dir 2022-10-10 13:43:04 -04:00
OWNERS_ALIASES sig-node-reviewers: add endocrimes 2022-12-15 19:03:25 +01:00
README.md remove gopkg widget 2022-10-18 16:52:38 -07:00
SECURITY_CONTACTS
SUPPORT.md

Kubernetes (K8s)

CII Best Practices


Kubernetes, also known as K8s, is an open source system for managing containerized applications across multiple hosts. It provides 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 your company 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 K8s

See our documentation on kubernetes.io.

Try our interactive tutorial.

Take a free course on Scalable Microservices with Kubernetes.

To use Kubernetes code as a library in other applications, see the list of published components. Use of the k8s.io/kubernetes module or k8s.io/kubernetes/... packages as libraries is not supported.

To start developing K8s

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.
mkdir -p $GOPATH/src/k8s.io
cd $GOPATH/src/k8s.io
git clone https://github.com/kubernetes/kubernetes
cd 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.

Community Meetings

The Calendar has the list of all the meetings in Kubernetes community in a single location.

Adopters

The User Case Studies website has real-world use cases of organizations across industries that are deploying/migrating to Kubernetes.

Governance

Kubernetes project is governed by a framework of principles, values, policies and processes to help our community and constituents towards our shared goals.

The Kubernetes Community is the launching point for learning about how we organize ourselves.

The Kubernetes Steering community repo is used by the Kubernetes Steering Committee, which oversees governance of the Kubernetes project.

Roadmap

The Kubernetes Enhancements repo provides information about Kubernetes releases, as well as feature tracking and backlogs.