Skip to content

Commit

Permalink
updating docs based on doc lint checking (#1446)
Browse files Browse the repository at this point in the history
Signed-off-by: Ken Sipe <kensipe@gmail.com>
  • Loading branch information
kensipe committed Mar 31, 2020
1 parent d15393b commit 08355d9
Show file tree
Hide file tree
Showing 5 changed files with 13 additions and 13 deletions.
4 changes: 2 additions & 2 deletions keps/0000-kep-template.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,11 +44,11 @@ To get started with this template:
Aim for single topic PRs to keep discussions focused.
If you disagree with what is already in a document, open a new PR with suggested changes.

The canonical place for the latest set of instructions (and the likely source of this file) is [here](/keps/0000-kep-template.md).
The canonical place for the latest set of instructions (and the likely source of this file) is [here](0000-kep-template.md).

The `Metadata` section above is intended to support the creation of tooling around the KEP process.
This will be a YAML section that is fenced as a code block.
See the [KEP process](/keps/0001-kep-process.md) for details on each of these items.
See the [KEP process](0001-kep-process.md) for details on each of these items.

## Table of Contents

Expand Down
2 changes: 1 addition & 1 deletion keps/0004-add-testing-infrastructure.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ status: implementable
* [Unit tests](#unit-tests)
* [Integration tests](#integration-tests)
* [Operator tests](#operator-tests)
* [Kubernetes clusters](keps/0004-add-testing-infrastructure.md#kubernetes-clusters)
* [Kubernetes clusters](0004-add-testing-infrastructure.md#kubernetes-clusters)
* [CICD](#cicd)
* [Pull Requests](#pull-requests)
* [Master Branch](#master-branch)
Expand Down
4 changes: 2 additions & 2 deletions keps/0012-operator-extensions.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ will have the EXACT same functionality (plans, parameters, tasks, templates, etc
#### Adding a Task
Tasks can be added via the same `tasks` spec in the `Operator` definition. Templates used to define the task can come from the base operator by pre-fixing `base/` to the template name, or from local templates as defined in [KEP-0009](keps/0009-operator-toolkit.md). The follow example shows two new tasks called `load-data` and `clear-data` defined for the extension operator that uses both a template from the base, with a patch object that is defined in the extension operator.
Tasks can be added via the same `tasks` spec in the `Operator` definition. Templates used to define the task can come from the base operator by pre-fixing `base/` to the template name, or from local templates as defined in [KEP-0009](0009-operator-toolkit.md). The follow example shows two new tasks called `load-data` and `clear-data` defined for the extension operator that uses both a template from the base, with a patch object that is defined in the extension operator.
```yaml
extends:
Expand Down Expand Up @@ -321,7 +321,7 @@ backup-pvc-size:
### Implementation Details/Notes/Constraints

The implementation of extensions is independent of the ability to run non-KUDO defined
operators, however there are some relationships that need to be considered when extending an operator that has a different implementation engine. See forthcoming [KEP 0013](keps/0013-external-specs.md)
operators, however there are some relationships that need to be considered when extending an operator that has a different implementation engine. See forthcoming [KEP 0013](0013-external-specs.md)

### Outstanding Questions

Expand Down
6 changes: 3 additions & 3 deletions keps/0013-external-specs.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,11 @@ status: provisional

## Summary

Organizations and companies already spend time building, updating and debugging specs for deploying their applications. Asking them to spend additional time to maintain a KUDO spec may prevent adoption of the platform. Improving KUDO to be able to consume more than just a KUDO Spec defined in [KEP-0009](keps/0009-operator-toolkit.md) would allow for oragnizations to provide access to their applications to the KUDO community.
Organizations and companies already spend time building, updating and debugging specs for deploying their applications. Asking them to spend additional time to maintain a KUDO spec may prevent adoption of the platform. Improving KUDO to be able to consume more than just a KUDO Spec defined in [KEP-0009](0009-operator-toolkit.md) would allow for oragnizations to provide access to their applications to the KUDO community.

## Motivation

While being able to package our own application definition via [KEP0009](keps/0009-operator-toolkit.md), being able to leverage other application package formats for customization and extension would provide access to a trove of KUDO Operators without any additional work required by OperatorVendors. There are
While being able to package our own application definition via [KEP0009](0009-operator-toolkit.md), being able to leverage other application package formats for customization and extension would provide access to a trove of KUDO Operators without any additional work required by OperatorVendors. There are

- Operators
- Helm
Expand Down Expand Up @@ -150,7 +150,7 @@ By default there will be a `deploy` plan with one `deploy` phase and one `deploy
### Risks and Mitigations

- It's not clear all functionality present in other application definition formats will be present in KUDO. Only support what KUDO supports currently.
- Once [KEP-0012](keps/0012-operator-extensions.md) gets merged, we may need to adjust the interface to get rendered by the TASK, not the step so that tasks from different engines can be rendered in the same step.
- Once [KEP-0012](0012-operator-extensions.md) gets merged, we may need to adjust the interface to get rendered by the TASK, not the step so that tasks from different engines can be rendered in the same step.

## Graduation Criteria

Expand Down
10 changes: 5 additions & 5 deletions keps/0015-repository-management.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ status: provisional

## Summary

There is a number of ways that an operator can be installed via KUDO. The operator developer can install via the local file system (with a operator folder or tarball). It is also possible to install via url to a tarball. While [KEP-0010](keps/0010-package-manager.md) defines the packaging structure, this kep defines:
There is a number of ways that an operator can be installed via KUDO. The operator developer can install via the local file system (with a operator folder or tarball). It is also possible to install via url to a tarball. While [KEP-0010](0010-package-manager.md) defines the packaging structure, this kep defines:

* The structure of a repository
* Defining authoritative repositories: incubator & graduated
Expand All @@ -44,7 +44,7 @@ There is a number of ways that an operator can be installed via KUDO. The opera
* CLI Tooling for search, packaging, and pushing to/from repository
* Define the rules and means to promote incubated operators to the graduated repository.

By providing a repository (or set of repositories), KUDO will provide a mechanism for administrators to easy discover and install KUDO operators. [Helm has provided some prior art](https://github.com/helm/helm/blob/master/docs/chart_repository.md) which we should align closely to from a mental model stand point.
By providing a repository (or set of repositories), KUDO will provide a mechanism for administrators to easy discover and install KUDO operators. [Helm has provided some prior art](https://helm.sh/docs/topics/chart_repository/) which we should align closely to from a mental model stand point.
It is useful to note that helm is [moving away from the custom repository model](https://blog.bacongobbler.com/post/2019-01-25-distributing-with-distribution/index.html) and towards OCI-compatible registries for a backend. While this seems like a worthy ambition, it adds work that we should focus on for a phase 2 effort. The first version of the repository should

## Motivation
Expand All @@ -62,18 +62,18 @@ We need a way for the operator author to update a repository with their operator
### Non-Goals

- Manage repos of non-KUDO applications (e.g. Helm Charts)
- External formats defined by [KEP0013](keps/0013-external-specs.md)
- External formats defined by [KEP0013](0013-external-specs.md)
- Repository cacheing

## Proposal

### Create Operator Tarball

An operator packaage as defined in [KEP0010](keps/0010-package-manager.md). The storage package at the repository is a tarball. We need a way to create this tarball in a uniformed way. KUDO shall a way to generate a tarball based on the standard file system layout. As an example: `kubectl kudo package docs/examples/zookeeper/`. This will create a `zookeeper-3.4.10.tgz` based on parsing the `operator.yaml` for version details. It would be best if this included linting to ensure that the static structure of the operator is correct. At this point, it will guarantee that operator folder has `operator.yaml` and `params.yaml` along with a templates directory. It will create the following operator tarball `{operator.yaml:name}-{operator.yaml:version}.tgz`.
An operator packaage as defined in [KEP0010](0010-package-manager.md). The storage package at the repository is a tarball. We need a way to create this tarball in a uniformed way. KUDO shall a way to generate a tarball based on the standard file system layout. As an example: `kubectl kudo package docs/examples/zookeeper/`. This will create a `zookeeper-3.4.10.tgz` based on parsing the `operator.yaml` for version details. It would be best if this included linting to ensure that the static structure of the operator is correct. At this point, it will guarantee that operator folder has `operator.yaml` and `params.yaml` along with a templates directory. It will create the following operator tarball `{operator.yaml:name}-{operator.yaml:version}.tgz`.

### Create Repository Index

KUDO needs the ability to create an index file for the repository. Something like `kubectl kudo repo index new-repo --url https://kudo-repo.storage.googleapis.com`. In this example, the `kudo repo index` is the command. The `new-repo` is a folder containing operator tarballs. The index file defined in [KEP0010](keps/0010-package-manager.md) will be created using the url provided for links in the file.
KUDO needs the ability to create an index file for the repository. Something like `kubectl kudo repo index new-repo --url https://kudo-repo.storage.googleapis.com`. In this example, the `kudo repo index` is the command. The `new-repo` is a folder containing operator tarballs. The index file defined in [KEP0010](0010-package-manager.md) will be created using the url provided for links in the file.

Steps for creating an index file for a new operator looks like:
```
Expand Down

0 comments on commit 08355d9

Please sign in to comment.