Skip to content

Commit

Permalink
docs: Switched asterisk to (required)
Browse files Browse the repository at this point in the history
  • Loading branch information
dploeger committed Jan 17, 2023
1 parent 6ba8f31 commit e5cba5d
Show file tree
Hide file tree
Showing 9 changed files with 65 additions and 78 deletions.
124 changes: 55 additions & 69 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -375,16 +375,14 @@ Adds specified trusted certificate authorities into the container
* USE_certificates: Enable this feature
* DEBUG_certificates: Debug this feature
* Add a volume mount to the `volumes:` section of docker compose like this:
(...)
volumes:
- "<Path to directory with CA .pem files>:/certificates"

(...)
volumes:
- "<Path to directory with CA .pem files>:/certificates"
* Volume-target /certificates: Target directory for certificates. If something different than /certificates is used, environment
CERTIFICATES_PATH needs to be set to this path

CERTIFICATES_PATH needs to be set to this path
* Environment CERTIFICATES_PATH: The container path to the volume mount that holds trusted certificate authorities as .pem files
(optional). Defaults to `/certificates`. If something different than the default is used, the volume-target needs to be adapted to
the same directory
(optional). Defaults to `/certificates`. If something different than the default is used, the volume-target needs to be adapted to
the same directory

### <a id="direnv"></a> Direnv

Expand All @@ -403,7 +401,7 @@ Installs [Helm](https://helm.sh)

* USE_helm: Enable this feature
* DEBUG_helm: Debug this feature
* Environment HELM_VERSION*: Valid Helm version to install (e.g. 1.5.4)
* Environment HELM_VERSION (required): Valid Helm version to install (e.g. 1.5.4)

### <a id="jq"></a> JQ

Expand Down Expand Up @@ -442,50 +440,43 @@ Installs and configures [kubernetes](https://kubernetes.io/docs/reference/kubect
* USE_kubernetes: Enable this feature
* DEBUG_kubernetes: Debug this feature
* (azure flavour) Environment AZ_K8S_CLUSTERS: A comma separated list of AKS clusters to manage
inside *CloudControl* (only for azure flavour).
Each cluster is a pair of resource group and cluster name, separated by a colon. Optionally, you can specify
the target subscription.
For example: myresourcegroup:myk8s,myotherresourcegroup@othersubscription:mysecondk8s will install myk8s from
the myresourcegroup resource group and mysecondk8s from the resource group myotherresourcegroup in the
subscription othersubscription.
Prefix a cluster name with an ! to load the admin-credentials for that cluster instead of the user credentials.
This generates the script `k8s-relogin` which allows you to recreate the Kubernetes credentials.

inside *CloudControl* (only for azure flavour).
Each cluster is a pair of resource group and cluster name, separated by a colon. Optionally, you can specify
the target subscription.
For example: myresourcegroup:myk8s,myotherresourcegroup@othersubscription:mysecondk8s will install myk8s from
the myresourcegroup resource group and mysecondk8s from the resource group myotherresourcegroup in the
subscription othersubscription.
Prefix a cluster name with an ! to load the admin-credentials for that cluster instead of the user credentials.
This generates the script `k8s-relogin` which allows you to recreate the Kubernetes credentials.
* (azure flavour) Environment AZ_K8S_INSTALL_OPTIONS: Additional options for the az aks install-cli programm.
(Defaults to empty)

(Defaults to empty)
* (aws flavour) Environment AWS_K8S_CLUSTERS: A comma separated list of EKS clusters to manage
inside *CloudControl* (only for aws flavour).
For each cluster give the cluster name. If you need to assume an ARN role, add that to the clustername
with an additional | added.
For example: myekscluster|arn:aws:iam::32487234892:sample/sample

If you additionally need to assume a role before fetching the EKS credentials, add the role, prefixed with
an @:
myekscluster|arn:aws:iam::4327849324:sample/sample@arn:aws:iam::specialrole

inside *CloudControl* (only for aws flavour).
For each cluster give the cluster name. If you need to assume an ARN role, add that to the clustername
with an additional | added.
For example: myekscluster|arn:aws:iam::32487234892:sample/sample

If you additionally need to assume a role before fetching the EKS credentials, add the role, prefixed with
an @:
myekscluster|arn:aws:iam::4327849324:sample/sample@arn:aws:iam::specialrole
* (aws flavour) Environment AWS_SKIP_GPG: If set, skips the gpg checks for the yum repo of kubectl,
as [this](https://github.com/kubernetes/kubernetes/issues/37922)
[sometimes](https://github.com/kubernetes/kubernetes/issues/60134)
seems to fail.

as [this](https://github.com/kubernetes/kubernetes/issues/37922)
[sometimes](https://github.com/kubernetes/kubernetes/issues/60134)
seems to fail.
* (simple and aws flavour) Environment KUBECTL_VERSION: The version of kubectl to install

* (tanzu flavour)
* Environment TANZU_HOST: The tanzu host to download the kubectl vsphere plugin from and authenticate against
* Environment TANZU_USERNAME: The username to authenticate with
* Environment KUBECTL_VSPHERE_PASSWORD: The password to authenticate with
* Environment TANZU_CLUSTERS: A comma separated list of namespace:cluster name pairs
* Environment TANZU_ADD_CONTROL_CLUSTER: Whether to also authenticate against the control cluster [false]
* Environment TANZU_SKIP_TLS_VERIFY: Skip TLS verification [false]
* Environment TANZU_VSPHERE_PLUGIN_PATH: The path where to find the kubectl vsphere plugin [/wcp/plugin/linux-amd64/vsphere-plugin.zip]

This generates the script `k8s-relogin` which allows you to recreate the Kubernetes credentials.

* Environment TANZU_HOST: The tanzu host to download the kubectl vsphere plugin from and authenticate against
* Environment TANZU_USERNAME: The username to authenticate with
* Environment KUBECTL_VSPHERE_PASSWORD: The password to authenticate with
* Environment TANZU_CLUSTERS: A comma separated list of namespace:cluster name pairs
* Environment TANZU_ADD_CONTROL_CLUSTER: Whether to also authenticate against the control cluster [false]
* Environment TANZU_SKIP_TLS_VERIFY: Skip TLS verification [false]
* Environment TANZU_VSPHERE_PLUGIN_PATH: The path where to find the kubectl vsphere plugin [/wcp/plugin/linux-amd64/vsphere-plugin.zip]

This generates the script `k8s-relogin` which allows you to recreate the Kubernetes credentials.
* (gcloud flavor)
* Environment GCLOUD_K8S_CLUSTERS: A comma separated list of zone:cluster-name
* Environment K8S_USE_GCLOUD_AUTH: Whether to use the new GKE_GCLOUD_AUTH plugin [true]

* Environment GCLOUD_K8S_CLUSTERS: A comma separated list of zone:cluster-name
* Environment K8S_USE_GCLOUD_AUTH: Whether to use the new GKE_GCLOUD_AUTH plugin [true]

### <a id="packages"></a> Packages

Expand All @@ -497,7 +488,6 @@ Installs additional packages into the container
* DEBUG_packages: Debug this feature
* Environment PACKAGES: A whitespace separated list of packages to install. The packages will be installed with the flavour's default package manager.


### <a id="packer"></a> Packer

Installs [Packer](https://packer.io)
Expand All @@ -506,7 +496,7 @@ Installs [Packer](https://packer.io)

* USE_packer: Enable this feature
* DEBUG_packer: Debug this feature
* Environment PACKER_VERSION*: Valid Packer version to install (e.g. 1.5.4)
* Environment PACKER_VERSION (required): Valid Packer version to install (e.g. 1.5.4)

### <a id="run"></a> Run

Expand All @@ -527,7 +517,7 @@ Installs [stern](https://github.com/stern/stern), a multi pod and container log

* USE_stern: Enable this feature
* DEBUG_stern: Debug this feature
* Environment STERN_VERSION*: Valid Stern version (e.g. 1.21.0)
* Environment STERN_VERSION (required): Valid Stern version (e.g. 1.21.0)

### <a id="terraform"></a> Terraform

Expand All @@ -538,24 +528,19 @@ Installs and configures [Terraform](https://terraform.io)
* USE_terraform: Enable this feature
* DEBUG_terraform: Debug this feature
* Add a volume mount to the `volumes:` section of docker compose like this:
(...)
volumes:
- "<path-to-terraform>:/terraform"

(...)
volumes:
- "<path-to-terraform>:/terraform"
* Volume-target /terraform: Terraform base target directory. If something different than /terraform is used, environment
TERRAFORM_PATH needs to be set to this path

TERRAFORM_PATH needs to be set to this path
* Volume-target /credentials.terraform: A Terraform variable file holding sensitive information when working with terraform (e.g.
Terraform app secrets, etc.). If something different than /credentials.terraform is used, environment TERRAFORM_CREDENTIALS_PATH
needs to be set to this path

* Environment TERRAFORM_VERSION*: A valid terraform version to install (e.g. 0.12.17)
Terraform app secrets, etc.). If something different than /credentials.terraform is used, environment TERRAFORM_CREDENTIALS_PATH
needs to be set to this path
* Environment TERRAFORM_VERSION (required): A valid terraform version to install (e.g. 0.12.17)
* Environment TERRAFORM_PATH: Volume target for terraform base directory (optional). Defaults to `/terraform`. If something different
than the default is used, the volume-target needs to be adapted to the same directory

than the default is used, the volume-target needs to be adapted to the same directory
* Environment TERRAFORM_CREDENTIALS_PATH: Volume target for terraform credentials (optional). Defaults to `/terraform`. If something
different than the default is used, the volume-target needs to be adapted to the same directory

different than the default is used, the volume-target needs to be adapted to the same directory

### <a id="terragrunt"></a> Terragrunt

Expand All @@ -565,7 +550,7 @@ Installs [Terragrunt](https://github.com/gruntwork-io/terragrunt)

* USE_terragrunt: Enable this feature
* DEBUG_terragrunt: Debug this feature
* Environment TERRAGRUNT_VERSION*: Valid version of terragrunt to install
* Environment TERRAGRUNT_VERSION (required): Valid version of terragrunt to install

### <a id="timezone"></a> Timezone configuration

Expand All @@ -585,7 +570,7 @@ Installs the [Velero](https://velero.io) kubernetes backup CLI

* USE_velero: Enable this feature
* DEBUG_velero: Debug this feature
* Environment VELERO_VERSION*: Valid velero version to install (e.g. 1.4.2)
* Environment VELERO_VERSION (required): Valid velero version to install (e.g. 1.4.2)

### <a id="vim"></a> Vim

Expand All @@ -604,7 +589,7 @@ Installs the [YAML parser and processor yq](https://github.com/mikefarah/yq)

* USE_yq: Enable this feature
* DEBUG_yq: Debug this feature
* Environment YQ_VERSION*: Valid YQ version to install (e.g. 4.5.0)
* Environment YQ_VERSION (required): Valid YQ version to install (e.g. 4.5.0)


## Development
Expand Down Expand Up @@ -632,8 +617,9 @@ use environment variables prefixed with "MYFEATURE_" to circumvent the problem o
variables with another feature or a flavour.

Additionally, please add enough information to the configuration array of your feature so the user knows what values
to set for the specific environment variable. If a configuration option is required, please add an asterisk (*) after
its name and check if the variable is set in your installation script and break accordingly if not.
to set for the specific environment variable. If a configuration option is required, please state this in the
environment declaration using `(required)` after its name and check if the variable is set in your installation script
and break accordingly if not.

If your feature needs a version specification, the recommended way is to use the environment variable
`[FEATURE NAME]_VERSION`. This variable is also filled if the *CloudControl* user uses the FEATURES-variable approach
Expand Down
5 changes: 3 additions & 2 deletions README.md.gotmpl
Original file line number Diff line number Diff line change
Expand Up @@ -296,8 +296,9 @@ use environment variables prefixed with "MYFEATURE_" to circumvent the problem o
variables with another feature or a flavour.

Additionally, please add enough information to the configuration array of your feature so the user knows what values
to set for the specific environment variable. If a configuration option is required, please add an asterisk (*) after
its name and check if the variable is set in your installation script and break accordingly if not.
to set for the specific environment variable. If a configuration option is required, please state this in the
environment declaration using `(required)` after its name and check if the variable is set in your installation script
and break accordingly if not.

If your feature needs a version specification, the recommended way is to use the environment variable
`[FEATURE NAME]_VERSION`. This variable is also filled if the *CloudControl* user uses the FEATURES-variable approach
Expand Down
2 changes: 1 addition & 1 deletion feature/helm/feature.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@ icon: "⛵️"
title: "Helm"
description: "Installs [Helm](https://helm.sh)"
configuration:
- "Environment HELM_VERSION*: Valid Helm version to install (e.g. 1.5.4)"
- "Environment HELM_VERSION (required): Valid Helm version to install (e.g. 1.5.4)"
2 changes: 1 addition & 1 deletion feature/packer/feature.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@ icon: "📦"
title: "Packer"
description: "Installs [Packer](https://packer.io)"
configuration:
- "Environment PACKER_VERSION*: Valid Packer version to install (e.g. 1.5.4)"
- "Environment PACKER_VERSION (required): Valid Packer version to install (e.g. 1.5.4)"
2 changes: 1 addition & 1 deletion feature/stern/feature.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ title: "Stern"
description: |
Installs [stern](https://github.com/stern/stern), a multi pod and container log tailing for Kubernetes
configuration:
- "Environment STERN_VERSION*: Valid Stern version (e.g. 1.21.0)"
- "Environment STERN_VERSION (required): Valid Stern version (e.g. 1.21.0)"
2 changes: 1 addition & 1 deletion feature/terraform/feature.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ configuration:
Volume-target /credentials.terraform: A Terraform variable file holding sensitive information when working with terraform (e.g.
Terraform app secrets, etc.). If something different than /credentials.terraform is used, environment TERRAFORM_CREDENTIALS_PATH
needs to be set to this path
- "Environment TERRAFORM_VERSION*: A valid terraform version to install (e.g. 0.12.17)"
- "Environment TERRAFORM_VERSION (required): A valid terraform version to install (e.g. 0.12.17)"
- |
Environment TERRAFORM_PATH: Volume target for terraform base directory (optional). Defaults to `/terraform`. If something different
than the default is used, the volume-target needs to be adapted to the same directory
Expand Down
2 changes: 1 addition & 1 deletion feature/terragrunt/feature.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@ icon: "🐗"
title: "Terragrunt"
description: "Installs [Terragrunt](https://github.com/gruntwork-io/terragrunt)"
configuration:
- "Environment TERRAGRUNT_VERSION*: Valid version of terragrunt to install"
- "Environment TERRAGRUNT_VERSION (required): Valid version of terragrunt to install"
2 changes: 1 addition & 1 deletion feature/velero/feature.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@ icon: "🌊"
title: "Velero"
description: "Installs the [Velero](https://velero.io) kubernetes backup CLI"
configuration:
- "Environment VELERO_VERSION*: Valid velero version to install (e.g. 1.4.2)"
- "Environment VELERO_VERSION (required): Valid velero version to install (e.g. 1.4.2)"
2 changes: 1 addition & 1 deletion feature/yq/feature.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@ icon: "🛠"
title: "YQ"
description: "Installs the [YAML parser and processor yq](https://github.com/mikefarah/yq)"
configuration:
- "Environment YQ_VERSION*: Valid YQ version to install (e.g. 4.5.0)"
- "Environment YQ_VERSION (required): Valid YQ version to install (e.g. 4.5.0)"

0 comments on commit e5cba5d

Please sign in to comment.