Skip to content

Commit

Permalink
Update installation docs
Browse files Browse the repository at this point in the history
  • Loading branch information
candonov authored and a-hilaly committed Nov 11, 2024
1 parent a805e9f commit 576f2e5
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 17 deletions.
43 changes: 35 additions & 8 deletions website/docs/docs/getting-started/01-Installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,16 @@ Before you begin, ensure you have the following:

1. `Helm` 3.x installed
2. `kubectl` installed and configured to interact with your Kubernetes cluster
3. `awscli` installed

Log in to public ecr:
```
aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws
```
Expected result:
```
Login Succeeded
```

## Installation Steps

Expand All @@ -27,17 +37,23 @@ note that the software is still under active development and APIs may change.

Once authenticated, install kro using the Helm chart:

Fetch the latest release version from GitHub
```sh
# Fetch the latest release version from GitHub
export KRO_VERSION=$(curl -s \
https://api.github.com/repos/awslabs/kro/releases/latest | \
grep '"tag_name":' | \
sed -E 's/.*"([^"]+)".*/\1/' \
)

# Install kro using Helm
```
Validate `KRO_VERSION` populated with a version
```
echo $KRO_VERSION
```
Install kro using Helm
```
helm install kro oci://public.ecr.aws/kro/kro \
--namespace kro \
--set nameOverride=kro
--create-namespace \
--version=${KRO_VERSION}
```
Expand All @@ -50,28 +66,39 @@ correctly:
1. Check the Helm release:

```sh
helm list
helm -n kro list
```

You should see the "kro" release listed.
Expected result: You should see the "kro" release listed.
```
NAME NAMESPACE REVISION STATUS
kro kro 1 deployed
```

2. Check the kro pods:
```sh
kubectl get pods -n kro
```
You should see kro-related pods running.
Expected result: You should see kro-related pods running.
```
NAME READY STATUS RESTARTS AGE
kro-7d98bc6f46-jvjl5 1/1 Running 0 1s
```

## Upgrading kro

To upgrade to a newer version of kro, use the Helm upgrade command:

Replace `<new-version>` with the version you want to upgrade to.
```bash
# Replace `<new-version>` with the version you want to upgrade to.
export KRO_VERSION=<new-version>
```

# Upgrade the controller
Upgrade the controller
```
helm upgrade kro oci://public.ecr.aws/kro/kro \
--namespace kro \
--set nameOverride=kro
--version=${KRO_VERSION}
```

Expand Down
21 changes: 12 additions & 9 deletions website/docs/docs/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,17 @@ sidebar_position: 1

# What is kro?

**kro** (Kube Resource Orchestrator) is an open-source project that allows you
to define custom **Kubernetes APIs** using simple and straightforward
configuration. With kro, you can easily configure new custom APIs that create a
group of Kubernetes objects and the logical operations between them. kro
automatically calculates the order in which objects should be created. You can
pass values from one object to another, set default values for fields in the API
specification, and incorporate conditionals into your custom API definitions.
End users can easily call these custom APIs to create grouped resources.
**kro** (Kube Resource Orchestrator) is an open-source, Kubernetes-native project
that allows you to define custom **Kubernetes APIs** using simple and straightforward
configuration. With kro, you can easily configure new custom APIs that create a
group of Kubernetes objects and the logical operations between them. kro leverages
[CEL (Common Expression Language)](https://github.com/google/cel-spec), the same
language used by Kubernetes webhooks, for logical operations. Using CEL expressions,
you can easily pass values from one object to another and incorporate conditionals into
your custom API definitions. Based on the CEL expressions, kro automatically calculates
the order in which objects should be created. You can define default values for fields
in the API specification, streamlining the process for end users who can then
effortlessly invoke these custom APIs to create grouped resources.

# How does kro work?

Expand Down Expand Up @@ -110,4 +113,4 @@ involved, check out our
For bugs or feature requests, feel free to
[submit an issue](https://github.com/awslabs/kro/issues). You’re also invited to
join our
[community meeting](https://github.com/awslabs/kro?tab=readme-ov-file#kro).
[community](https://github.com/awslabs/kro?tab=readme-ov-file#community-participation).

0 comments on commit 576f2e5

Please sign in to comment.