Skip to content

Commit

Permalink
Update gopaddle/gopaddle version in place (#1023)
Browse files Browse the repository at this point in the history
  • Loading branch information
adamkpickering authored Jun 6, 2024
1 parent f624708 commit e1267a2
Show file tree
Hide file tree
Showing 7 changed files with 112 additions and 43 deletions.
Binary file modified assets/gopaddle/gopaddle-5.tgz
Binary file not shown.
59 changes: 59 additions & 0 deletions charts/gopaddle/gopaddle/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
<img alt="gopaddle" src="https://gopaddle-marketing.s3.ap-southeast-2.amazonaws.com/gopaddle.png?s=200&v=4" width="200" align="left">

# [gopaddle](https://gopaddle.io/)
[![Slack Channel](https://img.shields.io/badge/Slack-Join-purple)](https://gopaddleio.slack.com/join/shared_invite/zt-1l73p8wfo-vYk1XcbLAZMo9wcV_AChvg#/shared-invite/email/expanded-email-form)

## Kubernetes IDE with AI Co-pilot

gopaddle is a low-code Kubernetes IDE with AI Co-pilot. The low-code IDE has advanced resource filtering, a YAML free form editor, and developer tools like a container terminal and logs. The AI Co-pilot provides interactive troubleshooting.

## Supported AI Models

ChatGPT models gpt-4o and gpt-4-turbo.

## Installation

### Minimum System Requirements

gopaddle installation requires a minimum of `4GB RAM` and `2 vCPUs`

### Firewall Ports

The following incoming firewall ports need to be opened - `30003`.

### Step to install using Helm Charts

Add the helm repo

```sh
helm repo add gopaddle https://gopaddle-io.github.io/gopaddle-lite/
helm repo update
```
Install the chart

```sh
helm install gp-lite gopaddle/gopaddle --namespace gopaddle --create-namespace
```

### Validating the installation
gopaddle installation can be validated by waiting for the gopaddle services to move to `ready` state.

```sh
kubectl wait --for=condition=ready pod -l released-by=gopaddle -n gopaddle
```

One the installation is complete, gopaddle dashboard can be accessed at http://[NodeIP]:30003/

NodeIP can be obtained by executing the command below:

```sh
kubectl get nodes -o wide
```

## Usage

Open the `Ask AI` option, select the LLM Type as `OpenAI`, select a model, and provide the API Key.

To get the OpenAI API Key, check here: [OpenAI API Key](https://platform.openai.com/api-keys).


61 changes: 31 additions & 30 deletions charts/gopaddle/gopaddle/app-readme.md
Original file line number Diff line number Diff line change
@@ -1,52 +1,53 @@
## gopaddle
gopaddle is a low-code Internal Developer Plaform (IDP) for Kubernetes developers and operators. It provides a self-service portal through which developers can scaffold code to containers, auto-generate YAML files, build docker images, deploy applications on to Kubernetes and manage the application life cycle from a single dashboard.
<img alt="gopaddle" src="https://gopaddle-marketing.s3.ap-southeast-2.amazonaws.com/gopaddle.png?s=200&v=4" width="200" align="left">

### Version Number
# [gopaddle](https://gopaddle.io/)
[![Slack Channel](https://img.shields.io/badge/Slack-Join-purple)](https://gopaddleio.slack.com/join/shared_invite/zt-1l73p8wfo-vYk1XcbLAZMo9wcV_AChvg#/shared-invite/email/expanded-email-form)

gopaddle Lite - v4.2.5
## Kubernetes IDE with AI Co-pilot
gopaddle is a low-code Kubernetes IDE with AI Co-pilot. The low-code IDE has advanced resource filtering, a YAML free form editor, and developer tools like a container terminal and logs. The AI Co-pilot provides interactive troubleshooting.

### Pre-requisite
a) Install the necessary CSI driver to provision Persistent Volumes.
## Installation

For eg., If you are running Rancher RKE on AWS, install the AWS EBS CSI driver.
### Minimum System Requirements
gopaddle installation requires a minimum of `8GB RAM` and `4 vCPUs`

```
kubectl create secret generic aws-secret --namespace kube-system --from-literal "key_id=<aws-access-key>" --from-literal "access_key=<aws-secret-key>"
kubectl apply -k "github.com/kubernetes-sigs/aws-ebs-csi-driver/deploy/kubernetes/overlays/stable/?ref=release-1.13"
```
### Firewall Ports
The following incoming firewall ports need to be opened - `30003`.

You can find more information on AWS CSI Driver [here](https://github.com/kubernetes-sigs/aws-ebs-csi-driver#kubernetes-version-compatibility-matrix)
### Step to install using Helm Charts

In case of AWS CSI Driver, patch the first node in the cluster to add the labels `topology.kubernetes.io` & `topology.kubernetes.io/zone` to point to the node's region and zone. The below script patches the node labels to `us-east-1` region and `us-east-1a` zone.
Add the helm repo

```sh
helm repo add gopaddle https://gopaddle-io.github.io/gopaddle-lite/
helm repo update
```
apt install jq -y
node=$(kubectl get nodes -o json | jq -r '.items[0].metadata.annotations["rke2.io/hostname"]')
kubectl patch node $node -p '{"metadata": {"labels":{"topology.kubernetes.io/region": "us-east-1"}}}'
kubectl patch node $node -p '{"metadata": {"labels":{"topology.kubernetes.io/zone":"us-east-1a"}}}'
Install the chart

```sh
helm install gp-lite gopaddle/gopaddle --namespace gopaddle --create-namespace
```

b) Create default storageClass.
Create a storageClass named `standard` from the Rancher Dashboard https://rancher-endpoint/dashboard/c/local/explorer/storage.k8s.io.storageclass.
### Validating the installation
gopaddle installation can be validated by waiting for the gopaddle services to move to `ready` state.

In case of AWS, create an Amazon EBS Disk.
```sh
kubectl wait --for=condition=ready pod -l released-by=gopaddle -n gopaddle
```

<img src="https://user-images.githubusercontent.com/74309181/211659744-adde9594-5a33-4fea-8578-b9347142ba1c.png" width="80%">
One the installation is complete, gopaddle dashboard can be accessed at http://[NodeIP]:30003/

Patch the storageClass `standard` and add the `is-default-class` annotation to make it the default storageClass.
NodeIP can be obtained by executing the command below:

```
kubectl patch storageclass standard -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
```sh
kubectl get nodes -o wide
```

c) Open INBOUND firewall ports 30003 and 30004. If RKE is installed on AWS, then open the ports 30003 and 30004 in the instance security group.
## Usage

Once the gopaddle chart is installed, the dashboard can be accessed at http://node_ip:30003
Open the `Ask AI` option, select the LLM Type as `OpenAI`, select a model, and provide the API Key.

### Support URL
To get the OpenAI API Key, check here: [OpenAI API Key](https://platform.openai.com/api-keys).

[![Slack Channel](https://img.shields.io/badge/Slack-Join-purple)](https://gopaddleio.slack.com/join/shared_invite/zt-1l73p8wfo-vYk1XcbLAZMo9wcV_AChvg#/shared-invite/email/expanded-email-form)

### Documentation

[Documentation](https://help.gopaddle.io)
9 changes: 0 additions & 9 deletions charts/gopaddle/gopaddle/questions.yaml

This file was deleted.

18 changes: 18 additions & 0 deletions charts/gopaddle/gopaddle/templates/NOTES.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
===================================

Congratulations on installing gopaddle!

You are now ready to access the Kubernetes IDE. Here’s how:

Step 1: Wait for gopaddle pods to move to READY state: `kubectl wait --for=condition=ready pod -l released-by=gopaddle -n gopaddle`

Step 2: Get the Cluster IP - Run the following command to find your cluster's IP address: `kubectl get nodes -o wide`

Step 3: Access the gopaddle UI - Open your web browser and go to: `http://<cluster-node-ip>:30003`. Replace `<cluster-node-ip>` with the IP address you obtained in Step 2.

For Docker Desktop Users: If you are using Docker Desktop Kubernetes Engine, you need to forward the port to access the gopaddle service. Run: `kubectl port-forward svc/gopaddle-service -n gopaddle 30003:65080`

Then, open your web browser and go to: `http://localhost:30003`

Enjoy using gopaddle!

2 changes: 1 addition & 1 deletion charts/gopaddle/gopaddle/values.yaml
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
CLUSTER_TYPE: "k8s" # CLUSTER_TYPE - docker or k8s
imageTag: "multi-arch.1"
imageTag: "5.0"
6 changes: 3 additions & 3 deletions index.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18530,11 +18530,11 @@ entries:
catalog.cattle.io/release-name: gopaddle
apiVersion: v2
appVersion: "5"
created: "2024-06-05T00:55:25.01459904Z"
created: "2024-06-06T15:15:11.685530761-06:00"
description: Kubernetes IDE with AI Co-pilot
digest: 4f56e39c70605bdeac453f012e472df3652b245a9d9073e4d902f31cd7bae8ff
digest: 9791c680e52099b267dfadb74275c7a5de0b866dbfdbadb656ac6c254acd8aae
home: https://gopaddle.io
icon: file://assets/icons/gopaddle.png
icon: https://gopaddle-marketing.s3.ap-southeast-2.amazonaws.com/gopaddle.png
keywords:
- low-code
- IDE
Expand Down

0 comments on commit e1267a2

Please sign in to comment.