Ultralight, security-first service mesh for Kubernetes. Main repo for Linkerd 2.x.
Go to file
Andrew Seigner 34d9eef03e
proxy injector: insert at end of arrays (#1881)
When using `--proxy-auto-inject` with Kuberntes `v1.9.11`, observed auto
injector incorrectly merging list elements rather than inserting new
ones. This issue was not reproducible on `v1.10.3`.

For example, this input:
```
spec:
  template:
    spec:
      containers:
      - name: vote-bot
        command:
        - emojivoto-vote-bot
```

Would yield:
```
spec:
  template:
    spec:
      containers:
      - name: linkerd-proxy
        command:
        - emojivoto-vote-bot
      - name: vote-bot
        command:
        - emojivoto-vote-bot
```

This change replaces json patch specs like
`/spec/template/spec/containers/0` with
`/spec/template/spec/containers/-`. The former is intended to insert at
the beggining of a list, the latter at the end. This also simplifies the
code a bit and more closely aligns with the intent of injecting at the
end of lists.

Signed-off-by: Andrew Seigner <siggy@buoyant.io>
2018-11-28 14:21:18 -08:00
.github Add issue templates (#1742) 2018-10-04 14:56:11 -07:00
bin Update proxy version and use canonicalized dst (#1866) 2018-11-26 17:20:07 -08:00
cli Left-align the routes column and sort by route name (#1879) 2018-11-28 09:32:59 -08:00
controller proxy injector: insert at end of arrays (#1881) 2018-11-28 14:21:18 -08:00
grafana grafana: Show TCP closes by errno (#1839) 2018-11-02 10:20:11 -07:00
pkg Allow stat summary to query for multiple resources (#1841) 2018-11-14 10:44:04 -08:00
proto Add ListServices to controller public api (#1876) 2018-11-27 11:34:47 -08:00
proxy-init Add new iptable rule to for outbound traffic (#1863) 2018-11-15 13:56:45 -08:00
test Make permission checks non-fatal, add check for CRDs (#1859) 2018-11-14 10:29:04 -08:00
testutil Increase retry timeout for retryable tests, refactor RetryFor (#1835) 2018-11-06 16:03:58 -08:00
web Add the top routes feature to the dashboard UI (#1868) 2018-11-27 16:53:10 -08:00
.dockerignore Allow docker-build-proxy to override the proxy version (#1324) 2018-07-26 10:10:49 -07:00
.editorconfig Add protobuf files to .editorconfig (#1042) 2018-05-30 15:09:38 -07:00
.gcp.json.enc Add docker builds and integration tests to CI (#1303) 2018-07-11 14:01:42 -07:00
.gitattributes proxy: Update `rand` to 0.5.1 (#1125) 2018-06-14 15:09:58 -07:00
.gitignore Proxy init and sidecar containers auto-injection (#1714) 2018-10-10 12:09:22 -07:00
.travis.yml Use jest instead of karma for running tests (#1768) 2018-10-15 17:06:35 -07:00
BUILD.md Remove the proxy-api container (#1813) 2018-10-29 16:31:43 -07:00
CHANGES.md Update CHANGES.md for edge-18.11.2 release (#1864) 2018-11-15 14:39:25 -08:00
CONTRIBUTING.md Remove remaining conduit references in codebase (#1381) 2018-07-31 11:19:34 -07:00
DCO Add contributing doc and DCO file (#88) 2017-12-22 14:54:27 -08:00
Dockerfile-base Rename CLI from conduit to linkerd (#1312) 2018-07-12 17:14:07 -07:00
Dockerfile-go-deps Upgrade to dep 0.5.0, go 1.10.3 (#1479) 2018-08-17 16:04:50 -07:00
Dockerfile-proxy Add LICENSE files to all Docker images (#1727) 2018-10-02 16:25:52 -07:00
GOVERNANCE.md Adopt Linkerd's governance (#1301) 2018-07-10 15:06:59 -07:00
Gopkg.lock Send metric labels in profile API (#1800) 2018-10-29 14:28:09 -07:00
Gopkg.toml Send metric labels in profile API (#1800) 2018-10-29 14:28:09 -07:00
LICENSE Introducing Conduit, the ultralight service mesh 2017-12-05 00:24:55 +00:00
MAINTAINERS.md Adopt Linkerd's governance (#1301) 2018-07-10 15:06:59 -07:00
README.md update README.md (#1657) 2018-09-19 02:02:27 +08:00
TEST.md Use jest instead of karma for running tests (#1768) 2018-10-15 17:06:35 -07:00

README.md

Linkerd

Build Status GitHub license Slack Status

🎈 Welcome to Linkerd! 👋

Linkerd is a service sidecar designed to give service owners automatic observability, reliability, and runtime diagnostics for their service without requiring configuration or code changes. Linkerd is also a service mesh, running across an entire cluster to provide platform-wide telemetry, security, and reliability.

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 Kubernetes 1.9+ 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

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.

License

Copyright 2018, 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.