acumos AI clio installation fails with "error converting YAML to JSON"

10/15/2020

I have been trying to install clio release.

VM : ubuntu 18.04 16 Cores 32 GB RAM 500 GB Storage.

Command :

bash /home/ubuntu/system-integration/tools/aio_k8s_deployer/aio_k8s_deployer.sh all acai-server ubuntu generic

All most all steps of installation have completed successfully but during "setup-lum", I got below error.

Error:

YAML parse error on lum-helm/templates/deployment.yaml: error converting YAML to JSON: yaml: line 36: mapping values are not allowed in this context

Workaround :

I was able to get away with these error(tested via helm install --dry-run ) by a. removing "resource, affinity and tolerant blocks b. replace "Release.Name" with actual release value( e.g. license-clio-configmap)

but when I run the full installation command, those helms charts are updated again.

Full error :

...

  • helm install -f kubernetes/values.yaml --name license-clio --namespace default --debug ./kubernetes/license-usage-manager/lum-helm debug Created tunnel using local port: '46109'

debug SERVER: "127.0.0.1:46109"

debug Original chart version: "" debug CHART PATH: /deploy/system-integration/AIO/lum/kubernetes/license-usage-manager/lum-helm

YAML parse error on lum-helm/templates/deployment.yaml: error converting YAML to JSON: yaml: line 36: mapping values are not allowed in this context

Yaml of deployment.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: {{ template "lum-helm.fullname" . }}
  labels:
    app: {{ template "lum-helm.name" . }}
    chart: {{ template "lum-helm.chart" . }}
    release: {{ .Release.Name }}
    heritage: {{ .Release.Service }}
spec:
  replicas: {{ .Values.replicaCount }}
  selector:
    matchLabels:
      app: {{ template "lum-helm.name" . }}
      release: {{ .Release.Name }}
  template:
    metadata:
      labels:
        app: {{ template "lum-helm.name" . }}
        release: {{ .Release.Name }}
    spec:
      initContainers:
            - name: wait-for-db
              image: busybox:1.28
              command:
              - 'sh'
              - '-c'
              - >
                until nc -z -w 2 {{ .Release.Name }}-postgresql {{ .Values.postgresql.servicePort }} && echo postgresql ok;
                  do sleep 2;
                done
      containers:
        - name: {{ .Chart.Name }}
          image: nexus3.acumos.org:10002/acumos/lum-server:default
          imagePullPolicy: {{ .Values.image.pullPolicy }}
          env:
            - name: DATABASE_PASSWORD
              valueFrom:
                secretKeyRef:
                  name: {{ .Release.Name }}-postgresql
                  key: postgresql-password
            - name: NODE
          volumeMounts:
          - name: config-volume
            mountPath: /opt/app/lum/etc/config.json
            subPath: lum-config.json
          ports:
            - name: http
              containerPort: 2080
              protocol: TCP
          livenessProbe:
            httpGet:
              path: '/api/healthcheck'
              port: http
            initialDelaySeconds: 60
            periodSeconds: 10
            failureThreshold: 10
          readinessProbe:
            httpGet:
              path: '/api/healthcheck'
              port: http
            initialDelaySeconds: 60
            periodSeconds: 10
            failureThreshold: 10
          resources:
{{ toYaml .Values.resources | indent 12 }}
    {{- with .Values.nodeSelector }}
      nodeSelector:
{{ toYaml . | indent 8 }}
    {{- end }}
    {{- with .Values.affinity }}
      affinity:
{{ toYaml . | indent 8 }}
    {{- end }}
    {{- with .Values.tolerations }}
      tolerations:
{{ toYaml . | indent 8 }}
    {{- end }}
      volumes:
        - name: config-volume
          configMap:
            name: {{ .Release.Name }}-configmap
-- sandejai
acumos
kubernetes
yaml

2 Answers

10/19/2020

I found this workaround:

  • Uncommented the IMAGE-TAG line in the values.yaml file
  • Commented the following lines in the setup-lum.sh file (these were already executed at the first run and in this way I skipped the overwriting problem)
rm -frd kubernetes/license-usage-manager
git clone "https://gerrit.acumos.org/r/license-usage-manager" \
  kubernetes/license-usage-manager
-- Gianstiff
Source: StackOverflow

10/15/2020

This error was resolved as per https://stackoverflow.com/questions/61527179/error-trying-to-install-acumos-clio-using-aio

I provided an imagetag:1.3.2 in my actual value.yaml and lum deployment was successful

in acumos setup there are two copied of setup-lum.sh and values.yaml

actual :

~/system-integration/AIO/lum/kubernetes/value.yaml

and run time copy

~/aio_k8s_deployer/deploy/system-integration/AIO/lum/kubernetes/value.yaml

-- sandejai
Source: StackOverflow