mirror of https://github.com/crossplane/docs.git
Merge pull request #500 from plumbis/vale-xrd
This commit is contained in:
commit
0968bbe309
|
@ -12,12 +12,11 @@ the Crossplane documentation.
|
|||
|
||||
Information on contributing to the Crossplane software project is in the
|
||||
Crossplane
|
||||
[CONTRIBUTING.md](https://github.com/crossplane/crossplane/blob/master/CONTRIBUTING.md)
|
||||
[`CONTRIBUTING.md`](https://github.com/crossplane/crossplane/blob/master/CONTRIBUTING.md)
|
||||
file.
|
||||
|
||||
## Code of conduct
|
||||
Crossplane follows the [CNCF Code of
|
||||
Conduct](https://github.com/cncf/foundation/blob/main/code-of-conduct.md).
|
||||
Crossplane follows the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/main/code-of-conduct.md).
|
||||
|
||||
Taken directly from the code:
|
||||
<!-- vale off -->
|
||||
|
|
|
@ -191,11 +191,12 @@ For example, the following code block allows editing the key and secret fields.
|
|||
aws_access_key_id = $@<aws_access_key>$@
|
||||
aws_secret_access_key = $@<aws_secret_key>$@
|
||||
```
|
||||
{{</ editCode >}}
|
||||
|
||||
{{< /editCode >}}
|
||||
<!-- vale off -->
|
||||
To set a field as editable wrap a standard code block, including language highlighting hints in the `{{</* editCode */>}}` shortcode.
|
||||
<!-- vale on -->
|
||||
|
||||
Wrap any editable element in dollar-sign followed by a at character (`$@`).
|
||||
Wrap any editable element in dollar sign followed by a at character (`$@`).
|
||||
|
||||
````go
|
||||
{{</* editCode */>}}
|
||||
|
|
|
@ -17,7 +17,7 @@ If you're having trouble with the Hugo shortcodes, ask for help in the
|
|||
## Markdown
|
||||
Crossplane documentation uses Hugo to render Markdown to
|
||||
HTML. Hugo supports [Commonmark](https://commonmark.org/) and
|
||||
[GitHub Flavored Markdown](https://github.github.com/gfm/) (`GFM`) through the
|
||||
[GitHub Flavored Markdown](https://github.github.com/gfm/) through the
|
||||
[Goldmark](https://github.com/yuin/goldmark/) parser.
|
||||
|
||||
{{< hint "note" >}}
|
||||
|
@ -131,7 +131,7 @@ Images using the shortcode are automatically converted to `webp` image format,
|
|||
compressed and use responsive image sizing.
|
||||
|
||||
{{<hint "note">}}
|
||||
The `img` shortcode doesn't support .SVG files.
|
||||
The `img` shortcode doesn't support `.svg` files.
|
||||
{{< /hint >}}
|
||||
|
||||
The shortcode requires a `src`, an
|
||||
|
@ -165,16 +165,19 @@ and notifies which links to change after moving a page.
|
|||
### Between docs pages
|
||||
For links between pages use a standard Markdown link in the form:
|
||||
|
||||
<!-- vale off -->
|
||||
`[Link text](link)`
|
||||
<!-- vale on -->
|
||||
|
||||
Crossplane recommends using the [Hugo ref
|
||||
shortcode](https://gohugo.io/content-management/shortcodes/#ref-and-relref)
|
||||
Crossplane recommends using the [Hugo ref shortcode](https://gohugo.io/content-management/shortcodes/#ref-and-relref)
|
||||
with the path of the file relative to `/content` for the link location.
|
||||
|
||||
For example, to link to the `master` release index page use
|
||||
<!-- vale off -->
|
||||
```markdown
|
||||
[master branch documentation]({{</* ref "master/_index.md" */>}})
|
||||
```
|
||||
<!-- vale on -->
|
||||
|
||||
<!-- [master branch documentation]({{<ref "master/_index.md" >}}) -->
|
||||
|
||||
|
@ -231,9 +234,11 @@ for the `table` shortcode. The docs support all Bootstrap table classes passed
|
|||
to the shortcode.
|
||||
|
||||
### Striped tables
|
||||
<!-- vale off -->
|
||||
To create a table with
|
||||
[striped rows](https://getbootstrap.com/docs/5.2/content/tables/#striped-rows):
|
||||
|
||||
|
||||
```markdown
|
||||
{{</* table "table table-striped" */>}}
|
||||
| Title | A Column | Another Column |
|
||||
|
@ -242,6 +247,7 @@ To create a table with
|
|||
| A Row | more of the row | another column in the row |
|
||||
{{</* /table */>}}
|
||||
```
|
||||
<!-- vale on -->
|
||||
|
||||
{{< table "table table-striped">}}
|
||||
| Title | A Column | Another Column |
|
||||
|
|
|
@ -17,10 +17,10 @@ files, like HTML templates, shortcodes and global media files.
|
|||
|
||||
The `/utils/` directory is for JavaScript source code and files unrelated to
|
||||
Hugo used in the website.
|
||||
|
||||
<!-- vale Crossplane.Spelling = NO -->
|
||||
The `/themes/geekboot/assets` folder contains all (S)CSS and compiled JavaScript
|
||||
for the website.
|
||||
|
||||
<!-- vale Crossplane.Spelling = YES -->
|
||||
## CSS
|
||||
Crossplane documentation uses [Bootstrap
|
||||
5.2](https://getbootstrap.com/docs/5.2/getting-started/introduction/).
|
||||
|
@ -91,13 +91,12 @@ has bundled, minified and compressed the JavaScript.
|
|||
The source JavaScript is in `/utils/webpack/src/js` and
|
||||
requires [Webpack](https://webpack.js.org/) to bundle and optimize the code.
|
||||
|
||||
* `colorMode.js` provides the ability to change the light/dark mode color theme.
|
||||
* `colorMode.js` provides the ability to change the light and dark mode color theme.
|
||||
* `tabDeepAnchor.js` rewrites anchor links inside tabs to open a tab and present
|
||||
the anchor.
|
||||
* `globalScripts.js` is the point of entry for Webpack to determine all
|
||||
dependencies. This bundles [instant.page](https://instant.page/) and
|
||||
[Bootstrap's
|
||||
JavaScript](https://getbootstrap.com/docs/5.2/getting-started/javascript/).
|
||||
[Bootstrap's JavaScript](https://getbootstrap.com/docs/5.2/getting-started/javascript/).
|
||||
|
||||
### Bootstrap JavaScript builder
|
||||
The entire [Bootstrap JavaScript
|
||||
|
|
|
@ -8,7 +8,7 @@ hideFromLanding: true
|
|||
Crossplane relies on [Vale](https://github.com/errata-ai/vale) to enforce the style guide.
|
||||
|
||||
Crossplane's Vale style definitions are in the
|
||||
[utils/vale](https://github.com/crossplane/docs/tree/master/utils/vale)
|
||||
[`utils/vale`](https://github.com/crossplane/docs/tree/master/utils/vale)
|
||||
directory.
|
||||
|
||||
{{< hint "important" >}}
|
||||
|
@ -21,9 +21,9 @@ content. The community approves PRs with Vale errors in unmodified document sect
|
|||
|
||||
Follow the directions on the Vale website to
|
||||
[install the Vale binary](https://vale.sh/docs/vale-cli/installation/).
|
||||
|
||||
<!-- vale off -->
|
||||
Crossplane CI uses [Vale v2.22.0](https://github.com/errata-ai/vale/releases/tag/v2.22.0) or later.
|
||||
|
||||
<!-- vale on -->
|
||||
## Run Vale
|
||||
|
||||
Run Vale on all documentation from the command-line with
|
||||
|
@ -62,6 +62,27 @@ Crossplane maintainers consider Vale warnings the same as errors.
|
|||
Error levels aren't changed to make Vale style maintenance easier.
|
||||
{{< /hint >}}
|
||||
|
||||
### Spelling errors and exceptions
|
||||
|
||||
Spelling exceptions are in `utils/vale/styles/Crossplane`.
|
||||
* `allowed-jargon.txt` - technical terms allowed in the docs
|
||||
* `brands.txt` - brand and product names
|
||||
* `crossplane-words.txt` - words specific to Crossplane
|
||||
* `provider-words.txt` - words related to Providers and Provider resources
|
||||
* `spelling-exceptions.txt` - English words that are incorrectly flagged as errors
|
||||
|
||||
If Vale considers a word incorrect add an
|
||||
exception to one of the text files along with your pull request.
|
||||
|
||||
<!-- vale off -->
|
||||
Because of how Vale parses words the following are errors:
|
||||
* Hugo shortcodes without a space between the quote and angle bracket.
|
||||
For example `{{</* expand "Reference Composition"*/>}}`
|
||||
* Markdown links containing a line break.
|
||||
* Hugo `{{</* ref */>}}` links containing a line break.
|
||||
* Markdown link styling outside of the square brackets.
|
||||
For example `_[error]_` is an error. Use `[_works_]` instead.
|
||||
<!-- vale on -->
|
||||
### Ignore Vale rules
|
||||
|
||||
Vale can turn off specific rules or all rules inside a doc.
|
||||
|
@ -74,6 +95,24 @@ After the ignored content turn the rules back on.
|
|||
Vale ignores rules not turned back on for the rest of the document.
|
||||
{{< /hint >}}
|
||||
|
||||
#### Sentence length
|
||||
|
||||
<!-- vale Google.WordList = NO -->
|
||||
Vale counts words in a link URL in the `gitlab.SentenceLength` check.
|
||||
<!-- vale Google.WordList = YES -->
|
||||
|
||||
Aim for 25 to 30 word sentences. If a URL triggers a Vale error wrap the sentence
|
||||
in a rule disabling the rule.
|
||||
|
||||
```html
|
||||
<!-- vale gitlab.SentenceLength = NO -->
|
||||
The XRD `version` is like the
|
||||
[API versioning used by Kubernetes](https://kubernetes.io/docs/reference/using-api/#api-versioning).
|
||||
The version shows how mature or stable the API is and increments when changing,
|
||||
adding or removing fields in the API.
|
||||
<!-- vale gitlab.SentenceLength = YES -->
|
||||
```
|
||||
|
||||
### Ignore all rules
|
||||
|
||||
Use `<!-- vale off -->` to ignore all Vale rules and `<!-- vale on -->` to turn
|
||||
|
|
|
@ -133,7 +133,7 @@ spec:
|
|||
```
|
||||
{{</expand >}}
|
||||
|
||||
{{<expand "Reference CompositeResourceDefinition">}}
|
||||
{{<expand "Reference CompositeResourceDefinition" >}}
|
||||
|
||||
```yaml
|
||||
apiVersion: apiextensions.crossplane.io/v1
|
||||
|
|
|
@ -185,7 +185,7 @@ The
|
|||
object defines the name of the Kubernetes secret object where Crossplane saves
|
||||
the connection details.
|
||||
|
||||
{{<hint "note">}}
|
||||
{{<hint "note" >}}
|
||||
The Crossplane creates the secret object in the same namespace as the Claim.
|
||||
{{< /hint >}}
|
||||
|
||||
|
|
|
@ -153,10 +153,12 @@ spec:
|
|||
|
||||
### XRD versions
|
||||
|
||||
<!-- vale gitlab.SentenceLength = NO -->
|
||||
The XRD `version` is like the
|
||||
[API versioning used by Kubernetes](https://kubernetes.io/docs/reference/using-api/#api-versioning).
|
||||
The version shows how mature or stable the API is and increments when changing,
|
||||
adding or removing fields in the API.
|
||||
<!-- vale gitlab.SentenceLength = YES -->
|
||||
|
||||
Crossplane doesn't require specific versions or a specific version naming
|
||||
convention, but following
|
||||
|
@ -180,7 +182,7 @@ required or optional.
|
|||
|
||||
{{<hint "note" >}}
|
||||
All `schemas` follow the Kubernetes custom resource definition
|
||||
[Open APIv3 structural schema](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#specifying-a-structural-schema).
|
||||
[OpenAPIv3 structural schema](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#specifying-a-structural-schema).
|
||||
{{< /hint >}}
|
||||
|
||||
Each
|
||||
|
@ -414,8 +416,7 @@ version can be `referenceable`.
|
|||
|
||||
{{< hint "note" >}}
|
||||
Changing which version is `referenceable:true` requires [updating the
|
||||
`compositeTypeRef.apiVersion`]({{<ref
|
||||
"./compositions#enabling-composite-resources" >}})
|
||||
`compositeTypeRef.apiVersion`]({{<ref "./compositions#enabling-composite-resources" >}})
|
||||
of any Compositions referencing that XRD.
|
||||
{{< /hint >}}
|
||||
|
||||
|
@ -432,10 +433,14 @@ webhooks](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/cu
|
|||
New versions may define new optional parameters, but new required fields are
|
||||
a "breaking change."
|
||||
|
||||
<!-- vale Crossplane.Spelling = NO -->
|
||||
<!-- ignore to allow for CRDs -->
|
||||
<!-- don't add to the spelling exceptions to catch when it's used instead of XRD -->
|
||||
Crossplane XRDs use Kubernetes custom resource definitions for versioning.
|
||||
Read the Kubernetes documentation on [versions in
|
||||
CustomResourceDefinitions](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/)
|
||||
Read the Kubernetes documentation on
|
||||
[versions in CustomResourceDefinitions](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/)
|
||||
for more background on versions and breaking changes.
|
||||
<!-- vale Crossplane.Spelling = YES -->
|
||||
|
||||
Crossplane recommends implementing breaking schema changes as brand new XRDs.
|
||||
{{< /hint >}}
|
||||
|
@ -623,9 +628,9 @@ knowledge base article]({{<ref "/knowledge-base/guides/connection-details">}}).
|
|||
### Set composite resource defaults
|
||||
XRDs can set default parameters for composite resources and Claims.
|
||||
|
||||
<!-- vale Google.Headings = NO -->
|
||||
<!-- vale off -->
|
||||
#### defaultCompositeDeletePolicy
|
||||
<!-- vale Google.Headings = YES -->
|
||||
<!-- vale on -->
|
||||
The `defaultCompositeDeletePolicy` defines the deletion policy for composite
|
||||
resources and claims.
|
||||
|
||||
|
@ -658,9 +663,9 @@ spec:
|
|||
# Removed for brevity
|
||||
```
|
||||
|
||||
<!-- vale Google.Headings = NO -->
|
||||
<!-- vale off -->
|
||||
#### defaultCompositionRef
|
||||
<!-- vale Google.Headings = YES -->
|
||||
<!-- vale on -->
|
||||
It's possible for multiple [Compositions]({{<ref "./compositions">}}) to
|
||||
reference the same XRD. If more than one Composition references the same XRD,
|
||||
the composite resource or Claim must select which Composition to use.
|
||||
|
@ -687,9 +692,9 @@ spec:
|
|||
# Removed for brevity
|
||||
```
|
||||
|
||||
<!-- vale Google.Headings = NO -->
|
||||
<!-- vale off -->
|
||||
#### defaultCompositionUpdatePolicy
|
||||
<!-- vale Google.Headings = YES -->
|
||||
<!-- vale on -->
|
||||
|
||||
Changes to a Composition generate a new Composition revision. By default all
|
||||
composite resources and Claims use the updated Composition revision.
|
||||
|
@ -717,9 +722,9 @@ spec:
|
|||
# Removed for brevity
|
||||
```
|
||||
|
||||
<!-- vale Google.Headings = NO -->
|
||||
<!-- vale off -->
|
||||
#### enforcedCompositionRef
|
||||
<!-- vale Google.Headings = YES -->
|
||||
<!-- vale on -->
|
||||
To require all composite resources or Claims to use a specific Composition use
|
||||
the `enforcedCompositionRef` setting in the XRD.
|
||||
|
||||
|
@ -783,9 +788,9 @@ Status:
|
|||
# Removed for brevity
|
||||
```
|
||||
|
||||
<!-- vale Google.Headings = NO -->
|
||||
<!-- vale off -->
|
||||
#### WatchingCompositeResource
|
||||
<!-- vale Google.Headings = YES -->
|
||||
<!-- vale on -->
|
||||
`Reason: WatchingCompositeResource` indicates Crossplane defined the new
|
||||
Kubernetes custom resource definitions related to the composite resource and is
|
||||
watching for the creation of new composite resources.
|
||||
|
@ -796,9 +801,9 @@ Status: True
|
|||
Reason: WatchingCompositeResource
|
||||
```
|
||||
|
||||
<!-- vale Google.Headings = NO -->
|
||||
<!-- vale off -->
|
||||
#### TerminatingCompositeResource
|
||||
<!-- vale Google.Headings = YES -->
|
||||
<!-- vale on -->
|
||||
`Reason: TerminatingCompositeResource` indicates Crossplane is deleting the
|
||||
custom resource definitions related to the composite resource and is
|
||||
terminating the composite resource controller.
|
||||
|
@ -809,9 +814,9 @@ Status: False
|
|||
Reason: TerminatingCompositeResource
|
||||
```
|
||||
|
||||
<!-- vale Google.Headings = NO -->
|
||||
<!-- vale off -->
|
||||
#### WatchingCompositeResourceClaim
|
||||
<!-- vale Google.Headings = YES -->
|
||||
<!-- vale on -->
|
||||
`Reason: WatchingCompositeResourceClaim` indicates Crossplane defined the new
|
||||
Kubernetes custom resource definitions related to the offered Claims and is
|
||||
watching for the creation of new Claims.
|
||||
|
@ -822,9 +827,9 @@ Status: True
|
|||
Reason: WatchingCompositeResourceClaim
|
||||
```
|
||||
|
||||
<!-- vale Google.Headings = NO -->
|
||||
<!-- vale off -->
|
||||
#### TerminatingCompositeResourceClaim
|
||||
<!-- vale Google.Headings = YES -->
|
||||
<!-- vale on -->
|
||||
`Reason: TerminatingCompositeResourceClaim` indicates Crossplane is deleting the
|
||||
custom resource definitions related to the offered Claims and is
|
||||
terminating the Claims controller.
|
||||
|
|
|
@ -92,9 +92,11 @@ By default, managed resources created by a composite resource have the name of
|
|||
the composite resource, followed by a random suffix.
|
||||
|
||||
<!-- vale Google.FirstPerson = NO -->
|
||||
<!-- vale Crossplane.Spelling = NO -->
|
||||
For example, a composite resource named "my-composite-resource" creates external
|
||||
resources named "my-composite-resource-fqvkw."
|
||||
<!-- vale Google.FirstPerson = YES -->
|
||||
<!-- vale Crossplane.Spelling = YES -->
|
||||
|
||||
Resource names can be deterministic by applying an
|
||||
{{<hover label="annotation" line="5">}}annotation{{</hover>}} to the composite
|
||||
|
|
|
@ -61,8 +61,8 @@ Read more about Composite Resources in the
|
|||
{{< /hint >}}
|
||||
|
||||
|
||||
For example, a Composition can define a template to create a VM and an
|
||||
associated storage bucket at the same time.
|
||||
For example, a Composition can define a template to create a virtual machine
|
||||
and an associated storage bucket at the same time.
|
||||
|
||||
The {{<hover label="resources" line="4">}}resources{{</hover>}} field lists the
|
||||
individual resources with a
|
||||
|
@ -797,7 +797,7 @@ the
|
|||
| --- | --- |
|
||||
| {{<hover label="conDeet" line="16">}}fromConnectionSecretKey{{</hover>}} | Create a secret key matching the key of a secret generated by the resource. |
|
||||
| {{<hover label="conDeet" line="18">}}fromFieldPath{{</hover>}} | Create a secret key matching a field path of the resource. |
|
||||
| {{<hover label="conDeet" line="20">}}value{{</hover>}} | Create a secret key with a pre-defined value. |
|
||||
| {{<hover label="conDeet" line="20">}}value{{</hover>}} | Create a secret key with a predefined value. |
|
||||
{{< /table >}}
|
||||
|
||||
{{<hint "note">}}
|
||||
|
|
|
@ -231,8 +231,8 @@ The `ObserveOnly` policy can also place existing resources under the control of
|
|||
Crossplane.
|
||||
|
||||
{{< hint "tip" >}}
|
||||
Read the [Import Existing Resources]({{<ref
|
||||
"/knowledge-base/guides/import-existing-resources" >}}) guide for more
|
||||
Read the [Import Existing Resources]({{<ref "/knowledge-base/guides/import-existing-resources" >}})
|
||||
guide for more
|
||||
information on using the `managementPolicy` to import existing resources.
|
||||
{{< /hint >}}
|
||||
|
||||
|
@ -290,10 +290,11 @@ same Provider.
|
|||
### providerRef
|
||||
<!-- vale on -->
|
||||
|
||||
<!-- vale Crossplane.Spelling = NO -->
|
||||
Crossplane deprecated the `providerRef` field in `crossplane-runtime`
|
||||
[v0.10.0](https://github.com/crossplane/crossplane-runtime/releases/tag/v0.10.0).
|
||||
Managed resources using `providerRef`must use [`providerConfigRef`](#providerconfigref).
|
||||
|
||||
<!-- vale Crossplane.Spelling = YES -->
|
||||
|
||||
<!-- vale off -->
|
||||
### writeConnectionSecretToRef
|
||||
|
@ -306,8 +307,7 @@ Crossplane stores these details in a Kubernetes Secret object specified by the
|
|||
`writeConnectionSecretToRef` values.
|
||||
|
||||
For example, when creating an AWS RDS database instance with the Crossplane
|
||||
[community AWS
|
||||
provider](https://marketplace.upbound.io/providers/crossplane-contrib/provider-aws/v0.40.0)
|
||||
[community AWS provider](https://marketplace.upbound.io/providers/crossplane-contrib/provider-aws/v0.40.0)
|
||||
generates an endpoint, password, port and username data. The Provider saves
|
||||
these variables in the Kubernetes secret
|
||||
{{<hover label="secretname" line="9" >}}rds-secret{{</hover>}}, referenced by
|
||||
|
|
|
@ -414,7 +414,7 @@ spec:
|
|||
```
|
||||
{{< /expand >}}
|
||||
|
||||
{{< expand "Reference EnvironmentConfig">}}
|
||||
{{< expand "Reference EnvironmentConfig" >}}
|
||||
```yaml {copy-lines="all"}
|
||||
apiVersion: apiextensions.crossplane.io/v1alpha1
|
||||
kind: EnvironmentConfig
|
||||
|
@ -719,8 +719,8 @@ Status:
|
|||
{{<hint "important" >}}
|
||||
EnvironmentConfigs are an alpha feature. They aren't enabled by default.
|
||||
|
||||
For more information about using an EnvironmentConfig, read the [Environment
|
||||
Configs]({{<ref "./environment-configs">}}) documentation.
|
||||
For more information about using an EnvironmentConfig, read the
|
||||
[EnvironmentConfigs]({{<ref "./environment-configs">}}) documentation.
|
||||
{{< /hint >}}
|
||||
|
||||
The
|
||||
|
@ -776,8 +776,8 @@ Spec:
|
|||
{{<hint "important" >}}
|
||||
EnvironmentConfigs are an alpha feature. They aren't enabled by default.
|
||||
|
||||
For more information about using an EnvironmentConfig, read the [Environment
|
||||
Configs]({{<ref "./environment-configs">}}) documentation.
|
||||
For more information about using an EnvironmentConfig, read the
|
||||
[EnvironmentConfigs]({{<ref "./environment-configs">}}) documentation.
|
||||
{{< /hint >}}
|
||||
|
||||
The
|
||||
|
@ -839,8 +839,8 @@ read from the `atProvider` or `Status` fields.
|
|||
{{<hint "important" >}}
|
||||
EnvironmentConfigs are an alpha feature. They aren't enabled by default.
|
||||
|
||||
For more information about using an EnvironmentConfig, read the [Environment
|
||||
Configs]({{<ref "./environment-configs">}}) documentation.
|
||||
For more information about using an EnvironmentConfig, read the
|
||||
[EnvironmentConfigs]({{<ref "./environment-configs">}}) documentation.
|
||||
{{< /hint >}}
|
||||
|
||||
The
|
||||
|
@ -923,8 +923,8 @@ Annotations: EnvironmentPatch: value1-value2
|
|||
{{<hint "important" >}}
|
||||
EnvironmentConfigs are an alpha feature. They aren't enabled by default.
|
||||
|
||||
For more information about using an EnvironmentConfig, read the [Environment
|
||||
Configs]({{<ref "./environment-configs">}}) documentation.
|
||||
For more information about using an EnvironmentConfig, read the
|
||||
[EnvironmentConfigs]({{<ref "./environment-configs">}}) documentation.
|
||||
{{< /hint >}}
|
||||
|
||||
The
|
||||
|
|
|
@ -76,7 +76,7 @@ status of deployed resources and correcting any "drift." After checking a
|
|||
resource Crossplane waits some time and checks again.
|
||||
|
||||
Crossplane monitors resources through a Kubernetes
|
||||
_[watch](https://kubernetes.io/docs/reference/using-api/api-concepts/#efficient-detection-of-changes)_
|
||||
[_watch_](https://kubernetes.io/docs/reference/using-api/api-concepts/#efficient-detection-of-changes)
|
||||
or through periodic polling. Some resources may be both watched and polled.
|
||||
|
||||
Crossplane requests that the API server notifies Crossplane of any changes on
|
||||
|
@ -215,14 +215,14 @@ permissions over cluster wide Crossplane resources.
|
|||
<!-- allow "admin" -->
|
||||
##### crossplane-admin
|
||||
<!-- vale Google.WordList = YES -->
|
||||
|
||||
<!-- vale Crossplane.Spelling = NO -->
|
||||
The `crossplane-admin` ClusterRole has the following permissions:
|
||||
* full access to all Crossplane types
|
||||
* full access to all secrets and namespaces (even those unrelated to Crossplane)
|
||||
* read-only access to all cluster RBAC roles, CustomResourceDefinitions and
|
||||
events
|
||||
* ability to bind RBAC roles to other entities.
|
||||
|
||||
<!-- vale Crossplane.Spelling = YES -->
|
||||
View the full RBAC policy with
|
||||
|
||||
```shell
|
||||
|
|
|
@ -312,7 +312,7 @@ the Provider's pod. The
|
|||
[Crossplane ControllerConfig schema](https://doc.crds.dev/github.com/crossplane/crossplane/pkg.crossplane.io/ControllerConfig/v1alpha1)
|
||||
defines the supported set of ControllerConfig settings.
|
||||
|
||||
The most common use-case for ControllerConfigs are providing `args` to a
|
||||
The most common use case for ControllerConfigs are providing `args` to a
|
||||
Provider's pod enabling optional services. For example, enabling
|
||||
[external secret stores](https://docs.crossplane.io/knowledge-base/integrations/vault-as-secret-store/#enable-external-secret-stores-in-the-provider)
|
||||
for a Provider.
|
||||
|
|
|
@ -4,7 +4,7 @@ weight: 4
|
|||
description: An introduction to Crossplane and Crossplane quickstart guides.
|
||||
---
|
||||
|
||||
{{< img src="/media/banner.png" alt="Crossplane Popsicle Truck" size="large" >}}
|
||||
{{<img src="/media/banner.png" alt="Crossplane Popsicle Truck" size="large" >}}
|
||||
|
||||
## Hands-On
|
||||
Want a hands-on example? Follow a Crossplane Quickstart for your cloud provider.
|
||||
|
|
|
@ -7,14 +7,16 @@ Crossplane connects your Kubernetes cluster to external,
|
|||
non-Kubernetes resources, and allows platform teams to build custom Kubernetes
|
||||
APIs to consume those resources.
|
||||
|
||||
<!-- vale gitlab.SentenceLength = NO -->
|
||||
Crossplane creates Kubernetes
|
||||
[CustomResourceDefinitions](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/)
|
||||
[Custom Resource Definitions](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/)
|
||||
(`CRDs`) to represent the external resources as native
|
||||
[Kubernetes objects](https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/).
|
||||
As native Kubernetes objects, you can use standard commands like `kubectl create`
|
||||
and `kubectl describe`. The full
|
||||
[Kubernetes API](https://kubernetes.io/docs/reference/using-api/) is available
|
||||
for every Crossplane resource.
|
||||
<!-- vale gitlab.SentenceLength = YES -->
|
||||
|
||||
Crossplane also acts as a
|
||||
[Kubernetes Controller](https://kubernetes.io/docs/concepts/architecture/controller/)
|
||||
|
@ -37,7 +39,7 @@ This table provides a summary of Crossplane components and their roles.
|
|||
{{< table "table table-hover table-sm">}}
|
||||
| Component | Abbreviation | Scope | Summary |
|
||||
| --- | --- | --- | ---- |
|
||||
| [Provider]({{<ref "#providers">}}) | | cluster | Creates new Kubernetes CustomResourceDefinitions for an external service. |
|
||||
| [Provider]({{<ref "#providers">}}) | | cluster | Creates new Kubernetes Custom Resource Definitions for an external service. |
|
||||
| [ProviderConfig]({{<ref "#provider-configurations">}}) | `PC` | cluster | Applies settings for a _Provider_. |
|
||||
| [Managed Resource]({{<ref "#managed-resources">}}) | `MR` | cluster | A Provider resource created and managed by Crossplane inside the Kubernetes cluster. |
|
||||
| [Composition]({{<ref "#compositions">}}) | | cluster | A template for creating multiple _managed resources_ at once. |
|
||||
|
@ -48,7 +50,7 @@ This table provides a summary of Crossplane components and their roles.
|
|||
|
||||
## The Crossplane Pod
|
||||
When installed in a Kubernetes cluster Crossplane creates an initial set of
|
||||
CustomResourceDefinitions (`CRDs`) of the core Crossplane components.
|
||||
Custom Resource Definitions (`CRDs`) of the core Crossplane components.
|
||||
|
||||
{{< expand "View the initial Crossplane CRDs" >}}
|
||||
After installing Crossplane use `kubectl get crds` to view the Crossplane
|
||||
|
@ -91,7 +93,7 @@ compute instances or S3 storage buckets.
|
|||
|
||||
The Provider defines the Kubernetes API definition for the external resource.
|
||||
For example, the
|
||||
[Upbound Provider-AWS](https://marketplace.upbound.io/providers/upbound/provider-aws/)
|
||||
[Upbound Provider AWS](https://marketplace.upbound.io/providers/upbound/provider-aws/)
|
||||
defines a
|
||||
[`bucket`](https://marketplace.upbound.io/providers/upbound/provider-aws/v0.25.0/resources/s3.aws.upbound.io/Bucket/v1beta1)
|
||||
resource for creating and managing AWS S3 storage buckets.
|
||||
|
@ -177,7 +179,7 @@ resources. The _Composition_ is only a template for a collection of _managed
|
|||
resources_ and their settings. A _Composite Resource_ creates the specific resources.
|
||||
|
||||
{{< hint "note" >}}
|
||||
The _[Composite Resources]({{<ref "#composite-resources">}})_ section discusses
|
||||
The [_Composite Resources_]({{<ref "#composite-resources">}})_ section discusses
|
||||
_Composite Resources_.
|
||||
{{< /hint >}}
|
||||
|
||||
|
@ -260,7 +262,7 @@ _Composite Resource Definitions_ (`XRDs`) create custom Kubernetes APIs used by
|
|||
_Claims_ and _Composite Resources_.
|
||||
|
||||
{{< hint "note" >}}
|
||||
The _[Claims]({{<ref "#claims">}})_ section discusses
|
||||
The [_Claims_]({{<ref "#claims">}}) section discusses
|
||||
_Claims_.
|
||||
{{< /hint >}}
|
||||
|
||||
|
@ -402,7 +404,7 @@ while _Composite Resources_ are cluster scoped.
|
|||
**Why does namespace scope matter?**
|
||||
Having namespace scoped _Claims_ allows multiple teams, using unique namespaces,
|
||||
to create the same types of resources, independent of each other. The compute
|
||||
resources of team-A are unique to the compute resources of team-B.
|
||||
resources of team A are unique to the compute resources of team B.
|
||||
|
||||
Directly creating _Composite Resources_ requires cluster-wide permissions,
|
||||
shared with all teams.
|
||||
|
|
|
@ -5,17 +5,19 @@ tocHidden: true
|
|||
---
|
||||
|
||||
{{< hint "important" >}}
|
||||
This guide is part 2 of a series. Follow **[part 1]({{<ref "provider-aws" >}})**
|
||||
This guide is part 2 of a series. Follow [**part 1**]({{<ref "provider-aws" >}})**
|
||||
to install Crossplane and connect your Kubernetes cluster to AWS.
|
||||
|
||||
**[Part 3]({{<ref "provider-aws-part-3">}})** covers patching _composite resources_
|
||||
[**Part 3**]({{<ref "provider-aws-part-3">}})** covers patching _composite resources_
|
||||
and using Crossplane _packages_.
|
||||
{{< /hint >}}
|
||||
|
||||
<!-- vale gitlab.SentenceLength = NO -->
|
||||
This section creates a _[Composition](#create-a-composition)_,
|
||||
_[Custom Resource Definition](#define-a-composite-resource)_ and a
|
||||
_[Composite Resource Definition](#define-a-composite-resource)_ and a
|
||||
_[Claim](#create-a-claim)_
|
||||
to create a custom Kubernetes API to create AWS resources.
|
||||
<!-- vale gitlab.SentenceLength = YES -->
|
||||
|
||||
## Prerequisites
|
||||
* Complete [quickstart part 1]({{<ref "provider-aws" >}}) connecting Kubernetes
|
||||
|
@ -922,7 +924,7 @@ the API settings when creating resources.
|
|||
patches_ and making all this configuration portable in Crossplane _packages_.
|
||||
|
||||
## Next steps
|
||||
* **[Continue to part 3]({{< ref "provider-aws-part-3">}})** to create a learn
|
||||
* [**Continue to part 3**]({{< ref "provider-aws-part-3">}}) to create a learn
|
||||
about _patching_ resources and creating Crossplane _packages_.
|
||||
* Explore AWS resources that Crossplane can configure in the [Provider CRD reference](https://marketplace.upbound.io/providers/upbound/provider-family-aws/).
|
||||
* Join the [Crossplane Slack](https://slack.crossplane.io/) and connect with Crossplane users and contributors.
|
|
@ -7,10 +7,10 @@ tocHidden: true
|
|||
{{< hint "important" >}}
|
||||
This guide is part 3 of a series.
|
||||
|
||||
Follow **[part 1]({{<ref "provider-aws" >}})**
|
||||
Follow [**part 1**]({{<ref "provider-aws" >}})
|
||||
to install Crossplane and connect your Kubernetes cluster to AWS.
|
||||
|
||||
Follow **[part 2]({{<ref "provider-aws-part-2" >}})** to create a _composition_,
|
||||
Follow [**part 2**]({{<ref "provider-aws-part-2" >}}) to create a _composition_,
|
||||
_custom resource definition_ and a _claim_.
|
||||
{{< /hint >}}
|
||||
|
||||
|
@ -20,8 +20,8 @@ use the custom API and apply their options. Part 2 didn't show how the options
|
|||
set in a _claim_ change or get applied the associated _composite resources_.
|
||||
|
||||
## Prerequisites
|
||||
* Complete quickstart [part 1]({{<ref "provider-aws" >}}) and [Part 2]({{<ref
|
||||
"provider-aws-part-2" >}}) to install Crossplane and the quickstart
|
||||
* Complete quickstart [part 1]({{<ref "provider-aws" >}}) and
|
||||
[Part 2]({{<ref "provider-aws-part-2" >}}) to install Crossplane and the quickstart
|
||||
configurations.
|
||||
|
||||
{{<expand "Skip parts 1 and 2 and just get started" >}}
|
||||
|
|
|
@ -11,16 +11,16 @@ authenticate to AWS and creating a _Managed Resource_ in AWS directly from your
|
|||
Kubernetes cluster. This shows Crossplane can communicate with AWS.
|
||||
* [Part 2]({{< ref "provider-aws-part-2" >}}) creates a
|
||||
_Composite Resource Definition_ (XRD), _Composite Resource_ (XR) and a _Claim_
|
||||
(XC) to show how to create and use custom APIs.
|
||||
(XRC) to show how to create and use custom APIs.
|
||||
* [Part 3]({{< ref "provider-aws-part-3" >}}) demonstrates how to patch
|
||||
_Compositions_ with values used in a _Claim_ and how to build a Crossplane
|
||||
_Package_ to make a Crossplane platform portable and reusable.
|
||||
_Package_.
|
||||
|
||||
## Prerequisites
|
||||
This quickstart requires:
|
||||
* a Kubernetes cluster with at least 6 GB of RAM
|
||||
* permissions to create pods and secrets in the Kubernetes cluster
|
||||
* [Helm](https://helm.sh/) version `v3.2.0` or later
|
||||
* [Helm](https://helm.sh/) version v3.2.0 or later
|
||||
* an AWS account with permissions to create an S3 storage bucket
|
||||
* AWS [access keys](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-creds)
|
||||
|
||||
|
@ -1207,6 +1207,6 @@ bucket.s3.aws.upbound.io "crossplane-bucket-45eed4ae0" deleted
|
|||
```
|
||||
|
||||
## Next steps
|
||||
* **[Continue to part 2]({{< ref "provider-aws-part-2">}})** to create a Crossplane _Composite Resource_ and _Claim_.
|
||||
* [**Continue to part 2**]({{< ref "provider-aws-part-2">}})** to create a Crossplane _Composite Resource_ and _Claim_.
|
||||
* Explore AWS resources that Crossplane can configure in the [Provider CRD reference](https://marketplace.upbound.io/providers/upbound/provider-family-aws/).
|
||||
* Join the [Crossplane Slack](https://slack.crossplane.io/) and connect with Crossplane users and contributors.
|
|
@ -5,10 +5,10 @@ tocHidden: true
|
|||
---
|
||||
|
||||
{{< hint "important" >}}
|
||||
This guide is part 2 of a series. Follow **[part 1]({{<ref "provider-azure" >}})**
|
||||
This guide is part 2 of a series. Follow [**part 1**]({{<ref "provider-azure" >}})
|
||||
to install Crossplane and connect your Kubernetes cluster to Azure.
|
||||
|
||||
**[Part 3]({{<ref "provider-azure-part-3">}})** covers patching _CompositeResources_
|
||||
[**Part 3**]({{<ref "provider-azure-part-3">}})** covers patching _composite resources_
|
||||
and using Crossplane _Packages_.
|
||||
{{< /hint >}}
|
||||
|
||||
|
@ -521,7 +521,7 @@ inside the `spec` of the new Kubernetes object.
|
|||
|
||||
{{< hint "note" >}}
|
||||
_XRDs_ follow the Kubernetes
|
||||
[_CustomResourceDefinition_ rules for schemas](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#specifying-a-structural-schema).
|
||||
[_Custom Resource Definition_ rules for schemas](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#specifying-a-structural-schema).
|
||||
{{</hint >}}
|
||||
|
||||
Place the API
|
||||
|
@ -1053,7 +1053,7 @@ the API settings when creating resources.
|
|||
patches_ and making all this configuration portable in Crossplane _Packages_.
|
||||
|
||||
## Next steps
|
||||
* **[Continue to part 3]({{< ref "provider-azure-part-3">}})** to learn
|
||||
* [**Continue to part 3**]({{< ref "provider-azure-part-3">}}) to learn
|
||||
about _patching_ resources and creating Crossplane _Packages_.
|
||||
* Explore Azure resources that Crossplane can configure in the
|
||||
[Provider CRD reference](https://marketplace.upbound.io/providers/upbound/provider-family-azure/).
|
||||
|
|
|
@ -7,10 +7,10 @@ tocHidden: true
|
|||
{{< hint "important" >}}
|
||||
This guide is part 3 of a series.
|
||||
|
||||
Follow **[part 1]({{<ref "provider-azure" >}})**
|
||||
Follow [**part 1**]({{<ref "provider-azure" >}})
|
||||
to install Crossplane and connect your Kubernetes cluster to Azure.
|
||||
|
||||
Follow **[part 2]({{<ref "provider-azure-part-2" >}})** to create a _composition_,
|
||||
Follow [**part 2**]({{<ref "provider-azure-part-2" >}}) to create a _composition_,
|
||||
_custom resource definition_ and a _claim_.
|
||||
{{< /hint >}}
|
||||
|
||||
|
@ -21,8 +21,8 @@ Part 2 didn't show how the options set in a _Claim_ change or get
|
|||
applied to the associated _composite resources_.
|
||||
|
||||
## Prerequisites
|
||||
* Complete quickstart [part 1]({{<ref "provider-azure" >}}) and [part 2]({{<ref
|
||||
"provider-azure-part-2" >}}) to install Crossplane and the quickstart
|
||||
* Complete quickstart [part 1]({{<ref "provider-azure" >}}) and
|
||||
[part 2]({{<ref "provider-azure-part-2" >}}) to install Crossplane and the quickstart
|
||||
configurations.
|
||||
|
||||
{{<expand "Skip parts 1 and 2 and just get started" >}}
|
||||
|
@ -38,7 +38,7 @@ crossplane-stable/crossplane \
|
|||
--create-namespace
|
||||
```
|
||||
|
||||
2. When the Crossplane pods finish installing and are ready, apply the Azure
|
||||
1. When the Crossplane pods finish installing and are ready, apply the Azure
|
||||
Provider
|
||||
|
||||
```yaml {label="provider",copy-lines="all"}
|
||||
|
@ -510,7 +510,7 @@ kubectl delete virtualmachine claimed-eu-virtualmachine -n test
|
|||
## Create a Crossplane configuration package
|
||||
|
||||
Crossplane _configuration packages_ allow users to combine their
|
||||
_CustomResourceDefinition_ and _Composition_ files into a single OCI image.
|
||||
_Custom Resource Definition_ and _Composition_ files into a single OCI image.
|
||||
|
||||
{{< hint "note" >}}
|
||||
The [Open Container Initiative](https://opencontainers.org/faq/)
|
||||
|
|
|
@ -16,13 +16,13 @@ _Composite Resource Definition_ (XRD), _Composite Resource_ (XR) and a _Claim_
|
|||
(XRC) to show how to create and use custom APIs.
|
||||
* [Part 3]({{< ref "provider-azure-part-3" >}}) demonstrates how to patch
|
||||
_Compositions_ with values used in a _Claim_ and how to build a Crossplane
|
||||
_Package_ to make a Crossplane platform portable and reusable.
|
||||
_Package_.
|
||||
|
||||
## Prerequisites
|
||||
This quickstart requires:
|
||||
* a Kubernetes cluster with at least 6 GB of RAM
|
||||
* permissions to create pods and secrets in the Kubernetes cluster
|
||||
* [Helm](https://helm.sh/) version `v3.2.0` or later
|
||||
* [Helm](https://helm.sh/) version v3.2.0 or later
|
||||
* an Azure account with permissions to create an
|
||||
[Azure Virtual Machine](https://learn.microsoft.com/en-us/azure/virtual-machines/)
|
||||
and
|
||||
|
@ -1242,7 +1242,7 @@ virtualnetwork.network.azure.upbound.io "crossplane-quickstart-network" deleted
|
|||
```
|
||||
|
||||
## Next steps
|
||||
* **[Continue to part 2]({{< ref "provider-azure-part-2">}})** to create a
|
||||
* [**Continue to part 2**]({{< ref "provider-azure-part-2">}}) to create a
|
||||
Crossplane _Composite Resource_ and _Claim_.
|
||||
* Explore Azure resources that Crossplane can configure in the
|
||||
[Provider CRD reference](https://marketplace.upbound.io/providers/upbound/provider-family-azure/).
|
||||
|
|
|
@ -5,10 +5,10 @@ tocHidden: true
|
|||
---
|
||||
|
||||
{{< hint "important" >}}
|
||||
This guide is part 2 of a series. Follow **[part 1]({{<ref "provider-gcp" >}})**
|
||||
This guide is part 2 of a series. Follow [**part 1**]({{<ref "provider-gcp" >}})
|
||||
to install Crossplane and connect your Kubernetes cluster to GCP.
|
||||
|
||||
**[Part 3]({{<ref "provider-gcp-part-3">}})** covers patching
|
||||
[**Part 3**]({{<ref "provider-gcp-part-3">}})** covers patching
|
||||
_composite resources_ and using Crossplane _packages_.
|
||||
{{< /hint >}}
|
||||
|
||||
|
@ -960,7 +960,7 @@ _composition patches_ and making all this configuration portable in Crossplane
|
|||
_packages_.
|
||||
|
||||
## Next steps
|
||||
* **[Continue to part 3]({{< ref "provider-gcp-part-3">}})** to create a learn
|
||||
* [**Continue to part 3**]({{< ref "provider-gcp-part-3">}})** to create a learn
|
||||
about _patching_ resources and creating Crossplane _packages_.
|
||||
* Explore GCP resources that Crossplane can configure in the
|
||||
[Provider CRD reference](https://marketplace.upbound.io/providers/upbound/provider-family-gcp/).
|
||||
|
|
|
@ -7,10 +7,10 @@ tocHidden: true
|
|||
{{< hint "important" >}}
|
||||
This guide is part 3 of a series.
|
||||
|
||||
Follow **[part 1]({{<ref "provider-gcp" >}})**
|
||||
Follow [**part 1**]({{<ref "provider-gcp" >}})
|
||||
to install Crossplane and connect your Kubernetes cluster to GCP.
|
||||
|
||||
Follow **[part 2]({{<ref "provider-gcp-part-2" >}})** to create a _composition_,
|
||||
Follow [**part 2**]({{<ref "provider-gcp-part-2" >}})** to create a _composition_,
|
||||
_custom resource definition_ and a _claim_.
|
||||
{{< /hint >}}
|
||||
|
||||
|
@ -20,8 +20,8 @@ use the custom API and apply their options. Part 2 didn't show how the options
|
|||
set in a _claim_ change or get applied the associated _composite resources_.
|
||||
|
||||
## Prerequisites
|
||||
* Complete quickstart [part 1]({{<ref "provider-gcp" >}}) and [Part 2]({{<ref
|
||||
"provider-gcp-part-2" >}}) to install Crossplane and the quickstart
|
||||
* Complete quickstart [part 1]({{<ref "provider-gcp" >}}) and
|
||||
[Part 2]({{<ref "provider-gcp-part-2" >}}) to install Crossplane and the quickstart
|
||||
configurations.
|
||||
|
||||
{{<expand "Skip parts 1 and 2 and just get started" >}}
|
||||
|
|
|
@ -16,12 +16,12 @@ _Composite Resource Definition_ (XRD), _Composite Resource_ (XR) and a _Claim_
|
|||
(XRC) to show how to create and use custom APIs.
|
||||
* [Part 3]({{< ref "provider-gcp-part-3" >}}) demonstrates how to patch
|
||||
_Compositions_ with values used in a _Claim_ and how to build a Crossplane
|
||||
_Package_ to make a Crossplane platform portable and reusable.
|
||||
_Package_.
|
||||
## Prerequisites
|
||||
This quickstart requires:
|
||||
* a Kubernetes cluster with at least 6 GB of RAM
|
||||
* permissions to create pods and secrets in the Kubernetes cluster
|
||||
* [Helm](https://helm.sh/) version `v3.2.0` or later
|
||||
* [Helm](https://helm.sh/) version v3.2.0 or later
|
||||
* a GCP account with permissions to create a storage bucket
|
||||
* GCP [account keys](https://cloud.google.com/iam/docs/creating-managing-service-account-keys)
|
||||
* GCP [Project ID](https://support.google.com/googleapi/answer/7014113?hl=en)
|
||||
|
@ -1247,7 +1247,7 @@ bucket.storage.gcp.upbound.io "crossplane-bucket-8b7gw" deleted
|
|||
```
|
||||
|
||||
## Next steps
|
||||
* **[Continue to part 2]({{< ref "provider-gcp-part-2">}})** to create a
|
||||
* [**Continue to part 2**]({{< ref "provider-gcp-part-2">}}) to create a
|
||||
Crossplane _Composite Resource_ and _Claim_.
|
||||
* Explore GCP resources that can Crossplane can configure in the
|
||||
[Provider CRD reference](https://marketplace.upbound.io/providers/upbound/provider-family-gcp/).
|
||||
|
|
|
@ -42,7 +42,13 @@ Microsoft.Quotes = NO
|
|||
Microsoft.GeneralURL = NO
|
||||
|
||||
# ignore indivudal tokens
|
||||
TokenIgnores = ({{< img)
|
||||
# Ignore the markdown link to check the last word of the link: ](.
|
||||
# Ignore markdown image with alt: ![
|
||||
# ignore v#.##
|
||||
# ignore ##px
|
||||
TokenIgnores = (\(#.*\)),(\]\(),(http.*),({{<\s*\/?expand),(\!\[),(\d.*px)
|
||||
|
||||
# ignore whole tags:
|
||||
# Ignore hugo tags
|
||||
BlockIgnores = (\{\{<\s*\/?.*>\}\}),(\{\{\<\/\*.*\*\/\>\}\})
|
||||
|
||||
# ignore whole tags
|
||||
BlockIgnores = (\{\{\<\s*hover.*\>\}\})
|
||||
|
|
|
@ -8,6 +8,14 @@
|
|||
# For a list of all options, see https://errata-ai.gitbook.io/vale/getting-started/styles
|
||||
extends: spelling
|
||||
message: 'Spelling check: "%s"?'
|
||||
level: warning
|
||||
level: error
|
||||
custom: true
|
||||
ignore:
|
||||
- Crossplane/spelling-exceptions.txt
|
||||
- Crossplane/brands.txt
|
||||
- Crossplane/crossplane-words.txt
|
||||
- Crossplane/provider-words.txt
|
||||
- Crossplane/allowed-jargon.txt
|
||||
filters:
|
||||
- v\d\.\d\d
|
||||
- \/.*
|
|
@ -0,0 +1,55 @@
|
|||
API's
|
||||
APIs
|
||||
bool
|
||||
boolean
|
||||
booleans
|
||||
CUE
|
||||
Enum
|
||||
Env
|
||||
JSONPath
|
||||
kubeconfig
|
||||
kubectl
|
||||
minikube
|
||||
namespace
|
||||
namespaced
|
||||
namespaces
|
||||
proselint
|
||||
semver
|
||||
shortcode
|
||||
shortcodes
|
||||
ESS
|
||||
SLAs
|
||||
stdin
|
||||
stdout
|
||||
Subnet
|
||||
subnet
|
||||
subnets
|
||||
Substrings
|
||||
OCI
|
||||
syscall
|
||||
tolerations
|
||||
VM
|
||||
32-bit
|
||||
64-bit
|
||||
float64
|
||||
SHA-1
|
||||
SHA-256
|
||||
SHA-512
|
||||
base64
|
||||
RBAC
|
||||
ServiceAccounts
|
||||
ServiceAccount
|
||||
ClusterRole
|
||||
ClusterRoles
|
||||
key-pair
|
||||
CI
|
||||
command-line
|
||||
YAML
|
||||
CSS
|
||||
SCSS
|
||||
docs-specific
|
||||
CRD
|
||||
CLI
|
||||
kube-controller-manager
|
||||
kube-apiserver
|
||||
cluster-wide
|
|
@ -0,0 +1,27 @@
|
|||
Bootstrap
|
||||
Geekdocs
|
||||
Grammarly
|
||||
HashiCorp
|
||||
Kustomize
|
||||
Netlify
|
||||
OpenAPI
|
||||
OpenAPIv3
|
||||
PostgreSQL
|
||||
Upbound
|
||||
Upbound's
|
||||
Upjet
|
||||
Velero
|
||||
VSCode
|
||||
Webpack
|
||||
Zendesk
|
||||
write-good
|
||||
CNCF
|
||||
CC-BY
|
||||
Commonmark
|
||||
Goldmark
|
||||
PostCSS
|
||||
postcss-lightningcss
|
||||
PurgeCSS
|
||||
postcss-sort-media-queries
|
||||
NPM
|
||||
instant.page
|
|
@ -0,0 +1,52 @@
|
|||
clampMax
|
||||
clampMin
|
||||
CompositeResourceDefinition
|
||||
CompositeResourceDefinitions
|
||||
CRDs
|
||||
Crossplane
|
||||
Crossplane's
|
||||
EnvironmentConfig
|
||||
EnvironmentConfigs
|
||||
external-name
|
||||
finalizer
|
||||
finalizers
|
||||
ProviderConfig
|
||||
XCluster
|
||||
XNetwork
|
||||
xpkg
|
||||
XRD
|
||||
XRD's
|
||||
XRDs
|
||||
XRs
|
||||
XR
|
||||
XRC
|
||||
ControllerConfig
|
||||
ProviderConfigs
|
||||
StoreConfig
|
||||
PatchSet
|
||||
PatchSets
|
||||
FromCompositeFieldPath
|
||||
ToCompositeFieldPath
|
||||
CombineFromComposite
|
||||
CombineToComposite
|
||||
FromEnvironmentFieldPath
|
||||
ToEnvironmentFieldPath
|
||||
CombineFromEnvironment
|
||||
CombineToEnvironment
|
||||
TrimPrefix
|
||||
TrimSuffix
|
||||
fromFieldPath
|
||||
ControllerConfigs
|
||||
UnknownPackageRevisionHealth
|
||||
StoreConfigs
|
||||
crossplane-admin
|
||||
UnhealthyPackageRevision
|
||||
ActivePackageRevision
|
||||
crossplane-edit
|
||||
HealthyPackageRevision
|
||||
crossplane-view
|
||||
crossplane-browse
|
||||
InactivePackageRevision
|
||||
crossplane.yaml
|
||||
definition.yaml
|
||||
composition.yaml
|
|
@ -0,0 +1,16 @@
|
|||
Dataflow
|
||||
EC2
|
||||
EKS
|
||||
GCP's
|
||||
S3
|
||||
VPC
|
||||
GKE
|
||||
provider-aws-s3
|
||||
GCP
|
||||
provider-aws-iam
|
||||
DynmoDB
|
||||
Pub/Sub
|
||||
europe-central2
|
||||
us-central1
|
||||
eu-north-1
|
||||
us-east-2
|
|
@ -1,62 +1,39 @@
|
|||
API's
|
||||
APIs
|
||||
bool
|
||||
boolean
|
||||
booleans
|
||||
Bootstrap
|
||||
clampMax
|
||||
clampMin
|
||||
conformant
|
||||
CRDs
|
||||
Crossplane
|
||||
Crossplane's
|
||||
CUE
|
||||
Dataflow
|
||||
Datastore
|
||||
editCode
|
||||
Enum
|
||||
Env
|
||||
finalizer
|
||||
finalizers
|
||||
GCP's
|
||||
Geekdocs
|
||||
Grammarly
|
||||
HashiCorp
|
||||
JSONPath
|
||||
kubeconfig
|
||||
kubectl
|
||||
Kustomize
|
||||
minikube
|
||||
namespace
|
||||
namespaced
|
||||
namespaces
|
||||
Netlify
|
||||
PostgreSQL
|
||||
proselint
|
||||
semver
|
||||
shortcode
|
||||
shortcodes
|
||||
SLAs
|
||||
stdin
|
||||
stdout
|
||||
Subnet
|
||||
subnet
|
||||
subnets
|
||||
Substrings
|
||||
syscall
|
||||
tolerations
|
||||
cross-reference
|
||||
Cross-resource
|
||||
cross-resource
|
||||
per-object
|
||||
per-resource
|
||||
pre-existing
|
||||
pre-provisioned
|
||||
top-level
|
||||
untrusted
|
||||
Upbound
|
||||
Upbound's
|
||||
Upjet
|
||||
Velero
|
||||
VSCode
|
||||
Webpack
|
||||
XCluster
|
||||
XNetwork
|
||||
xpkg
|
||||
XRD
|
||||
XRD's
|
||||
XRDs
|
||||
XRs
|
||||
Zendesk
|
||||
UpperCamelCase
|
||||
UpperCamelCased
|
||||
in-memory
|
||||
non-empty
|
||||
resource-specific
|
||||
race-conditions
|
||||
user-defined
|
||||
poll-interval
|
||||
double-check
|
||||
double-checks
|
||||
read-only
|
||||
non-Kubernetes
|
||||
comma-seperated
|
||||
in-depth
|
||||
how-to
|
||||
version-specific
|
||||
step-by-step
|
||||
free-form
|
||||
left-hand
|
||||
right-hand
|
||||
call-outs
|
||||
/tab
|
||||
/tabs
|
||||
per-element
|
||||
run-time
|
||||
hands-on
|
||||
dry-run
|
||||
end-points
|
||||
multi-region
|
|
@ -138,7 +138,6 @@ tokens:
|
|||
- it was
|
||||
- magnitude
|
||||
- methodology
|
||||
- minimize
|
||||
- modify
|
||||
- monitor
|
||||
- necessitate
|
||||
|
|
Loading…
Reference in New Issue