Skip to content

Commit 5a412fb

Browse files
dploegerDennis Ploeger
authored andcommitted
docs: Added platform documentation
1 parent 2ea5082 commit 5a412fb

8 files changed

Lines changed: 48 additions & 12 deletions

File tree

README.md

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ required and configured to manage modern cloud infrastructures.
99

1010
The toolbox comes in different "flavours" depending on what cloud you are working in.
1111
Currently supported cloud flavours are:
12-
* ![Docker Image Version (latest semver)](https://img.shields.io/docker/v/dodevops/cloudcontrol-aws?sort=semver) [AWS](https://hub.docker.com/r/dodevops/cloudcontrol-aws) (based on [amazon/aws-cli](https://hub.docker.com/r/amazon/aws-cli))
13-
* ![Docker Image Version (latest semver)](https://img.shields.io/docker/v/dodevops/cloudcontrol-azure?sort=semver) [Azure](https://hub.docker.com/r/dodevops/cloudcontrol-azure) (based on [mcr.microsoft.com/azure-cli](https://hub.docker.com/_/microsoft-azure-cli))
14-
* ![Docker Image Version (latest semver)](https://img.shields.io/docker/v/dodevops/cloudcontrol-gcloud?sort=semver) [Google Cloud](https://hub.docker.com/r/dodevops/cloudcontrol-gcloud) (based on [google-cloud-cli](https://console.cloud.google.com/gcr/images/google.com:cloudsdktool/GLOBAL/google-cloud-cli))
15-
* ![Docker Image Version (latest semver)](https://img.shields.io/docker/v/dodevops/cloudcontrol-simple?sort=semver) [Simple](https://hub.docker.com/r/dodevops/cloudcontrol-simple) (based on [alpine](https://hub.docker.com/_/alpine))
16-
* ![Docker Image Version (latest semver)](https://img.shields.io/docker/v/dodevops/cloudcontrol-tanzu?sort=semver) [Tanzu](https://hub.docker.com/r/dodevops/cloudcontrol-tanzu) (based on [alpine](https://hub.docker.com/_/alpine))
12+
* [AWS](https://github.com/dodevops/cloudcontrol/pkgs/container/cloudcontrol-aws) (based on [amazon/aws-cli](https://hub.docker.com/r/amazon/aws-cli)) [linux/amd64, linux/arm64]
13+
* [Azure](https://github.com/dodevops/cloudcontrol/pkgs/container/cloudcontrol-azure) (based on [mcr.microsoft.com/azure-cli](https://hub.docker.com/_/microsoft-azure-cli)) [linux/amd64]
14+
* [Google Cloud](https://github.com/dodevops/cloudcontrol/pkgs/container/cloudcontrol-gcloud) (based on [google-cloud-cli](https://console.cloud.google.com/gcr/images/google.com:cloudsdktool/GLOBAL/google-cloud-cli)) [linux/amd64, linux/arm64]
15+
* [Simple](https://github.com/dodevops/cloudcontrol/pkgs/container/cloudcontrol-simple) (based on [alpine](https://hub.docker.com/_/alpine)) [linux/amd64, linux/arm64]
16+
* [Tanzu](https://github.com/dodevops/cloudcontrol/pkgs/container/cloudcontrol-tanzu) (based on [alpine](https://hub.docker.com/_/alpine)) [linux/amd64]
1717

1818
Following features and tools are supported:
1919
* 🐟 Fish Shell
@@ -143,6 +143,16 @@ documentation and support of your Kubernetes distribution if something isn't wor
143143

144144
## FAQ
145145

146+
### What does an error message like "no matching manifest for linux/arm64/v8 in the manifest list entries" mean?
147+
148+
Apparently you're using *CloudControl* on a system for which no specific image exist. Some cloud providers have not
149+
provided base images for all architectures (e.g. the Apple ARM-based processors) yet. See the list of flavours above
150+
for the available platforms per flavour.
151+
152+
As a workaround this, you can use the [`platform`](https://docs.docker.com/compose/compose-file/compose-file-v2/#platform)
153+
parameter for docker-compose or the `--platform` parameter for `docker run` to specify a compatible architecture
154+
(e.g. linux/amd64 on Apple ARM-based machines).
155+
146156
### How can I add an informational text for users of *CloudControl*?
147157

148158
If you want to display a *custom login message* when users enter the container, set environment variable `MOTD`
@@ -760,3 +770,5 @@ flowchart TD
760770
click F "https://github.com/dodevops/cloudcontrol/blob/develop/.github/workflows/test.yml" "Test workflow"
761771
click H "https://github.com/dodevops/cloudcontrol/blob/develop/.github/workflows/release.yml" "Release workflow"
762772
```mermaid
773+
maid
774+

README.md.gotmpl

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ The toolbox comes in different "flavours" depending on what cloud you are workin
1212
Currently supported cloud flavours are:
1313

1414
{{- range .Flavours }}
15-
* {{ .Title -}}
16-
{{ end }}
15+
* {{ .Title }} [{{ $sep := "" }}{{ range .Platforms }}{{ $sep }}{{ . }}{{ $sep = ", " }}{{ end }}]
16+
{{- end }}
1717

1818
Following features and tools are supported:
1919

@@ -108,6 +108,16 @@ documentation and support of your Kubernetes distribution if something isn't wor
108108

109109
## FAQ
110110

111+
### What does an error message like "no matching manifest for linux/arm64/v8 in the manifest list entries" mean?
112+
113+
Apparently you're using *CloudControl* on a system for which no specific image exist. Some cloud providers have not
114+
provided base images for all architectures (e.g. the Apple ARM-based processors) yet. See the list of flavours above
115+
for the available platforms per flavour.
116+
117+
As a workaround this, you can use the [`platform`](https://docs.docker.com/compose/compose-file/compose-file-v2/#platform)
118+
parameter for docker-compose or the `--platform` parameter for `docker run` to specify a compatible architecture
119+
(e.g. linux/amd64 on Apple ARM-based machines).
120+
111121
### How can I add an informational text for users of *CloudControl*?
112122

113123
If you want to display a *custom login message* when users enter the container, set environment variable `MOTD`

flavour/aws/flavour.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
title: "![Docker Image Version (latest semver)](https://img.shields.io/docker/v/dodevops/cloudcontrol-aws?sort=semver) [AWS](https://hub.docker.com/r/dodevops/cloudcontrol-aws) (based on [amazon/aws-cli](https://hub.docker.com/r/amazon/aws-cli))"
1+
title: "[AWS](https://github.com/dodevops/cloudcontrol/pkgs/container/cloudcontrol-aws) (based on [amazon/aws-cli](https://hub.docker.com/r/amazon/aws-cli))"
22
description: |
33
Can be used to connect to infrastructure in the AWS cloud. Also see [the AWS CLI documentation](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html) for more configuration options.
44
If you have activated MFA, set AWS_MFA_ARN to the ARN of your MFA device so CloudControl will ask you
@@ -9,3 +9,6 @@ configuration:
99
- "Environment AWS_SECRET_ACCESS_KEY: Specifies the secret key associated with the access key. This is essentially the password for the access key"
1010
- "Environment AWS_DEFAULT_REGION: Specifies the AWS Region to send the request to"
1111
- "Environment AWS_MFA_ARN: ARN of the MFA device to use to log in"
12+
platforms:
13+
- linux/amd64
14+
- linux/arm64

flavour/azure/flavour.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
title: "![Docker Image Version (latest semver)](https://img.shields.io/docker/v/dodevops/cloudcontrol-azure?sort=semver) [Azure](https://hub.docker.com/r/dodevops/cloudcontrol-azure) (based on [mcr.microsoft.com/azure-cli](https://hub.docker.com/_/microsoft-azure-cli))"
1+
title: "[Azure](https://github.com/dodevops/cloudcontrol/pkgs/container/cloudcontrol-azure) (based on [mcr.microsoft.com/azure-cli](https://hub.docker.com/_/microsoft-azure-cli))"
22
description: |
33
Can be used to connect to infrastructure in the Azure cloud. Because we're using a container,
44
a device login will happen, requiring the user to go to a website, enter a code and login.
@@ -7,3 +7,5 @@ configuration:
77
- "Environment AZ_SUBSCRIPTION: The Azure subscription to use in this container"
88
- "Environment AZ_TENANTID: The Azure tenant id to log into (optional)"
99
- "Environment AZ_USE_ARM_SPI: Uses the environment variables ARM_CLIENT_ID and ARM_CLIENT_SECRET for service principal auth [false]"
10+
platforms:
11+
- linux/amd64

flavour/gcloud/flavour.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
title: "![Docker Image Version (latest semver)](https://img.shields.io/docker/v/dodevops/cloudcontrol-gcloud?sort=semver) [Google Cloud](https://hub.docker.com/r/dodevops/cloudcontrol-gcloud) (based on [google-cloud-cli](https://console.cloud.google.com/gcr/images/google.com:cloudsdktool/GLOBAL/google-cloud-cli))"
1+
title: "[Google Cloud](https://github.com/dodevops/cloudcontrol/pkgs/container/cloudcontrol-gcloud) (based on [google-cloud-cli](https://console.cloud.google.com/gcr/images/google.com:cloudsdktool/GLOBAL/google-cloud-cli))"
22
description: |
33
Includes workflows and tools to connect to Google Cloud.
44
@@ -13,3 +13,6 @@ configuration:
1313
- "Environment GCLOUD_PROJECTID: The id of the Google Cloud project to connect to"
1414
- "Environment GCLOUD_USE_SA (Possible values: true, false. Defaults to false): Use a service account to log into Google Cloud. Requires GCLOUD_KEYPATH"
1515
- "Environment GCLOUD_KEYPATH: Path inside CloudControl that holds the service account JSON file"
16+
platforms:
17+
- linux/amd64
18+
- linux/arm64

flavour/simple/flavour.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1-
title: "![Docker Image Version (latest semver)](https://img.shields.io/docker/v/dodevops/cloudcontrol-simple?sort=semver) [Simple](https://hub.docker.com/r/dodevops/cloudcontrol-simple) (based on [alpine](https://hub.docker.com/_/alpine))"
1+
title: "[Simple](https://github.com/dodevops/cloudcontrol/pkgs/container/cloudcontrol-simple) (based on [alpine](https://hub.docker.com/_/alpine))"
22
description: |
33
Can be used to connect to infrastructure outside of a specific cloud provider.
4+
platforms:
5+
- linux/amd64
6+
- linux/arm64

flavour/tanzu/flavour.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
title: "![Docker Image Version (latest semver)](https://img.shields.io/docker/v/dodevops/cloudcontrol-tanzu?sort=semver) [Tanzu](https://hub.docker.com/r/dodevops/cloudcontrol-tanzu) (based on [alpine](https://hub.docker.com/_/alpine))"
1+
title: "[Tanzu](https://github.com/dodevops/cloudcontrol/pkgs/container/cloudcontrol-tanzu) (based on [alpine](https://hub.docker.com/_/alpine))"
22
description: |
33
Includes workflows and tools to connect to a Tanzu cluster.
44
@@ -7,3 +7,5 @@ description: |
77
The kubernetes login tokens usually expire after a few hours already. You can run the `k8s-relogin` script
88
(located in ~/bin, thus available without path) to re-execute the same login commands as the initialization process
99
does.
10+
platforms:
11+
- linux/amd64

internal/models.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,5 @@ type YamlDescriptor struct {
1010
Icon string
1111
Configuration []string
1212
Test TestConfiguration
13+
Platforms []string
1314
}

0 commit comments

Comments
 (0)