Skip to content
This repository has been archived by the owner on Oct 30, 2023. It is now read-only.

Commit

Permalink
Merge pull request #59 from archie951/master
Browse files Browse the repository at this point in the history
Helm charts for DeepSight SuperSecure Application
  • Loading branch information
abjyoti authored May 6, 2021
2 parents a741872 + 3e52106 commit 97ab7fb
Show file tree
Hide file tree
Showing 7 changed files with 291 additions and 0 deletions.
10 changes: 10 additions & 0 deletions applications/supersecure/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# SPDX-License-Identifier: Apache-2.0
# Copyright (c) 2021 DeepSight AI Labs

apiVersion: v2
name: deepsight-supersecure
type: application
version: 2.0
description: DeepSight SuperSecure Application
appVersion: 2.0

92 changes: 92 additions & 0 deletions applications/supersecure/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
```text
SPDX-License-Identifier: Apache-2.0
Copyright (c) 2021 DeepSight AI Labs
```


# **Supersecure Application Overview**
SuperSecure is a universally compatible retrofit solution, that works with any CCTV system, any camera, any resolution and turn it into an AI powered Smart Surveillance Solution to detect potential threats with high accuracy and trigger instant alerts to save lives and protect assets.


## **Pre Requisites – Resources Required**

| **Resource Information** | |
|------------------------------------|----------------------|
| Application Type | Video-Analytics |
| Compute (vCores) | 8 |
| Memory (RAM) | 16 GB |
| Storage | 200 GB |
| Host OS | CentOS 7.6.1810 |



## **Where to Purchase**
Contact [email protected]


## Pre Requisites - Installing OpenNESS
|**Configuration** | |
| ----------------------------------|-----------------------|
| OpenNESS Version | 20.12.02 |
| Flavor Used | Minimal |
| Distribution | OpenSource |


Follow below link to setup controller and edge-node for installing OpenNESS.

https://github.com/open-ness/specs/blob/openness-20.12.02/doc/getting-started/network-edge/controller-edge-node-setup.md

* Go to openness-experience-kits/ directory and comment out the grub role (role: machine_setup/grub) in the **network_edge.yml** file.
* Run the deployment script as ./deploy_ne.sh

## Loading Docker Images
docker image load -i dsal_openvino_v2.tar.gz

## Installing SuperSecure Application using helm

Run the following commands to deploy through helm:

`helm install supersecure ./`

Sample Output would look like:

> `NAME: supersecure`
>
> `LAST DEPLOYED:`
>
> `NAMESPACE: default`
>
> `STATUS: deployed`
>
> `REVISION: 1`
>
> `TEST SUITE: None`
>
> `NOTES:`
>
> `# SPDX-License-Identifier: Apache-2.0`
>
> `# Copyright (c) 2021 DeepSight AI Labs`
>
> `deepsight-supersecure was installed.`
>
> `Your release is named supersecure.`
>
> `To learn more about the release, try:`
>
> `$ helm status supersecure`
>
> `$ helm get supersecure`

## Uninstall SuperSecure application
To uninstall application run below command:

`helm uninstall supersecure`

## Testing Steps
For further instructions about steps for testing, contact Nishant ([email protected])

## **Related material**
* https://deepsightlabs.com/

11 changes: 11 additions & 0 deletions applications/supersecure/templates/NOTES.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# SPDX-License-Identifier: Apache-2.0
# Copyright (c) 2021 DeepSight AI Labs

{{ .Chart.Name }} was installed.

Your release is named {{ .Release.Name }}.

To learn more about the release, try:

$ helm status {{ .Release.Name }}
$ helm get {{ .Release.Name }}
66 changes: 66 additions & 0 deletions applications/supersecure/templates/_helpers.tpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# SPDX-License-Identifier: Apache-2.0
# Copyright (c) 2021 DeepSight AI Labs

{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "deepsight-supersecure.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
{{- end -}}

{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "deepsight-supersecure.fullname" -}}
{{- if .Values.fullnameOverride -}}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- $name := default .Chart.Name .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}
{{- end -}}

{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "deepsight-supersecure.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}

{{/*
Common labels
*/}}
{{- define "deepsight-supersecure.labels" -}}
helm.sh/chart: {{ include "deepsight-supersecure.chart" . }}
{{ include "deepsight-supersecure.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end -}}

{{/*
Selector labels
*/}}
{{- define "deepsight-supersecure.selectorLabels" -}}
app.kubernetes.io/name: {{ include "deepsight-supersecure.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end -}}

{{/*
Create the name of the service account to use
*/}}
{{- define "deepsight-supersecure.serviceAccountName" -}}
{{- if .Values.serviceAccount.create -}}
{{ default (include "deepsight-supersecure.fullname" .) .Values.serviceAccount.name }}
{{- else -}}
{{ default "default" .Values.serviceAccount.name }}
{{- end -}}
{{- end -}}
21 changes: 21 additions & 0 deletions applications/supersecure/templates/dsal-pod.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# SPDX-License-Identifier: Apache-2.0
# Copyright (c) 2021 DeepSight AI Labs

---
apiVersion: v1
kind: Pod
metadata:
name: {{ .Values.deepsight_supersecure.name }}
labels:
app: {{ .Values.deepsight_supersecure.name }}
spec:
containers:
- name: {{ .Values.deepsight_supersecure.name }}
image: "{{ .Values.deepsight_supersecure.image }}:{{ .Values.deepsight_supersecure.tag }}"
imagePullPolicy: Never
ports:
- containerPort: {{ .Values.service.godeepGuiPort }}
- containerPort: {{ .Values.service.godeepSetupServerPort }}
command: ["/bin/sh","-c"]
args: ["/opt/godeep/entry.sh && tail -f /dev/null"]

22 changes: 22 additions & 0 deletions applications/supersecure/templates/dsal-service.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# SPDX-License-Identifier: Apache-2.0
# Copyright (c) 2021 DeepSight AI Labs

---
apiVersion: v1
kind: Service
metadata:
name: {{ .Values.deepsight_supersecure.name }}
labels:
app: {{ .Values.deepsight_supersecure.name }}
spec:
type: {{ .Values.service.type }}
ports:
- port: {{ .Values.service.godeepGuiPort }}
targetPort: {{ .Values.service.godeepGuiPort }}
name: http1
- port: {{ .Values.service.godeepSetupServerPort }}
targetPort: {{ .Values.service.godeepSetupServerPort }}
name: http2
selector:
app: {{ .Values.deepsight_supersecure.name }}

69 changes: 69 additions & 0 deletions applications/supersecure/values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
# SPDX-License-Identifier: Apache-2.0
# Copyright (c) 2021 DeepSight AI Labs

#DeepSight SuperSecure Values
deepsight_supersecure:
image: dsal_openvino
tag: v2.0
replicas: 1
name: dsal-openvino

#imagePullSecrets: []
#nameOverride: ""
#fullnameOverride: ""

serviceAccount:
# Specifies whether a service account should be created
create: true
# Annotations to add to the service account
annotations: {}
# The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name:

podSecurityContext: {}
# fsGroup: 2000

securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000

service:
type: NodePort
godeepGuiPort: 80
godeepSetupServerPort: 5050

ingress:
enabled: false
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
hosts:
- host: chart-example.local
paths: []
tls: []
# - secretName: chart-example-tls
# hosts:
# - chart-example.local

resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi

nodeSelector: {}

tolerations: []

affinity: {}

0 comments on commit 97ab7fb

Please sign in to comment.