...
- Spec schema sample to be added under REQ1 section and also updated component spec schema file; submit to gerrit with new updates (including #2, #3, #4)
5. Build helm chart generator taking as inputs template directory and template list file to be used for chart generation and perform lint for consolidated charts. - No longer applicable; based on design
Note: Use base/default template if corresponding template not found on specified template directory
6. Support MAPPING requirement – ENV SETTING (refer REQ #1 for details) - DONE - 1.0.0
...
7. Support MAPPING requirement – CMPv2 Certificates (refer REQ #3 for details) - Target 06/17 completion24 completion
Include support for base + addon chart structure (certificate.yaml will be optional)
Add validation if enabled in spec and certificate.yaml not provided - tool must error
8. Support MAPPING requirement – Postgres (refer REQ #5 for details)
...
- Modify spec to align with new schema
- https://git.onap.org/dcaegen2/collectors/hv-ves/tree/dpo/spec/hv-ves-collector.componentspec.json
- https://git.onap.org/dcaegen2/collectors/ves/tree/dpo/spec/vescollector-componentspec.json
- https://git.onap.org/dcaegen2/analytics/tca-gen2/tree/dcae-analytics/dpo/tcagen2_spec.json
- https://git.onap.org/dcaegen2/services/pm-mapper/tree/dpo/spec/pmmapper-component-spec.json
- https://git.onap.org/dcaegen2/collectors/datafile/tree/datafile-app-server/dpo/spec/datafile-component-spec.json
- https://git.onap.org/dcaegen2/services/prh/tree/dpo/spec/prh.componentspec.json
- Generate charts and deploy and check if component comes up clean
- Environment for test to be setup/checked (onap5) - Vijay Kumar - Target DONE (06/14 completion/17/2021)
Issues found during Testing
- While generating charts, Getting NPEs when component spec does not contain auxiliary helm section and policy-info section. It should provide exceptions so that one can add these sections. Also, policy-info section should be optional and should not throw exception. Below is the list of things - need to determine required/optional
logDirectory
certDirectory
tlsServer - optional
auxillary / helm section - Mandatory
policy-info - optional
- When I try to install the generated helm chart tgz file, below error happens in first try
Error: unable to build kubernetes objects from release manifest: error validating "": error validating data: [ValidationError(Deployment.spec.template.spec.containers[0].readinessProbe.httpGet): missing required field "port" in io.k8s.api.core.v1.HTTPGetAction, ValidationError(Deployment.spec.template.spec.containers[0].readinessProbe.periodSeconds): invalid type for io.k8s.api.core.v1.Probe.periodSeconds: got "string", expected "integer", ValidationError(Deployment.spec.template.spec.containers[0].readinessProbe.timeoutSeconds): invalid type for io.k8s.api.core.v1.Probe.timeoutSeconds: got "string", expected "integer"]
It does not like period seconds and timeoutseconds with 10s or 15s, it accepts integer 10 or 15. Also health check port is required field (so need to populate port) - how do we check this ? - After manually fixing, get an error. Error: rendered manifests contain a resource that already exists. Unable to continue with install: ConfigMap "dev-dcae-ves-collector-application-config-configmap" in namespace "onap" exists and cannot be imported into the current release: invalid ownership metadata; annotation validation error: key "meta.helm.sh/release-name" must equal "dev-dcae-ves-collector-new": current value is "dev-dcaegen2-services"
...