-
Notifications
You must be signed in to change notification settings - Fork 21
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: handle upgrade path for functional layers, add doc for usage (#…
…896) ## Description Changes included: 1. Functional layers upgrade was not successful when I tested initially. There were ownership issues with the `manifests` we use for istio. To resolve that problem I moved the manifests into a chart and added an action to update the ownership before the upgrade. I also removed the pepr action that we have had for several releases since it was needed as a one-time upgrade step (similar to this one). 2. Added a lightweight doc on the usage of functional layers with a very brief explanation and warning as well as a full example of a bundle pulling in the layers. 3. A few misc link fixes and other things to follow the astro docs switch. ## Related Issue Fixes #868 Fixes #900 ## Type of change - [x] Bug fix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds functionality) - [x] Other (security config, docs update, etc) ## Checklist before merging - [x] Test, docs, adr added or updated as needed - [x] [Contributor Guide](https://github.com/defenseunicorns/uds-template-capability/blob/main/CONTRIBUTING.md) followed --------- Co-authored-by: Noah <[email protected]>
- Loading branch information
Showing
14 changed files
with
122 additions
and
40 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
--- | ||
title: Functional Layers | ||
--- | ||
|
||
## Background | ||
|
||
Context on the inclusion of "functional layers" can be viewed in our [ADR](https://github.com/defenseunicorns/uds-core/blob/main/docs/adrs/0002-uds-core-functional-layers.md). In short, UDS Core publishes smaller Zarf packages that contain subsets of core's capabilities, grouped by their function (such as monitoring, logging, backup/restore, etc) to allow more flexibility in deployment. This helps to support resource constrained environments (edge deployments) and other situations where an environment has different needs than the default core stack. | ||
|
||
Each layer is published as an individual OCI Zarf package. Package sources can be viewed under the [`packages` directory](https://github.com/defenseunicorns/uds-core/tree/main/packages), with each folder containing a readme detailing the contents and any dependencies. All layers assume the requirement of the base layer which provides Istio, the UDS Operator, and UDS Policy Engine. | ||
|
||
:::caution | ||
By removing pieces of core from your deployment you may affect your security and compliance posture as well as reduce functionality of the stack. Deploying core using these layers should be the exception in most cases and only done after carefully weighing needs for your environment. | ||
::: | ||
|
||
## Example Usage | ||
|
||
Functional layers are designed to be combined into a UDS bundle for deployment. The example below shows all layers in the correct order. Keep in mind that 'base' must always be the first layer, and any other layers should follow based on their dependency order. When building your bundle, you can skip layers that don't fit your deployment needs and apply overrides to individual layers as needed. Ensure all layers are using the same version for compatibility. | ||
|
||
```yaml | ||
kind: UDSBundle | ||
metadata: | ||
name: functional-layer-core-bundle | ||
description: An example bundle for deploying all of core using functional layers | ||
version: "0.1.0" | ||
|
||
packages: | ||
- name: core-base | ||
repository: ghcr.io/defenseunicorns/packages/uds/core-base | ||
ref: 0.29.0-upstream | ||
- name: core-identity-authorization | ||
repository: ghcr.io/defenseunicorns/packages/uds/core-identity-authorization | ||
ref: 0.29.0-upstream | ||
- name: core-metrics-server | ||
repository: ghcr.io/defenseunicorns/packages/uds/core-metrics-server | ||
ref: 0.29.0-upstream | ||
- name: core-runtime-security | ||
repository: ghcr.io/defenseunicorns/packages/uds/core-runtime-security | ||
ref: 0.29.0-upstream | ||
- name: core-logging | ||
repository: ghcr.io/defenseunicorns/packages/uds/core-logging | ||
ref: 0.29.0-upstream | ||
- name: core-monitoring | ||
repository: ghcr.io/defenseunicorns/packages/uds/core-monitoring | ||
ref: 0.29.0-upstream | ||
- name: core-ui | ||
repository: ghcr.io/defenseunicorns/packages/uds/core-ui | ||
ref: 0.29.0-upstream | ||
- name: core-backup-restore | ||
repository: ghcr.io/defenseunicorns/packages/uds/core-backup-restore | ||
ref: 0.29.0-upstream | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
# Patterns to ignore when building packages. | ||
# This supports shell glob matching, relative path matching, and | ||
# negation (prefixed with !). Only one pattern per line. | ||
.DS_Store | ||
# Common VCS dirs | ||
.git/ | ||
.gitignore | ||
.bzr/ | ||
.bzrignore | ||
.hg/ | ||
.hgignore | ||
.svn/ | ||
# Common backup files | ||
*.swp | ||
*.bak | ||
*.tmp | ||
*.orig | ||
*~ | ||
# Various IDEs | ||
.project | ||
.idea/ | ||
*.tmproj | ||
.vscode/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# SPDX-License-Identifier: AGPL-3.0-or-later OR Commercial | ||
apiVersion: v2 | ||
name: uds-global-istio-config | ||
description: Global Istio configuration for UDS | ||
|
||
# A chart can be either an 'application' or a 'library' chart. | ||
# | ||
# Application charts are a collection of templates that can be packaged into versioned archives | ||
# to be deployed. | ||
# | ||
# Library charts provide useful utilities or functions for the chart developer. They're included as | ||
# a dependency of application charts to inject those utilities and functions into the rendering | ||
# pipeline. Library charts do not define any templates and therefore cannot be deployed. | ||
type: application | ||
|
||
# This is the chart version. This version number should be incremented each time you make changes | ||
# to the chart and its templates, including the app version. | ||
# Versions are expected to follow Semantic Versioning (https://semver.org/) | ||
version: 0.1.0 |
File renamed without changes.
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
# SPDX-License-Identifier: AGPL-3.0-or-later OR Commercial |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters