Skip to content

Commit

Permalink
fix a bunch of things
Browse files Browse the repository at this point in the history
  • Loading branch information
fharper committed Jul 19, 2023
1 parent 0767607 commit d92f501
Show file tree
Hide file tree
Showing 33 changed files with 141 additions and 101 deletions.
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ In MDX v1, JSX and Markdown don't interoperate well: it has been fixed in MDX v2

##### Admonitions

You can also use special Docusaurus Markdown syntax called admonitions, which let you display beautiful notes, informations, warnings, and others.
You can also use special Docusaurus Markdown syntax called admonitions, which let you display beautiful notes, information, warnings, and others.

```markdown
:::note
Expand Down
2 changes: 2 additions & 0 deletions docs/constants.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,5 @@ export const GITLAB_LOGO_URL =
'https://assets.kubefirst.com/console/gitlab.svg';
export const VULTR_LOGO_URL =
'https://cf-assets.www.cloudflare.com/slt3lc6tev37/1ATBPX4YOBbCRkybT4zS2e/f4f5f0900b57c61e65960efb3d11c64f/Vultr_logo_high_res.png';
export const GCP_LOGO_URL =
'https://upload.wikimedia.org/wikipedia/commons/5/51/Google_Cloud_logo.svg';
2 changes: 1 addition & 1 deletion docs/gcp/credits.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ image: "https://docs.kubefirst.io/img/logo.svg"

import CommonCredits from "@site/docs/common/credits.mdx"

<CommonCredits />
<CommonCredits />
10 changes: 5 additions & 5 deletions docs/gcp/explore/user-creation.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,17 @@
title: User Creation
sidebar_position: 5
---

import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
import styles from "@site/docs/stylesheets/tabs.module.css";

import GitHubUserCreation from '@site/docs/gcp/partials/github/_user-creation.mdx'
import GitLabUserCreation from '@site/docs/gcp/partials/gitlab/_user-creation.mdx'

<Tabs groupId="git_provider" defaultValue="github" queryString>
<TabItem
<TabItem
attributes={{className: styles.github}}
value="github"
value="github"
label={
<div className="git-tab">
<img src="https://assets.kubefirst.com/console/github.svg" />
Expand All @@ -22,7 +22,7 @@ import GitLabUserCreation from '@site/docs/gcp/partials/gitlab/_user-creation.md
>
<GitHubUserCreation />
</TabItem>
<TabItem
<TabItem
value="gitlab"
attributes={{className: styles.gitlab}}
label={
Expand All @@ -34,4 +34,4 @@ import GitLabUserCreation from '@site/docs/gcp/partials/gitlab/_user-creation.md
>
<GitLabUserCreation />
</TabItem>
</Tabs>
</Tabs>
31 changes: 15 additions & 16 deletions docs/gcp/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,42 +3,41 @@ hide_title: true
sidebar_label: Overview
sidebar_position: 1
# custom_edit_url: https://github.com/facebook/docusaurus/edit/main/docs/api-doc-markdown.md
description: an overview of kubefirst on a gcp kubernetes cluster
description: an overview of kubefirst on a Google Cloud kubernetes cluster
image: "https://docs.kubefirst.io/img/logo.svg"

---
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
import styles from "@site/docs/stylesheets/tabs.module.css";
import ReactDom from 'react-dom'
import * as config from "@site/docs/constants.js"

import GitHubOverview from '@site/docs/gcp/partials/github/_overview.mdx'
import GitLabOverview from '@site/docs/gcp/partials/gitlab/_overview.mdx'
import CloudBanner from '@site/src/components/CloudBanner/CloudBanner.jsx'
import CommonProvisionProcess from "@site/docs/common/partials/common/_provision-process.mdx";

<CloudBanner cloudImgUrl={config.gcp_LOGO_URL} />

# Overview

The gcp provisioning process will:
- create a gitops git repository from our gitops-template and store it in your git provider
- create a kubernetes cluster in the gcp cloud
- install argocd bootstrapped against your gitops repo so your repo powers the platform
- install all the platform apps using gitops (gitops repo `/registry` folder)
- apply terraform to configure Vault (gitops repo `/terraform/vault` folder)
- bind a webhook to ngrok in cluster so you can automate terraform executions through atlantis
- integrate argo workflows with your git provider
- install argo workflow [cluster workflow templates](https://argoproj.github.io/argo-workflows/cluster-workflow-templates/#cluster-workflow-templates) to build containers, publish charts, and provide gitops delivery pipelines
- install a sample app git repository that uses this automation to demonstrate app delivery (metaphor repo)
:::caution

Google Cloud is in beta. Use at your own risks.

:::

The Google Cloud provisioning process will:
<CommonProvisionProcess firstitem="Create a Kubernetes cluster in Google Cloud."/>

![kubefirst gcp with GitLab Cluster Diagram](../img/gcp/gitlab/installation-diagram-light.png#light-mode)![kubefirst gcp with GitLab Cluster Diagram](../img/gcp/gitlab/installation-diagram-dark.png#dark-mode)
![kubefirst Google Cloud with GitLab Cluster Diagram](../img/gcp/gitlab/installation-diagram-light.png#light-mode)![kubefirst Google Cloud with GitLab Cluster Diagram](../img/gcp/gitlab/installation-diagram-dark.png#dark-mode)

# Applications

<Tabs groupId="git_provider" defaultValue="github" queryString>
<TabItem
<TabItem
attributes={{className: styles.github}}
value="github"
value="github"
label={
<div className="git-tab">
<img src="https://assets.kubefirst.com/console/github.svg" />
Expand All @@ -48,7 +47,7 @@ The gcp provisioning process will:
>
<GitHubOverview />
</TabItem>
<TabItem
<TabItem
value="gitlab"
attributes={{className: styles.gitlab}}
label={
Expand Down
10 changes: 5 additions & 5 deletions docs/gcp/partials/common/_prerequisites.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

[Install](../../overview.mdx) the kubefirst CLI.

### gcp Prerequisites
### Google Cloud Prerequisites

For kubefirst to be able to provision your gcp cloud resources:
For kubefirst to be able to provision your Google Cloud resources:

- A [gcp account](https://dashboard.gcp.com/signup) in which you are an account owner.
- A publicly routable [DNS](https://www.gcp.com/learn/configure-dns#adding-a-domain-name).
- A [gcp token](https://dashboard.gcp.com/security).
- A [Google Cloud account](https://cloud.google.com) in which you are an account owner.
- A publicly routable [DNS](https://cloud.google.com/dns/docs/overview).
- A [Google Cloud token](https://console.cloud.google.com/apis/credentials).
4 changes: 2 additions & 2 deletions docs/gcp/partials/common/_root-credentials-cmd.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
To obtain your 3 initial passwords, run

```bash
kubefirst gcp root-credentials
kubefirst beta gcp root-credentials
```

![terminal handoff](../../../img/common/kubefirst/root-credentials.png)

:::note the `kubefirst gcp root-credentials` command was introduced in 2.0.1
:::note the `kubefirst beta gcp root-credentials` command was introduced in 2.0.1
:::
9 changes: 4 additions & 5 deletions docs/gcp/partials/github/_cluster-create.mdx
Original file line number Diff line number Diff line change
@@ -1,23 +1,22 @@
## Create your new kubefirst cluster

Adjust the following command with your GitHub and gcp tokens in addition to the appropriate values for your new platform.
Adjust the following command with your GitHub and Google Cloud tokens in addition to the appropriate values for your new platform.

```shell
export GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxx
export gcp_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

kubefirst gcp create \
kubefirst beta gcp create \
--alerts-email [email protected] \
--github-org your-github-org \
--domain-name your-domain.io \
--cluster-name kubefirst
```

The kubefirst cli will produce a directory of utilities, a state file, and some staged platform content that can now be found in the `~/.kubefirst` and `~/.k1` folders on your local machine.
The kubefirst CLI will produce a directory of utilities, a state file, and some staged platform content that can now be found in the `~/.kubefirst` and `~/.k1` folders on your local machine.

After the ~10 minute installation, your browser will launch a new tab to the [kubefirst Console](https://github.com/kubefirst/console), which will help you navigate your new suite of tools running in your new gcp cluster.
After the ~10 minute installation, your browser will launch a new tab to the [kubefirst Console](https://github.com/kubefirst/console), which will help you navigate your new suite of tools running in your new Google Cloud cluster.

If your deployment is not successful, errors and troubleshooting information will be stored in a local log file specified during the installation run.

![terminal handoff](../../../img/gcp/gitlab/handoff-screen.png)
*add console ui image for kubefirst launch
27 changes: 14 additions & 13 deletions docs/gcp/partials/github/_install.mdx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# gcp Platform Installation
# Google Cloud Platform Installation

kubefirst generates your cloud native platform from a `helm install` or a `kubefirst` CLI execution.

Expand All @@ -10,31 +10,32 @@ kubefirst generates your cloud native platform from a `helm install` or a `kubef
- A new GitHub [account](https://docs.github.com/en/get-started/signing-up-for-github/signing-up-for-a-new-github-account) for your `kbot` automation user.
- A GitHub [personal access token](../../../common/git-auth.mdx) for your `kbot` account.

### gcp Prerequisites
### Google Cloud Prerequisites

For kubefirst to be able to provision your gcp cloud resources:
For kubefirst to be able to provision your Google Cloud resources:

- A [gcp account](https://dashboard.gcp.com/signup) in which you are an account owner.
- A publicly routable [DNS](https://www.gcp.com/learn/configure-dns#adding-a-domain-name).
- A [gcp token](https://dashboard.gcp.com/security).
- A [Google Cloud account](https://cloud.google.com) in which you are an account owner.
- A publicly routable [DNS](https://cloud.google.com/dns/docs/overview).
- Generate [Application Default Credentials](https://cloud.google.com/docs/authentication/application-default-credentials#GAC) (ADC) (you could use the [Google Cloud CLI](https://cloud.google.com/sdk/gcloud) with the command `gcloud auth application-default login`)

## Create your new kubefirst cluster

Adjust the following command with your GitHub and gcp tokens in addition to the appropriate values for your new platform.
Adjust the following command with your GitHub and Google Cloud credentials file path (it's set to the default for macOS in the code example below) in addition to the appropriate values for your new platform.

```shell
export GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxx
export gcp_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
kubefirst gcp create \
export GOOGLE_APPLICATION_CREDENTIALS=$HOME/.config/gcloud/application_default_credentials.json

kubefirst beta gcp create \
--alerts-email [email protected] \
--github-org your-github-org \
--domain-name your-domain.io \
--cluster-name kubefirst
```

The kubefirst cli will produce a directory of utilities, a state file, and some staged platform content that can now be found in the `~/.kubefirst` and `~/.k1` folders on your local machine.
The kubefirst CLI will produce a directory of utilities, a state file, and some staged platform content that can now be found in the `~/.kubefirst` and `~/.k1` folders on your local machine.

After the ~10 minute installation, your browser will launch a new tab to the [kubefirst Console](https://github.com/kubefirst/console), which will help you navigate your new suite of tools running in your new gcp cluster.
After the ~10 minute installation, your browser will launch a new tab to the [kubefirst Console](https://github.com/kubefirst/console), which will help you navigate your new suite of tools running in your new Google Cloud cluster.

If your deployment is not successful, errors and troubleshooting information will be stored in a local log file specified during the installation run.

Expand All @@ -51,7 +52,7 @@ If your deployment is not successful, errors and troubleshooting information wil
To obtain your 3 initial passwords, run

```bash
kubefirst gcp root-credentials
kubefirst beta gcp root-credentials
```

![terminal handoff](../../../img/common/kubefirst/root-credentials.png)
Expand All @@ -72,4 +73,4 @@ kubectl get pods -A

### Installed Applications

To see what is installed by kubefirst, check the [overview page](../../overview.mdx).
To see what is installed by kubefirst, check the [overview page](../../overview.mdx).
4 changes: 2 additions & 2 deletions docs/gcp/partials/github/_overview.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
`kubefirst gcp create` provisions a local [gcp](https://gcp.com) Kubernetes cluster to host your cloud native environment locally.
`kubefirst beta gcp create` provisions a local [Google Cloud](https://cloud.google.com) Kubernetes cluster to host your cloud native environment locally.

Your gcp cluster will include:
Your Google Cloud cluster will include:

| Application | Description |
|---------------------------------|-----------------------------------------------------------------------------|
Expand Down
2 changes: 1 addition & 1 deletion docs/gcp/partials/github/_prerequisites.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

- A GitHub [organisation](https://docs.github.com/en/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch).
- A new GitHub [account](https://docs.github.com/en/get-started/signing-up-for-github/signing-up-for-a-new-github-account) for your `kbot` automation user.
- A GitHub [personal access token](../../../common/git-auth.mdx) for your `kbot` account.
- A GitHub [personal access token](../../../common/git-auth.mdx) for your `kbot` account.
2 changes: 1 addition & 1 deletion docs/gcp/partials/github/_repositories.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# GitHub Repositories

When you deploy a cluster on gcp using kubefirst, new repositories will be added to your organization's GitHub account.
When you deploy a cluster on Google Cloud using kubefirst, new repositories will be added to your organization's GitHub account.

![GitHub repositories](../../../img/common/github/repositories.png)

Expand Down
2 changes: 1 addition & 1 deletion docs/gcp/partials/github/_user-creation.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -59,4 +59,4 @@ Once you've provided them their initial password, they can update their own pass

![default user creation](../../../img/kubefirst/local/default-user-creation.png)

The admins and developers that you add through IaC will automatically propagate to all tools due to the Vault OIDC provider that's preconfigured throughout the kubefirst platform tools.
The admins and developers that you add through IaC will automatically propagate to all tools due to the Vault OIDC provider that's preconfigured throughout the kubefirst platform tools.
4 changes: 2 additions & 2 deletions docs/gcp/partials/gitlab/_cluster-create.mdx
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
## Create your new kubefirst cluster

Adjust the following command with your GitHub and gcp tokens in addition to the appropriate values for your new platform.
Adjust the following command with your GitHub and Google Cloud tokens in addition to the appropriate values for your new platform.

```shell
export GITLAB_TOKEN=glpat-xxxxxxxxxxxxxxxx
export gcp_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

kubefirst gcp create \
kubefirst beta gcp create \
--alerts-email [email protected] \
--git-provider gitlab \
--gitlab-group your-gitlab-group \
Expand Down
26 changes: 13 additions & 13 deletions docs/gcp/partials/gitlab/_install.mdx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# gcp Platform Installation
# Google Cloud Platform Installation

kubefirst is the name of our CLI that installs the platform of the same name to your local or cloud environment.

Expand All @@ -13,33 +13,33 @@ kubefirst is the name of our CLI that installs the platform of the same name to

> GitLab SaaS offering has limitations that require us to use groups contrary to GitHub which can be use without an organization.
### gcp
### Google Cloud

For kubefirst to be able to provision your gcp cloud resources:
For kubefirst to be able to provision your Google Cloud resources:

- A [gcp account](https://dashboard.gcp.com/signup) in which you are an account owner.
- A publicly routable [DNS](https://www.gcp.com/learn/configure-dns#adding-a-domain-name).
- A [gcp token](https://dashboard.gcp.com/security).
- A [Google Cloud account](https://cloud.google.com) in which you are an account owner.
- A publicly routable [DNS](https://cloud.google.com/dns/docs/overview).
- Generate [Application Default Credentials](https://cloud.google.com/docs/authentication/application-default-credentials#GAC) (ADC) (you could use the [Google Cloud CLI](https://cloud.google.com/sdk/gcloud) with the command `gcloud auth application-default login`)

## Create your new kubefirst cluster

Adjust the following command with your GitHub and gcp tokens in addition to the appropriate values for your new platform.
Adjust the following command with your GitHub and Google Cloud credentials file path (it's set to the default for macOS in the code example below) in addition to the appropriate values for your new platform.

```shell
export GITLAB_TOKEN=xxxxxxxxxxxxxxxx
export gcp_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
export GOOGLE_APPLICATION_CREDENTIALS=$HOME/.config/gcloud/application_default_credentials.json

kubefirst gcp create \
kubefirst beta gcp create \
--alerts-email [email protected] \
--git-provider gitlab \
--gitlab-group your-gitlab-group \
--domain-name your-domain.io \
--cluster-name kubefirst
```

The kubefirst cli will produce a directory of utilities, a state file, and some staged platform content that can now be found in the `~/.kubefirst` and `~/.k1` folders on your local machine.
The kubefirst CLI will produce a directory of utilities, a state file, and some staged platform content that can now be found in the `~/.kubefirst` and `~/.k1` folders on your local machine.

After the ~10 minute installation, your browser will launch a new tab to the [kubefirst Console](https://github.com/kubefirst/console), which will help you navigate your new suite of tools running in your new gcp cluster.
After the ~10 minute installation, your browser will launch a new tab to the [kubefirst Console](https://github.com/kubefirst/console), which will help you navigate your new suite of tools running in your new Google Cloud cluster.

If your deployment is not successful, errors and troubleshooting information will be stored in a local log file specified during the installation run.

Expand All @@ -56,7 +56,7 @@ If your deployment is not successful, errors and troubleshooting information wil
To obtain your 3 initial passwords, run

```bash
kubefirst gcp root-credentials
kubefirst beta gcp root-credentials
```

![terminal handoff](../../../img/common/kubefirst/root-credentials.png)
Expand All @@ -77,4 +77,4 @@ kubectl get pods -A

### Installed Applications

To see what is installed by kubefirst, check the [overview page](../../overview.mdx).
To see what is installed by kubefirst, check the [overview page](../../overview.mdx).
4 changes: 2 additions & 2 deletions docs/gcp/partials/gitlab/_overview.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
`kubefirst gcp create` provisions a local [gcp](https://gcp.com) Kubernetes cluster to host your cloud native environment locally.
`kubefirst beta gcp create` provisions a local [Google Cloud](https://gcp.com) Kubernetes cluster to host your cloud native environment locally.

Your gcp cluster will include:
Your Google Cloud cluster will include:

| Application | Description |
|---------------------------------|-----------------------------------------------------------------------------|
Expand Down
2 changes: 1 addition & 1 deletion docs/gcp/partials/gitlab/_prerequisites.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@
- Create a [GitLab group](https://docs.gitlab.com/ee/user/group/) developer permissions.

:::note GitLab SaaS offering has limitations that require us to use groups contrary to GitHub which can be use without an organization.
:::
:::
4 changes: 2 additions & 2 deletions docs/gcp/partials/gitlab/_repositories.mdx
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# GitLab Repositories

When you install the gcp version of kubefirst, 2 new repositories will be added to your GitLab project as shown here.
When you install the Google Cloud version of kubefirst, 2 new repositories will be added to your GitLab project as shown here.

![GitLab repositories](../../../img/common/gitlab/repositories.png)

## Repository Summary

### gitops

The GitOps repo houses all of our IAC and all our GitOps configurations. All of the infrastructure that you receive with Kubefirst was produced by some combination of Terraform and ArgoCD. You can add any infrastructure or application to your platform by pull requesting it to your new `gitops` repository.
The `gitops` repository houses all of our IAC and all our GitOps configurations. All of the infrastructure that you receive with kubefirst was produced by some combination of Terraform and Argo CD. You can add any infrastructure or application to your platform by pull requesting it to your new `gitops` repository.

### metaphor

Expand Down
Loading

0 comments on commit d92f501

Please sign in to comment.