Ultralight, security-first service mesh for Kubernetes. Main repo for Linkerd 2.x.
Go to file
Alejandro Pedraza a268ff11c9
Allow `Server` CRD to have empty `PodSelector` (#7925)
Fixes #7904

Allow the `Server` CRD to have the `PodSelector` entry be an empty object, by removing the `omitempty` tag from its go type definition and the `oneof` section in the CRD. No update to the CRD version is required, as this is BC change -- The CRD overriding was tested fine.

Also added some unit tests to confirm podSelector conditions are ANDed, and some minor refactorings in the `Selector` constructors.

Co-authored-by: Oliver Gould <ver@buoyant.io>
2022-02-23 13:45:34 +00:00
.devcontainer Reduce extensions down to essentials (#7923) 2022-02-21 15:16:47 -08:00
.github Run lint action from the devcontainer, remove bin/lint script (#7895) 2022-02-17 14:46:57 -08:00
bin Run lint action from the devcontainer, remove bin/lint script (#7895) 2022-02-17 14:46:57 -08:00
charts Allow `Server` CRD to have empty `PodSelector` (#7925) 2022-02-23 13:45:34 +00:00
cli Allow `Server` CRD to have empty `PodSelector` (#7925) 2022-02-23 13:45:34 +00:00
cni-plugin go: Enable `errorlint` checking (#7885) 2022-02-16 18:32:19 -07:00
controller Allow `Server` CRD to have empty `PodSelector` (#7925) 2022-02-23 13:45:34 +00:00
grafana Parametrized datasource in grafana dashboards, better script handling (#7603) 2022-01-14 11:30:19 -05:00
jaeger edge-22.2.3 (#7911) 2022-02-17 13:51:08 -08:00
multicluster Enable gocritic linting (#7906) 2022-02-17 22:45:25 +00:00
pkg Issue individual warnings for nodes missing podCIDRs (#7862) 2022-02-17 17:45:43 -07:00
policy-controller Allow `Server` CRD to have empty `PodSelector` (#7925) 2022-02-23 13:45:34 +00:00
proto Remove legacy upgrade and it's references (#7309) 2021-11-29 20:08:58 +05:30
proxy-identity Enable gocritic linting (#7906) 2022-02-17 22:45:25 +00:00
test Test for validating proxy can't be used as an open relay (#7884) 2022-02-21 16:07:43 +00:00
testutil Enable gocritic linting (#7906) 2022-02-17 22:45:25 +00:00
viz Enable gocritic linting (#7906) 2022-02-17 22:45:25 +00:00
web build(deps-dev): bump @babel/core from 7.17.2 to 7.17.5 in /web/app (#7930) 2022-02-21 15:45:12 -08:00
.dockerignore Standardize curl flags with scurl (#7658) 2022-01-24 08:42:20 -08:00
.editorconfig Add PodDisruptionBudgets to control plane (#5398) (#5406) 2021-01-06 09:19:15 -05:00
.gcp.json.enc Add docker builds and integration tests to CI (#1303) 2018-07-11 14:01:42 -07:00
.gitattributes Update gitattributes to improve PR file visilibity (#6767) 2021-08-30 14:52:53 -07:00
.gitignore Upload code coverage of unit tests to codecov (#6321) 2021-06-23 10:15:01 -06:00
.golangci.yml Enable gocritic linting (#7906) 2022-02-17 22:45:25 +00:00
.helmdocsignore Add automatic readme generation for charts (#5316) 2020-12-02 14:37:45 -05:00
.markdownlint.yaml Lint all markdown files in CI (#4402) 2020-05-19 23:03:50 -07:00
.proxy-version proxy: v2.173.0 (#7890) 2022-02-15 14:42:06 -07:00
ADOPTERS.md Add ZeroFlucs to Adopters.md (#7802) 2022-02-07 09:38:56 -05:00
BUILD.md Run lint action from the devcontainer, remove bin/lint script (#7895) 2022-02-17 14:46:57 -08:00
CHANGES.md edge-22.2.3 (#7911) 2022-02-17 13:51:08 -08:00
CODE_OF_CONDUCT.md Lint all markdown files (#4403) 2020-05-19 09:59:26 -07:00
CONTRIBUTING.md Spelling (#6215) 2021-06-07 15:16:59 -06:00
Cargo.lock build(deps): bump anyhow from 1.0.54 to 1.0.55 (#7936) 2022-02-22 07:37:47 -08:00
Cargo.toml Create a top-level Cargo workspace (#6845) 2021-09-09 14:49:42 -07:00
DCO Add contributing doc and DCO file (#88) 2017-12-22 14:54:27 -08:00
Dockerfile-debug Update debian base images to buster-20210208-slim (#5750) 2021-02-16 08:39:53 -08:00
Dockerfile-proxy Add 2 minutes linkerd-await timeout (#7778) 2022-02-03 17:23:06 -08:00
EXTENSIONS.md Versioned `linkerd check` hint URLs (#6102) 2021-05-10 13:21:15 -05:00
GOVERNANCE.md add preamble to GOVERNANCE.md (#6008) 2021-04-12 17:49:20 -05:00
LICENSE Introducing Conduit, the ultralight service mesh 2017-12-05 00:24:55 +00:00
MAINTAINERS.md Add @mateiidavid to maintainers (#6597) 2021-08-04 09:02:47 -07:00
README.md reference SECURITY.md from README.md (#5918) 2021-03-18 10:13:06 -07:00
RELEASE.md Add release instructions (#7574) 2022-01-12 10:24:24 -08:00
ROADMAP.md Update roadmap (#7413) 2021-12-13 16:11:32 -05:00
SECURITY.md Spelling (#4872) 2020-08-12 21:59:50 -07:00
SECURITY_AUDIT.pdf Add security audit (#3008) 2019-06-28 16:04:41 -07:00
STEERING.md add STEERING.md (#5607) 2021-01-27 09:39:32 -06:00
TEST.md Remove browser integration tests (#6583) 2021-08-04 10:28:50 -07:00
deny.toml build(deps): bump tower from 0.4.11 to 0.4.12 (#7908) 2022-02-17 14:04:57 -07:00
go.mod build(deps): bump k8s.io/apiextensions-apiserver from 0.23.3 to 0.23.4 (#7921) 2022-02-18 11:54:59 -07:00
go.sum build(deps): bump k8s.io/apiextensions-apiserver from 0.23.3 to 0.23.4 (#7921) 2022-02-18 11:54:59 -07:00
rust-toolchain Add a devcontainer configuration (#7583) 2022-01-11 14:38:18 -08:00
tools.go Update protoc (#6333) 2021-06-21 16:37:57 -07:00

README.md

Linkerd

Linkerd

CII Best Practices GitHub Actions Status GitHub license Go Report Card Slack Status

🎈 Welcome to Linkerd! 👋

Linkerd is an ultralight, security-first service mesh for Kubernetes. Linkerd adds critical security, observability, and reliability features to your Kubernetes stack with no code change required.

Linkerd is a Cloud Native Computing Foundation (CNCF) project.

Repo layout

This is the primary repo for the Linkerd 2.x line of development.

The complete list of Linkerd repos is:

Quickstart and documentation

You can run Linkerd on any modern Kubernetes cluster in a matter of seconds. See the Linkerd Getting Started Guide for how.

For more comprehensive documentation, start with the Linkerd docs. (The doc source code is available in the website repo.)

Working in this repo

BUILD.md includes general information on how to work in this repo.

We ❤️ pull requests! See CONTRIBUTING.md for info on contributing changes.

Get involved

Community meetings

We host regular online meetings for contributors, adopters, maintainers, and anyone else interested to connect in a synchronous fashion. These meetings usually take place the last Thursday of the month at 9am Pacific / 4pm UTC.

We're a friendly group, so please feel free to join us!

Steering Committee meetings

We host regular online meetings for the Linkerd Steering Committee. All are welcome to attend, but audio and video participation is limited to Steering Committee members and maintainers. These meetings are currently scheduled on an ad-hoc basis and announced on the linkerd-users mailing list.

Code of Conduct

This project is for everyone. We ask that our users and contributors take a few minutes to review our Code of Conduct.

Security

See SECURITY.md for our security policy, including how to report vulnerabilities.

A third party security audit was performed by Cure53 in June 2019. You can see the full report here.

License

Copyright 2021 the Linkerd Authors. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use these files 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.