Skip to content
This repository has been archived by the owner on Mar 18, 2023. It is now read-only.

Commit

Permalink
Merge pull request #329 from stakater/update-change-logs
Browse files Browse the repository at this point in the history
Update change logs
  • Loading branch information
abdulhaseeb2 authored Jul 20, 2022
2 parents 48f6bf7 + c2c8441 commit c4944ec
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 11 deletions.
17 changes: 16 additions & 1 deletion content/sre/tenant-operator/changelog.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,20 @@
# Changelog

## v0.5.0

### Changes

- feat: Add support for tenant namespaces off-boarding. For more details check out [onDelete](./customresources.html#_2-tenant)
- feat: Add tenant webhook for spec validation

- fix: TemplateGroupInstance now cleans up leftover Template resources from namespaces that are no longer part of TGI namespace selector
- fix: Fixed hibernation sync issue

- enhance: Update tenant spec for applying common/specific namespace labels/annotations. For more details check out [commonMetadata & SpecificMetadata](./customresources.html#_2-tenant)
- enhance: Add support for multi-pod architecture for Operator-Hub

- chore: Remove conversion webhook for Quota and Tenant

## v0.4.7

### Changes
Expand All @@ -11,7 +26,7 @@

### Changes

- fix: Revert v0.4.4
- fix: Revert v0.4.4

## v0.4.5

Expand Down
22 changes: 12 additions & 10 deletions content/sre/tenant-operator/customresources.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,10 @@ spec:
viewers:
users:
- [email protected]
sandbox: true
quota: medium
sandbox: true
onDelete:
cleanNamespaces: true
argocd:
sourceRepos:
- https://github.com/stakater/gitops-config
Expand Down Expand Up @@ -130,14 +132,17 @@ spec:

* Tenant will have a `Quota` to limit resource consumption.

* `argocd` can be used to list `sourceRepos` that point to your gitops repositories. The field is required if you want to create an ArgoCD AppProject for the tenant.

* `hibernation` can be used to create a schedule during which the namespaces belonging to the tenant will be put to sleep. The values of the `sleepSchedule` and `wakeSchedule` fields must be a string in a cron format.

* Tenant will have an option to create *sandbox namespaces* for owners and editors, when `sandbox` is set to *true*.
* Sandbox will follow the following naming convention **{TenantName}**-**{UserName}**-*sandbox*.
* In case of groups, the sandbox namespaces will be created for each member of the group.

* `onDelete` is used to tell Tenant-Operator what to do when a Tenant is deleted.
* `cleanNamespaces` if the value is set to **true** *Tenant-Operator* deletes all *tenant namespaces* when a `Tenant` is deleted. Default value is **false**.

* `argocd` can be used to list `sourceRepos` that point to your gitops repositories. The field is required if you want to create an ArgoCD AppProject for the tenant.

* `hibernation` can be used to create a schedule during which the namespaces belonging to the tenant will be put to sleep. The values of the `sleepSchedule` and `wakeSchedule` fields must be a string in a cron format.

* Namespaces can also be created via tenant CR by *specifying names* in `namespaces`.
* Tenant-Operator will append *tenant name* prefix while creating namespaces, so the format will be **{TenantName}**-**{Name}**.
* `stakater.com/kind: {Name}` label will also be added to the namespaces.
Expand All @@ -151,16 +156,13 @@ spec:
* `annotations` distributes given annotations among specific tenant namespaces
* `namespaces` consists a list of specific tenant namespaces across which the labels and annotations will be distributed

#### :memo: Note
If same label or annotation key is being applied using different methods provided, then the highest precedence will be given to `specificMetadata` followed by `commonMetadata` and in the end would be the ones applied from `openshift.project.labels`/`openshift.project.annotations` in `IntegrationConfig`

* Tenant automatically deploys `template` resource mentioned in `templateInstances` to matching tenant namespaces.
* `Template` resources are created in those `namespaces` which belong to a `tenant` and contain `matching labels`.
* `Template` resources are created in all `namespaces` of a `tenant` if `selector` field is empty.

::: warning Warning:
::: warning Note:

* If tenant is deleted, then all namespaces created by tenant will also be deleted(spec.namespaces and sandbox namespaces).
If same label or annotation key is being applied using different methods provided, then the highest precedence will be given to `specificMetadata` followed by `commonMetadata` and in the end would be the ones applied from `openshift.project.labels`/`openshift.project.annotations` in `IntegrationConfig`

:::

Expand Down

0 comments on commit c4944ec

Please sign in to comment.