Skip to content

feat: add 0.13.x notes#98

Merged
oliverbaehler merged 15 commits into
projectcapsule:mainfrom
oliverbaehler:feat/proxy-args
Jul 2, 2026
Merged

feat: add 0.13.x notes#98
oliverbaehler merged 15 commits into
projectcapsule:mainfrom
oliverbaehler:feat/proxy-args

Conversation

@oliverbaehler

Copy link
Copy Markdown
Contributor
  • Add Performance tuning instructions
  • Add known Metadata
  • Add Metadata enforcement

oliverbaehler and others added 15 commits June 10, 2026 07:36
* feat: add release additions

Signed-off-by: Oliver Baehler <oliver@sudo-i.net>

* feat: update api references

Signed-off-by: Oliver Baehler <oliver@sudo-i.net>

* feat: update openshfit install docs (projectcapsule#87)

* feat: update openshfit install docs

Signed-off-by: sandert-k8s <sandert98@gmail.com>

* fix: add red hat exclude in lychee

Signed-off-by: sandert-k8s <sandert98@gmail.com>

---------

Signed-off-by: sandert-k8s <sandert98@gmail.com>
Signed-off-by: Oliver Baehler <oliver@sudo-i.net>

* feat: add migration clarification

Signed-off-by: Oliver Baehler <oliver@sudo-i.net>

* fix: broken links

Signed-off-by: Oliver Baehler <oliver@sudo-i.net>

* fix: broken links

Signed-off-by: Oliver Baehler <oliver@sudo-i.net>

---------

Signed-off-by: Oliver Baehler <oliver@sudo-i.net>
Signed-off-by: sandert-k8s <sandert98@gmail.com>
Co-authored-by: Sander Tervoert <32864332+sandert-k8s@users.noreply.github.com>
Signed-off-by: Oliver Baehler <oliver@sudo-i.net>
Signed-off-by: Oliver Baehler <oliver@sudo-i.net>
Signed-off-by: Oliver Baehler <oliver@sudo-i.net>
* chore: add status objects in apireference

Signed-off-by: sandert-k8s <sandert98@gmail.com>

* chore: typo proxysetting

Signed-off-by: sandert-k8s <sandert98@gmail.com>

* chore: fix spelling

Signed-off-by: sandert-k8s <sandert98@gmail.com>

---------

Signed-off-by: sandert-k8s <sandert98@gmail.com>
Signed-off-by: Oliver Baehler <oliver@sudo-i.net>
* feat: add prek as pre-commit

Signed-off-by: sandert-k8s <sandert98@gmail.com>

* chore: fix broken links

Signed-off-by: sandert-k8s <sandert98@gmail.com>

* chore: fix linting with prek

Signed-off-by: sandert-k8s <sandert98@gmail.com>

---------

Signed-off-by: sandert-k8s <sandert98@gmail.com>
Signed-off-by: Oliver Baehler <oliver@sudo-i.net>
Signed-off-by: Oliver Baehler <oliver@sudo-i.net>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Oliver Baehler <oliver@sudo-i.net>
* fix: apiVersion in docs

Signed-off-by: sandert-k8s <sandert98@gmail.com>

* chore: fix lb path

Signed-off-by: sandert-k8s <sandert98@gmail.com>

---------

Signed-off-by: sandert-k8s <sandert98@gmail.com>
Signed-off-by: Oliver Baehler <oliver@sudo-i.net>
Signed-off-by: Oliver Baehler <oliver@sudo-i.net>
Signed-off-by: Oliver Baehler <oliver@sudo-i.net>
Copilot AI review requested due to automatic review settings July 2, 2026 12:32
@netlify

netlify Bot commented Jul 2, 2026

Copy link
Copy Markdown

Deploy Preview for docs-projectcapsule ready!

Name Link
🔨 Latest commit 4047206
🔍 Latest deploy log https://app.netlify.com/projects/docs-projectcapsule/deploys/6a465a6f4fe464000883f18e
😎 Deploy Preview https://deploy-preview-98--docs-projectcapsule.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@oliverbaehler oliverbaehler merged commit a15cf91 into projectcapsule:main Jul 2, 2026
3 of 5 checks passed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the documentation set for the 0.13.x series by expanding the Rules and Enforcement docs (including a new “Metadata” enforcement section), adding scalability/performance-tuning guidance for controller/proxy installation, and introducing a “Known Metadata” reference page.

Changes:

  • Add extensive “Metadata” enforcement documentation under Tenant Rules.
  • Add Rules documentation for namespaceSelector and Go-template rendering.
  • Extend installation guides with scalability guidance (QPS/Burst, workers, cache sync, APF) and add a new “Known Metadata” doc page.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 18 comments.

Show a summary per file
File Description
content/en/docs/tenants/rules/enforcement.md Adds a new “Metadata” enforcement section with examples and detailed behavior notes.
content/en/docs/tenants/rules/_index.md Adds namespace selector and templating documentation for rules.
content/en/docs/reference.md Extends the API reference with metadata-related schema and selector semantics updates.
content/en/docs/proxy/setup/installation.md Adds scalability guidance for capsule-proxy deployment.
content/en/docs/operating/setup/installation.md Adds scalability guidance for controller/operator installation.
content/en/docs/operating/known-metadata.md Introduces a new page documenting commonly used Capsule labels/metadata.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

| `required` applies to allow rules | `required: true` enforces presence for `action: allow`. `deny` and `audit` rules match values; they do not require missing keys to exist. |
| Empty metadata values are valid values | A label or annotation with an empty string value is still present and can be matched with `exact: [""]`. |
| Labels and annotations are independent | A matching annotation does not satisfy a required label with the same key, and a matching label does not satisfy a required annotation. |
| `apiVersion: ""` means core `v1` | Use `apiVersion: "*"` to match all API versions. |

| Field | Description |
|---|---|
| `apiVersion` | API version selector. Empty or omitted means core `v1`. Use `"*"` to match all API versions. |
- Service
```

This targets core `v1` `ConfigMap` and `Service` resources because `apiVersion` is omitted.
Comment on lines +1953 to +1955
#### Important `apiVersion` behavior

An omitted or empty `apiVersion` does **not** mean all API versions. It means the core Kubernetes API version `v1`.
Comment on lines +1965 to +1967
This does **not** match `apps/v1` `Deployment`, because an empty `apiVersion` is interpreted as core `v1`.

To match `apps/v1` deployments, set the API version explicitly:
Comment on lines +35 to +36
| Description | Target Objects |
|---|---|---|
### `projectcapsule.dev/created-by`

| Description | Target Objects | Audience |
|---|---|

| Description | Target Objects | Audience |
|---|---|---|
| Label for tracking internal name or allowing for faster selects. Mainly used to identify relevant rulestatus | * `Tenant Namespaces` | `Controller` |
Comment on lines +1921 to +1927
```yaml
metadata:
- apiGroups: apps/v1
kinds:
- Deployment
- StatefulSet
```
Comment on lines +1979 to +1984
```yaml
metadata:
- apiVersion: "*"
kinds:
- Deployment
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants