Skip to content

Commit

Permalink
chore: copy beta clouds docs in 2.2 (#476)
Browse files Browse the repository at this point in the history
  • Loading branch information
fharper authored Aug 29, 2023
1 parent 275fcb1 commit f673ae7
Show file tree
Hide file tree
Showing 119 changed files with 2,322 additions and 23 deletions.
1 change: 1 addition & 0 deletions docs/constants.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,4 @@ export const GITHUB_LOGO_URL = 'https://assets.kubefirst.com/console/github.svg'
export const GITLAB_LOGO_URL = 'https://assets.kubefirst.com/console/gitlab.svg';
export const K3D_LOGO_URL = 'https://k3d.io/v5.5.1/static/img/k3d_logo_black_blue.svg';
export const VULTR_LOGO_URL = 'https://cf-assets.www.cloudflare.com/slt3lc6tev37/1ATBPX4YOBbCRkybT4zS2e/f4f5f0900b57c61e65960efb3d11c64f/Vultr_logo_high_res.png';
export const DO_LOGO_URL = 'https://upload.wikimedia.org/wikipedia/commons/thumb/f/ff/DigitalOcean_logo.svg/1200px-DigitalOcean_logo.svg.png';
2 changes: 1 addition & 1 deletion docs/do/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ import CommonProvisionProcess from "../common/partials/common/_provision-process
}}
>
<div>
<img src={config.VULTR_LOGO_URL} height="50" width="120" />
<img src={config.DO_LOGO_URL} height="50" width="120" />
</div>
</div>

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
:::tip

By default kubefirst use the cloud providers to manage DNS. You also have the option to use Cloudflare.

To do so, add the `dnsProvider` flag with the value `cloudflare` to your create command `—dnsProvider cloudflare`.

You also need to set the `CF_API_TOKEN` environment variable with a Cloudflare token (`export CF_API_TOKEN=xxxxxxxxx`) having the `Zone.Zone`, and `Zone.DNS` edit permission. More information on Cloudflare token creation [in their documentation](https://developers.cloudflare.com/fundamentals/api/get-started/create-token/).

:::
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
- <span>{props.firstitem}</span>
- Create a `gitops` git repository from our [gitops-template](https://github.com/kubefirst/gitops-template) and store it in your selected git provider.
- Install Argo CD bootstrapped against your `gitops` repository so your repository powers the platform.
- Install all the platform apps using GitOps (gitops repository `/registry` folder).
- Apply Terraform to configure Vault (gitops repository `/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 Workflows [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 application that uses this automation to demonstrate app delivery ([metaphor](https://github.com/kubefirst/gitops-template/tree/main/metaphor)).
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
## Root credentials

To obtain your 3 initial passwords, run

```bash
kubefirst beta vultr root-credentials
```

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

:::note the `kubefirst beta vultr root-credentials` command was introduced in 2.0.1
:::
5 changes: 4 additions & 1 deletion versioned_docs/version-2.2/constants.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions versioned_docs/version-2.2/do/credits.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
hide_title: true
sidebar_label: Credits
# custom_edit_url: https://github.com/facebook/docusaurus/edit/main/docs/api-doc-markdown.md
description: credit to all the awesome open source projects
image: "https://docs.kubefirst.io/img/logo.svg"
---

import CommonCredits from "../common/credits.mdx"

<CommonCredits />
14 changes: 14 additions & 0 deletions versioned_docs/version-2.2/do/deprovision.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
hide_title: true
display_sidebar: do
sidebar_label: Deprovision
# custom_edit_url: https://github.com/facebook/docusaurus/edit/main/docs/api-doc-markdown.md
description: how to deprovision your kubefirst platform
keywords:
- aws
image: 'https://docs.kubefirst.io/img/logo.svg'
---

import Deprovision from '../common/deprovision.mdx';

<Deprovision />
8 changes: 8 additions & 0 deletions versioned_docs/version-2.2/do/explore/argocd.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: Argo CD
sidebar_position: 1
---

import ExploreArgocd from "../../common/argocd.mdx"

<ExploreArgocd />
9 changes: 9 additions & 0 deletions versioned_docs/version-2.2/do/explore/gitops.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
title: GitOps
sidebar_position: 2
---


import ExploreGitOps from "../../common/gitops.mdx"

<ExploreGitOps />
8 changes: 8 additions & 0 deletions versioned_docs/version-2.2/do/explore/metaphor.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: Metaphor
sidebar_position: 3
---

import ExploreMetaphor from "../../common/metaphor.mdx"

<ExploreMetaphor />
8 changes: 8 additions & 0 deletions versioned_docs/version-2.2/do/explore/telemetry.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: Telemetry
sidebar_position: 7
---

import ExploreTelemetry from "../../common/telemetry.mdx"

<ExploreTelemetry />
8 changes: 8 additions & 0 deletions versioned_docs/version-2.2/do/explore/terraform.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: Terraform & Atlantis
sidebar_position: 4
---

import ExploreTerraform from "../../common/terraform.mdx"

<ExploreTerraform />
38 changes: 38 additions & 0 deletions versioned_docs/version-2.2/do/explore/user-creation.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
title: User Creation
sidebar_position: 5
---

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import styles from '../../stylesheets/tabs.module.css';

import GitHubUserCreation from '../partials/github/_user-creation.mdx';
import GitLabUserCreation from '../partials/gitlab/_user-creation.mdx';

<Tabs groupId="git_provider" defaultValue="github" queryString>
<TabItem
attributes={{ className: styles.github }}
value="github"
label={
<div className="git-tab">
<img src="https://assets.kubefirst.com/console/github.svg" />
<span>GitHub</span>
</div>
}
>
<GitHubUserCreation />
</TabItem>
<TabItem
value="gitlab"
attributes={{ className: styles.gitlab }}
label={
<div className="git-tab">
<img src="https://assets.kubefirst.com/console/gitlab.svg" />
<span>GitLab</span>
</div>
}
>
<GitLabUserCreation />
</TabItem>
</Tabs>
8 changes: 8 additions & 0 deletions versioned_docs/version-2.2/do/explore/vault.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: Vault
sidebar_position: 6
---

import ExploreVault from "../../common/vault.mdx"

<ExploreVault />
17 changes: 17 additions & 0 deletions versioned_docs/version-2.2/do/faq.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
hide_title: true
sidebar_label: FAQ
# custom_edit_url: https://github.com/facebook/docusaurus/edit/main/docs/api-doc-markdown.md
description: frequently asked quesitons about the kubefirst platform
image: "https://docs.kubefirst.io/img/logo.svg"
---

import FAQ from "../common/faq.mdx"

<FAQ />

## DigitalOcean

### I got an AWS error, but I'm creating a cluster on DigitalOcean. What is this?

The error can be misleading, but it makes sense as smaller cloud providers, including DigitalOcean, built their storage offering to be S3 compatible, which means that the Terraform provider used for them is also the AWS one. As for the error itself, there's a chance it's because your `DO_SPACES_KEY` and/or `DO_SPACES_SECRET` environment variable were not set, or you key isn't valid anymore.
14 changes: 14 additions & 0 deletions versioned_docs/version-2.2/do/gitops-catalog.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
hide_title: true
display_sidebar: civo
sidebar_label: GitOps Catalog
# custom_edit_url: https://github.com/facebook/docusaurus/edit/main/docs/api-doc-markdown.md
description: using the kubefirst gitops catalog
keywords:
- aws
image: 'https://docs.kubefirst.io/img/logo.svg'
---

import GitOpsCatalog from '../common/gitops-catalog.mdx';

<GitOpsCatalog />
72 changes: 72 additions & 0 deletions versioned_docs/version-2.2/do/overview.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
---
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 DigitalOcean kubernetes cluster
image: 'https://docs.kubefirst.io/img/logo.svg'
---

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import styles from '../stylesheets/tabs.module.css';
import ReactDom from 'react-dom';
import * as config from '../constants.js';
import GitHubOverview from '../do/partials/github/_overview.mdx';
import GitLabOverview from '../do/partials/gitlab/_overview.mdx';
import CloudBanner from '@site/src/components/CloudBanner/CloudBanner.jsx';
import CommonProvisionProcess from "../common/partials/common/_provision-process.mdx";

<div
style={{
display: 'flex',
justifyContent: 'flex-end',
alignItems: 'center',
}}
>
<div>
<img src={config.DO_LOGO_URL} height="50" width="120" />
</div>
</div>

# Overview

:::caution

DigitalOcean is in beta. It is quite stable, but use at your own risks.

:::

The DigitalOcean provisioning process will:
<CommonProvisionProcess firstitem="Create a Kubernetes cluster in the DigitalOcean cloud."/>

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

# Applications

<Tabs groupId="git_provider" defaultValue="github" queryString>
<TabItem
attributes={{ className: styles.github }}
value="github"
label={
<div className="git-tab">
<img src="https://assets.kubefirst.com/console/github.svg" />
<span>GitHub</span>
</div>
}
>
<GitHubOverview />
</TabItem>
<TabItem
value="gitlab"
attributes={{ className: styles.gitlab }}
label={
<div className="git-tab">
<img src="https://assets.kubefirst.com/console/gitlab.svg" />
<span>GitLab</span>
</div>
}
>
<GitLabOverview />
</TabItem>
</Tabs>
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
## Connecting to Kubernetes

To connect to your new Kubernetes cluster, run

```bash
export KUBECONFIG=~/.k1/kubeconfig
```

To view all cluster pods, run

```bash
kubectl get pods -A
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
### Installed Applications

To see what is installed by kubefirst, check the [overview page](../../overview.mdx).
27 changes: 27 additions & 0 deletions versioned_docs/version-2.2/do/partials/common/_prerequisites.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
## Prerequisites

### Local Prerequisites

If you are on macOS, and have [Homebrew](https://brew.sh) installed, you can run:

```shell
brew install kubefirst/tools/kubefirst
```

To upgrade an existing kubefirst CLI to the latest version run:

```shell
brew update
brew upgrade kubefirst
```

There are other ways to install kubefirst for different operating systems, architectures, and containerized environments. See our [installation README](https://github.com/kubefirst/kubefirst/blob/main/build/README.md) for details.

### DigitalOcean Prerequisites

For kubefirst to be able to provision your DigitalOcean cloud resources:

- A [DigitalOcean account](https://cloud.digitalocean.com/registrations/new) in which you are an account owner.
- A publicly routable [DNS](https://docs.digitalocean.com/tutorials/dns-registrars/).
- A [DigitalOcean API personal access token](https://cloud.digitalocean.com/account/api/tokens).
- A [DigitalOcean Spaces access key & its secret](https://cloud.digitalocean.com/account/api/spaces).
20 changes: 20 additions & 0 deletions versioned_docs/version-2.2/do/partials/github/_cluster-create.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import CloudflareDNS from "../../../common/partials/common/_cloudflare-dns.mdx";

## Create your new kubefirst cluster

Adjust the following command with your GitHub and DigitalOcean key in addition to the appropriate values for your new platform.

```shell
export GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxx
export DO_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
export DO_SPACES_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
export DO_SPACES_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

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

<CloudflareDNS />
16 changes: 16 additions & 0 deletions versioned_docs/version-2.2/do/partials/github/_overview.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
`kubefirst beta digitalocean create` provisions a local [DigitalOcean](https://digitalocean.com) Kubernetes cluster to host your cloud native environment locally.

Your DigitalOcean cluster will include:

| Application | Description |
| ------------------------------- | ----------------------------------------------------------------- |
| Argo CD | GitOps Continuous Delivery |
| Argo Workflows | Application Continuous Integration |
| Atlantis | Terraform Workflow Automation |
| cert-manager | Certificate Automation Utility |
| ChartMuseum | Helm Chart Registry |
| External Secrets Operators | Syncs Kubernetes secrets with Vault secrets |
| GitHub Action Runner Controller | GitHub Self-Hosted CI Executor |
| HashiCorp Vault | Secrets Management |
| Metaphor | (development, staging, production) instance of sample Next.js app |
| Ingress Nginx | Ingress Controller |
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
### GitHub Prerequisites

- 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.
Loading

0 comments on commit f673ae7

Please sign in to comment.