Skip to content

Commit

Permalink
[frinx-machine] Add chart FRINX-machine (#13)
Browse files Browse the repository at this point in the history
* Add chart FRINX-machine

Signed-off-by: Simon Misencik <[email protected]>
  • Loading branch information
SimonMisencik authored May 10, 2022
1 parent 0a9d478 commit 90a6574
Show file tree
Hide file tree
Showing 7 changed files with 258 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .github/ct_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,5 @@ additional-commands:
excluded-charts:
# This chart is for testing purposes and has a dependency on uniflow and inventory charts
- demo-workflows
# Insufficient resources in github action for this chart
- frinx-machine
23 changes: 23 additions & 0 deletions charts/frinx-machine/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
30 changes: 30 additions & 0 deletions charts/frinx-machine/Chart.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
dependencies:
- name: krakend
repository: https://FRINXio.github.io/helm-charts
version: 1.0.1
- name: frinx-frontend
repository: https://FRINXio.github.io/helm-charts
version: 1.0.0
- name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 11.1.22
- name: uniresource
repository: https://FRINXio.github.io/helm-charts
version: 1.0.1
- name: uniflow
repository: https://FRINXio.github.io/helm-charts
version: 1.1.0
- name: inventory
repository: https://FRINXio.github.io/helm-charts
version: 2.0.0
- name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 11.1.22
- name: uniconfig
repository: https://FRINXio.github.io/helm-charts
version: 1.0.2
- name: demo-workflows
repository: https://FRINXio.github.io/helm-charts
version: 1.0.0
digest: sha256:e9b86cdaf51674ead3bbf6f48199d4de11e4f39f0d7a0b35243ce09982342917
generated: "2022-04-22T11:28:08.679398895+02:00"
54 changes: 54 additions & 0 deletions charts/frinx-machine/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
apiVersion: v2
name: frinx-machine
description: Kubernetes deployment of FRINX-machine
icon: https://avatars.githubusercontent.com/u/23452093?s=200&v=4
type: application
version: 0.1.0
maintainers:
- name: FRINX
dependencies:
- condition: krakend.enabled
name: krakend
repository: https://FRINXio.github.io/helm-charts
version: 1.x.x

- condition: frinx-frontend.enabled
name: frinx-frontend
repository: https://FRINXio.github.io/helm-charts
version: 1.x.x

- condition: postgresql.enabled
name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 11.x.x

- condition: uniresource.enabled
name: uniresource
repository: https://FRINXio.github.io/helm-charts
version: 1.x.x

- condition: uniflow.enabled
name: uniflow
repository: https://FRINXio.github.io/helm-charts
version: 1.x.x

- condition: inventory.enabled
name: inventory
repository: https://FRINXio.github.io/helm-charts
version: 2.x.x

- condition: uniconfig-postgresql.enabled
name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 11.x.x
alias: uniconfig-postgresql

- condition: uniconfig.enabled
name: uniconfig
repository: https://FRINXio.github.io/helm-charts
version: 1.x.x

- condition: demo-workflows.enabled
name: demo-workflows
repository: https://FRINXio.github.io/helm-charts
version: 1.x.x
67 changes: 67 additions & 0 deletions charts/frinx-machine/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# frinx-machine

FRINX Machine is a dockerized deployment of multiple elements. The FRINX Machine enables large scale automation of network devices, services and retrieval of operational state data from a network. User specific workflows are designed through the use of OpenConfig NETCONF & YANG models, vendor native models, and the CLI. The FRINX Machine uses dockerized containers that are designed and tested to work together to create a user specific solution. Further information is available on [docs.frinx.io](https://docs.frinx.io/frinx-machine/getting-started/).

## Prerequisites

* Kubernetes 1.19+
* Helm 3.2.0+

## Get Repo Info

```console
helm repo add frinx https://FRINXio.github.io/helm-charts
helm repo update
```

## Install Chart

```console
helm install [RELEASE_NAME] frinx/frinx-machine
```

## Upgrading Chart

```console
helm upgrade [RELEASE_NAME] frinx/frinx-machine
```

## Uninstall Chart

```console
helm uninstall [RELEASE_NAME]
```

## Dependencies

| Chart | Documentation |
|-----------|-------------|
| `krakend` | [ArtifactHub](https://artifacthub.io/packages/helm/frinx-helm-charts/krakend) |
| `frinx-frontend` | [ArtifactHub](https://artifacthub.io/packages/helm/frinx-helm-charts/frinx-frontend) |
| `postgresql` | [ArtifactHub](https://artifacthub.io/packages/helm/bitnami/postgresql) |
| `uniresource` | [ArtifactHub](https://artifacthub.io/packages/helm/frinx-helm-charts/uniresource) |
| `uniflow` | [ArtifactHub](https://artifacthub.io/packages/helm/frinx-helm-charts/uniflow) |
| `inventory` | [ArtifactHub](https://artifacthub.io/packages/helm/frinx-helm-charts/inventory) |
| `uniconfig-postgresql` | [ArtifactHub](https://artifacthub.io/packages/helm/bitnami/postgresql) |
| `uniconfig` | [ArtifactHub](https://artifacthub.io/packages/helm/frinx-helm-charts/uniconfig) |
| `demo-workflows` | [ArtifactHub](https://artifacthub.io/packages/helm/frinx-helm-charts/demo-workflows) |

## Requirements

| **Minimal hardware requirements for production** | |
|--------------------------------------------------|----------------------|
| Compute (vCores) | 8 |
| Memory (RAM) | 24 GB |
| Storage | 40 GB |

| **Minimal hardware requirements for development** | |
|---------------------------------------------------|----------------------|
| Compute (vCores) | 4 |
| Memory (RAM) | 16 GB |
| Storage | 40 GB |

## License
A 30-day trial license of UniConfig is included, if you would like to change the license, replace the license string in values.yaml `uniconfig.license` env variable with your own.

## Where to Purchase
For information regarding sales, visit [frinx.io](https://frinx.io/) or contact us at [email protected]
Empty file.
82 changes: 82 additions & 0 deletions charts/frinx-machine/values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# Default values for FRINX-machine.

krakend:
enabled: true
fullnameOverride: "krakend"

frinx-frontend:
enabled: true
fullnameOverride: "frinx-frontend"

postgresql:
enabled: true
fullnameOverride: "frinx-postgresql"
auth:
enablePostgresUser: true
username: postgresU
password: postgresP
database: uniresource
architecture: standalone
primary:
initdb:
scripts:
init_db.sql: |
CREATE DATABASE schellar;
CREATE DATABASE conductor;
CREATE DATABASE inventory;
uniresource:
enabled: true
fullnameOverride: "uniresource"
postgresql:
enabled: false
env:
PSQL_HOSTNAME: frinx-postgresql
RM_DB_CONNECTION_STRING: "postgres://postgresU:postgresP@frinx-postgresql:5432/uniresource?sslmode=disable"

uniflow:
enabled: true
fullnameOverride: "workflow-proxy"
postgresql:
enabled: false
env:
SPRING_DATASOURCE_HOSTNAME: frinx-postgresql
SPRING_DATASOURCE_URL: jdbc:postgresql://frinx-postgresql:5432/conductor?charset=utf8&parseTime=true&interpolateParams=true
CONDUCTOR_EXTERNAL_PAYLOAD_STORAGE_POSTGRES_URL: jdbc:postgresql://frinx-postgresql:5432/conductor?charset=utf8&parseTime=true&interpolateParams=true
schellarEnv:
POSTGRES_DATABASE_URL: "host=frinx-postgresql port=5432 user=postgresU password=postgresP database=schellar"

inventory:
enabled: true
fullnameOverride: "inventory"
postgresql:
enabled: false
env:
POSTGRES_HOSTNAME: frinx-postgresql

uniconfig-postgresql:
enabled: true
fullnameOverride: "uniconfig-postgresql"
auth:
enablePostgresUser: true
username: postgresU
password: postgresP
database: uniconfig
architecture: standalone

uniconfig:
enabled: true
fullnameOverride: "uniconfig"
postgresql:
enabled: false
dbPersistence:
connection_databaseLocations_host: "uniconfig-postgresql"
connection_dbName: "uniconfig"
connection_username: "postgresU"
connection_password: "postgresP"

demo-workflows:
enabled: false
fullnameOverride: "demo-workflows"
sample-topology:
fullnameOverride: "sample-topology"

0 comments on commit 90a6574

Please sign in to comment.