This package defines an Helm chart for kubernetes based opencloud services deployment.

It can be used to fully deploy opencloud in a development/lighweight kubernetes deployment, for quick testing
or to ease opencloud dependencies (dex, mongo, mongo-express, ...) deployment.

Kind (https://kind.sigs.k8s.io/) is used here as a lightweight kubernetes deployment. Obviously, any kubenetes compliant 
environment is a legitimate target.

# Locally built microservices deployment procedure

## Clone the repository

```
git clone https://cloud.o-forge.io/plm/oc-k8s.git
```

## Install kind

Follow instructions here https://kind.sigs.k8s.io/

## Install helm

Download suitable helm client here https://helm.sh/docs/intro/install/

## Fire up a kind cluster

Execute following script to create a single node development k8s cluster

```
create_kind_cluster.sh
```

WARNING APACHE & NGINX ARE NOT RUNNING:
- `sudo /etc/init.d/apache2 stop`
- `sudo nginx -s stop`

It will create a *opencloud* docker container running kubernetes services.

## Clone all the microservices repositories taking part of the opencloud environment

Execute following script to clone all the needed parts:

```
clone_opencloud_microservices.sh
```

## Build everything

You need to build and publish all the opencloud microservices images in the kind cluster before deploying the Helm package.

Proceed as following:

```
build_opencloud_microservices.sh
```

## Deploy the opencloud chart

```
install_development.sh
```

Feel free to modify/create a new opencloud/dev-values.yaml. Provided setup should work out of the box, but is not suitable for production usage.

## Hostname settings

Edit your /etc/hosts file, and add following line:

```
127.0.0.1 beta.opencloud.com
```

## Done

Everything should be operational now, go to http://beta.opencloud.com and enjoy the ride

# Prebuilt microservices deployment procedure

TODO

# First steps

Go to http://beta.opencloud.com/users

Log in using default user/password combo ldapadmin/ldapadmin

Create a new user, or change the default one

Go to http://beta.opencloud.com

Log in using your fresh credentials

Do stuff

You can go to http://beta.opencloud.com/mongoexpress

... for mongo express web client access (default login/password is test/testme)

You can go to http://localhost/dashboard/

... for access to Traefik reverse proxy front-end