vmware-samples / vcenter-event-broker-appliance

The VMware Event Broker Appliance Fling enables customers to unlock the hidden potential of events in their SDDC to easily create event-driven automation.
Other
157 stars 68 forks source link

[BUG] Helm Chart Deployment Fails #1087

Closed lamw closed 10 months ago

lamw commented 1 year ago

Describe the bug User reported issue deploying VEBA via helm chart with following error:

index.go:346: skipping loading invalid entry for chart "event-router" "release-0.5.0" from /root/.cache/helm/repository/vmware-veba-index.yaml: validation: chart.metadata.version "release-0.5.0" is invalid

After speaking w/Harbor team providing distribution, it looks like there was an upgrade just a few days ago and the version that is used (v2.8.0), Harbor no longer supports ChartMuseum and requires Helm Charts to be OCI compliant:

Starting with 2.8.0, Harbor no longer support ChartMuseum and pre-OCI artifacts. Please be sure that your project artifacts are OCI compliant prior to the upgrade.

After re-pushing our latest v0.7.6 Helm Chart, the following was successful:

helm show values oci://projects.registry.vmware.com/veba/event-router --version v0.7.6
Pulled: projects.registry.vmware.com/veba/event-router:v0.7.6
Digest: sha256:ff2b78242da9b80c7339838a8ac24f5fb9d805b62e8215ea15101fc0611cf9d4
### image settings
replicaCount: 1

image:
  repository: us.gcr.io/daisy-284300/veba/router
  pullPolicy: Always
  fullImage: "" # repo/image:tag format to easily overwrite default for testing

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

serviceAccount:
  name: "vmware-event-router"

podAnnotations: {}

podSecurityContext: {}
  # fsGroup: 2000

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

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

autoscaling:
  enabled: false

nodeSelector: {}

tolerations: []

affinity: {}

### event router config
eventrouter:
  # general event router config settings
  config:
    # name of the router configuration
    name: config
    # name of the router configuration file
    fileName: config.yaml
    # where to mount the configuration file (with trailing "/")
    mountPath: /etc/vmware-event-router/
    # debug,info,warn,error
    logLevel: info
    # print logs as JSON
    json: false

  # define default event provider and processor
  eventProvider: vcenter
  eventProcessor: openfaas

  # vcenter event provider default settings
  vcenter:
    # vcenter server address (may omit /sdk)
    address: https://10.0.0.1/sdk
    # username to use for connecting to vcenter
    username: administrator@vsphere.local
    # password to use for connecting to vcenter
    password: ReplaceMe
    # ignore TLS certificate warnings (e.g. self-signed certificate)
    insecure: false

  # webhook event provider default settings
  webhook:
    port: 8080
    path: "/webhook"
    username: "" # empty disables basic_auth
    password: ""

  # horizon event provider default settings
  horizon:
    address: https://api.myhorizon.corp.local
    insecure: false
    domain: "corp"
    username: "administrator"
    password: "ReplaceMe"

  # openfaas event processor default settings
  openfaas:
    # gateway address, e.g. deployment_name.namespace:port when deployed in Kubernetes
    address: http://gateway.openfaas:8080
    # async function invocation mode
    async: false
    # enable basic auth against gateway
    basicAuth: true
    # basic auth username
    username: admin
    # basic auth password
    password: ReplaceMe

  # knative event processor default settings
  knative:
    encoding: binary
    insecureSSL: false
    destination:
      ref:
        apiVersion: eventing.knative.dev/v1
        kind: Broker
        name: default
        namespace: default

  # metrics server default settings (uses default/internal metrics server)
  metrics:
    type: ClusterIP
    port: 8082

So it looks like we just need to update Helm instructions and process going forward. This reference[1] was useful for debugging

[1] - https://vra4u.com/2023/01/11/harbor-quick-tip-leverage-oci-registry-with-helm/

github-actions[bot] commented 11 months ago

This issue is stale because it has been open for 90 days with no activity. It will automatically close after 30 more days of inactivity. Mark as fresh by adding the comment /remove-lifecycle stale.

github-actions[bot] commented 10 months ago

Closing issue due to inactivity. Please reopen if needed