keel-hq / keel

Kubernetes Operator to automate Helm, DaemonSet, StatefulSet & Deployment updates
https://keel.sh
Mozilla Public License 2.0
2.43k stars 280 forks source link

Helm V3 - failed to get tracked images #515

Closed rreilly-edr closed 4 years ago

rreilly-edr commented 4 years ago

Hi I don't see in the docs what to set for tiller with helm V3 when there is no tiller? i am only setting basic auth from the default chart keel version 0.16.0 helm version 3.3.0

# Default values for keel.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

image:
  repository: keelhq/keel
  tag: null
  pullPolicy: Always

# Enable insecure registries
insecureRegistry: false

# Polling is enabled by default,
# you can disable it setting value below to false
polling:
  enabled: true

# Helm provider support
helmProvider:
  enabled: true
  tillerNamespace: "kube-system"
  # optional Tiller address (if portforwarder tunnel doesn't work),
  # if you are using default configuration, setting it to
  # 'tiller-deploy:44134' is usually fine
  tillerAddress: 'tiller-deploy:44134'

# Google Container Registry
# GCP Project ID
gcr:
  enabled: false
  projectId: ""
  clusterName: ""
  pubSub:
    enabled: false

# Notification level (debug, info, success, warn, error, fatal)
notificationLevel: info

# AWS Elastic Container Registry
# https://keel.sh/v1/guide/documentation.html#Polling-with-AWS-ECR
ecr:
  enabled: false
  roleArn: ""
  accessKeyId: ""
  secretAccessKey: ""
  region: ""

# Webhook Notification
# Remote webhook endpoint for notification delivery
webhook:
  enabled: false
  endpoint: ""

# Slack Notification
# bot name (default keel) must exist!
slack:
  enabled: false
  botName: ""
  token: ""
  channel: ""
  approvalsChannel: ""

# Hipchat notification and approvals
hipchat:
  enabled: false
  token: ""
  channel: ""
  approvalsChannel: ""
  botName: ""
  userName: ""
  password: ""

mattermost:
  enabled: false
  endpoint: ""

# Mail notifications
mail:
  enabled: false
  from: ""
  to: ""
  smtp:
    server: ""
    port: 25
    user: ""
    pass: ""

# Basic auth on approvals
basicauth:
  enabled: true
  user: "admin"
  password: "admin"

# Keel service
# Enable to receive webhooks from Docker registries
service:
  enabled: false
  type: LoadBalancer
  externalPort: 9300
  clusterIP: ""

# Webhook Relay service
# If you don’t want to expose your Keel service, you can use https://webhookrelay.com/
# which can deliver webhooks to your internal Keel service through Keel sidecar container.
webhookRelay:
  enabled: false
  bucket: ""
  # webhookrelay.com credentials
  # Set the key and secret values here to create the keel-webhookrelay secret with this
  # chart -or- leave key and secret blank and create the keel-webhookrelay secret separately.
  key: ""
  secret: ""
  # webhookrelay docker image
  image:
    repository: webhookrelay/webhookrelayd
    tag: latest
    pullPolicy: IfNotPresent

# Use a secret file to define passwords and tokens of third parties.
secret:
  # Leave blank to use `keel.fullname`
  name: ""
  # Set to false to manage your own secret file, with terraform for example.
  create: true

# Keel self-update
# uncomment lines below if you want Keel to automaticly
# self-update to the latest release version
keel:
  # keel policy (all/major/minor/patch/force)
  policy: patch
  # trigger type, defaults to events such as pubsub, webhooks
  trigger: poll
  # polling schedule
  pollSchedule: "@every 3m"
  # images to track and update
  images:
    - repository: image.repository
      tag: image.tag

# RBAC manifests management
rbac:
  enabled: true
  serviceAccount:
    # Kubernetes service account name to be used for ClusterRoleBinding and Deployment.
    # name:
    # Create a new Kubernetes service account automatically. Set to false if you want to use your own service account.
    # If rbac.serviceAccount.name is not set, a new name for the service account is generated
    create: true

# Resources
resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 50m
    memory: 64Mi

# NodeSelector
nodeSelector: {}

affinity: {}

tolerations: {}

# base64 encoded json of GCP service account
# more info available here: https://cloud.google.com/kubernetes-engine/docs/tutorials/authenticating-to-cloud-platform
# e.g. --set googleApplicationCredentials=$(cat <JSON_KEY_FIEL> | base64)
googleApplicationCredentials: ""

# Enable DEBUG logging
debug: false

# This is used by the static manifest generator in order to create a static
# namespace manifest for the namespace that keel is being installed
# within. It should **not** be used if you are using Helm for deployment.
createNamespaceResource: false

podAnnotations: {}

serviceAnnotations: {}
# Useful for making the load balancer internal
# serviceAnnotations:
#    cloud.google.com/load-balancer-type: Internal

aws:
  region: null

podDisruptionBudget:
  enabled: false
  maxUnavailable: 1
  minAvailable: null

# Google Cloud Certificates
gcloud:
  managedCertificates:
    enabled: false
    domains:
      - ""

ingress:
  enabled: false
  labels: {}
  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

dockerRegistry:
  enabled: false
  name: ""
  key: ""

persistence:
  enabled: false
  storageClass: "-"
  size: 1Gi

I deploy keel and only enable basic auth, the following is the log for keel

time="2020-07-13T19:57:10Z" level=info msg="extension.credentialshelper: helper registered" name=aws
time="2020-07-13T19:57:10Z" level=info msg="extension.credentialshelper: helper registered" name=gcr
time="2020-07-13T19:57:10Z" level=info msg="bot: registered" name=slack
time="2020-07-13T19:57:10Z" level=info msg="keel starting..." arch=amd64 build_date=2020-03-02T235225Z go_version=go1.13.8 os=linux revision=1156d42e version=0.16.0
time="2020-07-13T19:57:10Z" level=info msg="initializing database" database_path=/data/keel.db type=sqlite3
time="2020-07-13T19:57:10Z" level=info msg="extension.notification.auditor: audit logger configured" name=auditor
time="2020-07-13T19:57:10Z" level=info msg="notificationSender: sender configured" sender name=auditor
time="2020-07-13T19:57:10Z" level=info msg="provider.kubernetes: using in-cluster configuration"
time="2020-07-13T19:57:10Z" level=info msg="Tiller address specified: tiller-deploy:44134"
time="2020-07-13T19:57:10Z" level=info msg="provider.helm: tiller address 'tiller-deploy:44134' supplied"
time="2020-07-13T19:57:10Z" level=info msg="provider.defaultProviders: provider 'kubernetes' registered"
time="2020-07-13T19:57:10Z" level=info msg="provider.defaultProviders: provider 'helm' registered"
time="2020-07-13T19:57:10Z" level=info msg="extension.credentialshelper: helper registered" name=secrets
time="2020-07-13T19:57:10Z" level=info msg="bot.slack.Configure(): Slack approval bot is not configured"
time="2020-07-13T19:57:10Z" level=error msg="bot.Run(): can not get configuration for bot [slack]"
time="2020-07-13T19:57:10Z" level=info msg="trigger.poll.manager: polling trigger configured"
time="2020-07-13T19:57:10Z" level=info msg="authentication enabled, setting up admin HTTP handlers"
time="2020-07-13T19:57:10Z" level=info msg=started context=buffer
time="2020-07-13T19:57:10Z" level=info msg=started context=watch resource=daemonsets
time="2020-07-13T19:57:10Z" level=info msg=started context=watch resource=deployments
time="2020-07-13T19:57:10Z" level=info msg=started context=watch resource=cronjobs
time="2020-07-13T19:57:10Z" level=info msg="webhook trigger server starting..." port=9300
time="2020-07-13T19:57:10Z" level=info msg=started context=watch resource=statefulsets
time="2020-07-13T19:57:15Z" level=error msg="provider.defaultProviders: failed to get tracked images" error="context deadline exceeded" provider=helm
time="2020-07-13T19:57:23Z" level=error msg="provider.defaultProviders: failed to get tracked images" error="context deadline exceeded" provider=helm
time="2020-07-13T19:57:28Z" level=error msg="provider.defaultProviders: failed to get tracked images" error="context deadline exceeded" provider=helm
rreilly-edr commented 4 years ago

well, I just read on slack Helm 3 is not yet supported....