Code Monkey home page Code Monkey logo

public-helm-charts-mirror's Introduction

public-helm-charts-mirror

Sync

This repository contains Helm charts served by DaoCloud

Helm RepoName Helm Repo URL
Addon https://release.daocloud.io/chartrepo/addon
System https://release.daocloud.io/chartrepo/system
Partner https://release.daocloud.io/chartrepo/partner
Community https://release.daocloud.io/chartrepo/community

Usage

helm repo add community https://release.daocloud.io/chartrepo/community 
helm install dao-2048 community/dao-2048

Add New Repo/Charts

Create New PR , like #2

Example:

If your helm chart repo URL is https://release.daocloud.io/chartrepo/community/dao-2048 you can add one line to mirror.yaml : dao-2048: https://release.daocloud.io/chartrepo/community

[友情链接]加速三剑客

public-helm-charts-mirror's People

Contributors

archimedes-dear avatar cyclinder avatar erikjiang avatar fkajerry avatar learner0810 avatar lengrongfu avatar lou-lan avatar muma378 avatar panpan0000 avatar rulixu avatar wawa0210 avatar wilsonwu avatar wzshiming avatar yankay avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

public-helm-charts-mirror's Issues

dce-system/kpanda chart has repeated app field in template charts/clusterpedia/templates/clustersynchro-manager-deployment.yaml

dce-system/kpanda chart has repeated app field in template charts/clusterpedia/templates/clustersynchro-manager-deployment.yaml which causes HelmRelease reconciliation failures with Flux v2 as shown in the screenshot below:

2023-11-08 11_09_31-donaldleung@ESPF3QDR0B_ ~

Chart details

  • Repository: dce-system (https://release.daocloud.io/chartrepo/system)
  • Chart name: kpanda
  • Chart version: 0.22.1

Steps to reproduce

helm repo add dce-system https://release.daocloud.io/chartrepo/system
helm repo update
helm pull --version 0.22.1 dce-system/kpanda --untar
helm template kpanda kpanda/ --show-only charts/clusterpedia/templates/clustersynchro-manager-deployment.yaml | yq '.spec.template.metadata.labels'

Output (notice the duplicate app field):

app.kubernetes.io/name: clusterpedia
helm.sh/chart: clusterpedia-1.7.2
app.kubernetes.io/instance: kpanda
app.kubernetes.io/managed-by: Helm
app: kpanda-clusterpedia-clustersynchro-manager
app: kpanda-clusterpedia-clustersynchro-manager
sidecar.istio.io/inject: "true"

Please find the full template output as attached below for your reference.

kpanda-template.yaml.txt

Image docker.m.daocloud.io/istio/pilot:1.17.1 does not exist but istiod 1.17.1 is the only supported chart version in dce-community repo

Image docker.m.daocloud.io/istio/pilot:1.17.1 does not exist but istiod 1.17.1 is the only supported chart version in dce-community repo (https://release.daocloud.io/chartrepo/community)

Chart details

  • Repository: dce-community (https://release.daocloud.io/chartrepo/community)
  • Chart name: istiod
  • Chart version: 1.17.1

Steps to reproduce

Install DCE5 Community with dce5-installer, then:

helm repo add dce-community https://release.daocloud.io/chartrepo/community
helm repo update
helm -n istio-system upgrade \
    --reuse-values \
    istiod \
    dce-community/istiod \
    --version 1.17.1

Wait for the upgrade to fail, then run:

kubectl -n istio-system get po -l istio=pilot

Sample output:

NAME                      READY   STATUS             RESTARTS   AGE
istiod-84c44d956d-r94wr   1/1     Running            0          23h
istiod-b999b56b9-wtzwt    0/1     ImagePullBackOff   0          9m56s

Now check the events of the Pod with ImagePullBackOff error:

kubectl -n istio-system describe po istiod-b999b56b9-wtzwt | grep -A10 Events:

Output:

Events:
  Type     Reason     Age                    From               Message
  ----     ------     ----                   ----               -------
  Normal   Scheduled  11m                    default-scheduler  Successfully assigned istio-system/istiod-b999b56b9-wtzwt to dcetest01
  Normal   Pulling    4m43s (x4 over 11m)    kubelet            Pulling image "docker.m.daocloud.io/istio/pilot:1.17.1"
  Warning  Failed     3m23s (x4 over 9m33s)  kubelet            Error: ErrImagePull
  Normal   BackOff    2m53s (x7 over 9m32s)  kubelet            Back-off pulling image "docker.m.daocloud.io/istio/pilot:1.17.1"
  Warning  Failed     2m53s (x7 over 9m32s)  kubelet            Error: ImagePullBackOff
  Warning  Failed     41s (x5 over 9m33s)    kubelet            Failed to pull image "docker.m.daocloud.io/istio/pilot:1.17.1": rpc error: code = Canceled desc = failed to pull and unpack image "docker.m.daocloud.io/istio/pilot:1.17.1": context canceled

Chart values

Not modified from initial DCE5 Community installation using dce5-installer:

global:
  hub: docker.m.daocloud.io/istio
  imagePullPolicy: IfNotPresent
  meshID: global-service
  multiCluster:
    clusterName: kpanda-global-cluster
meshConfig:
  defaultConfig:
    extraStatTags:
    - destination_mesh_id
    - source_mesh_id
    gatewayTopology:
      numTrustedProxies: 2
    proxyMetadata:
      ISTIO_META_DNS_AUTO_ALLOCATE: "true"
      ISTIO_META_DNS_CAPTURE: "true"
pilot:
  autoscaleMin: 1
  replicaCount: 1
  resources:
    requests:
      cpu: 256m
      memory: 256Mi
telemetry:
  v2:
    prometheus:
      configOverride:
        gateway:
          debug: "false"
          disable_host_header_fallback: true
          metrics:
          - dimensions:
              destination_cluster: node.metadata['CLUSTER_ID']
              destination_mesh_id: node.metadata['MESH_ID']
              source_cluster: downstream_peer.cluster_id
              source_mesh_id: downstream_peer.mesh_id
          stat_prefix: istio
        inboundSidecar:
          debug: "false"
          disable_host_header_fallback: true
          metrics:
          - dimensions:
              destination_cluster: node.metadata['CLUSTER_ID']
              destination_mesh_id: node.metadata['MESH_ID']
              source_cluster: downstream_peer.cluster_id
              source_mesh_id: downstream_peer.mesh_id
          stat_prefix: istio
        outboundSidecar:
          debug: "false"
          metrics:
          - dimensions:
              destination_cluster: node.metadata['CLUSTER_ID']
              destination_mesh_id: node.metadata['MESH_ID']
              source_cluster: downstream_peer.cluster_id
              source_mesh_id: downstream_peer.mesh_id
          stat_prefix: istio

Alternatives considered

Falling back to version 1.16.x of istiod does not work with DaoCloud Helm repository mirror since the only existing version is 1.17.1 at the time of writing.

Some output snippets taken from Flux v2 shown below:

NAME                                            REVISION        SUSPENDED       READY   MESSAGE

helmchart/istio-system-istio-base               1.17.1          False           True    pulled 'base' chart with version '1.17.1'
helmchart/istio-system-istio-ingressgateway     1.17.1          False           True    pulled 'gateway' chart with version '1.17.1'
helmchart/istio-system-istiod                   1.17.1          False           False   invalid chart reference: failed to get chart version for remote reference: no 'istiod' chart with version matching '>=1.16.1 <1.17.0' found
NAME                                            REVISION        SUSPENDED       READY   MESSAGE

helmchart/istio-system-istio-base               1.17.1          False           True    pulled 'base' chart with version '1.17.1'
helmchart/istio-system-istio-ingressgateway     1.17.1          False           True    pulled 'gateway' chart with version '1.17.1'
helmchart/istio-system-istiod                   1.17.1          False           False   invalid chart reference: failed to get chart version for remote reference: no 'istiod' chart with version matching '>=1.17.0 <1.17.1' found

dce-system/insight chart has repeated app.kubernetes.io/name field in multiple templates

dce-system/insight chart has repeated app.kubernetes.io/name field in multiple templates which causes HelmRelease reconciliation failures with Flux v2 as shown in the screenshot below:

2023-11-07 16_43_58-donaldleung@ESPF3QDR0B_ ~

Furthermore, this issue is reproducible with the default values.yaml provided by the chart itself so not specific to a particular values.yaml configuration.

Chart details

  • Repository: dce-system (https://release.daocloud.io/chartrepo/system)
  • Chart name: insight
  • Chart version: 0.21.1 (affects 0.19.x as well)

Steps to reproduce

helm repo add dce-system https://release.daocloud.io/chartrepo/system
helm repo update
helm pull --version 0.21.1 dce-system/insight --untar
helm template insight insight/ --show-only templates/runbooks/serviceaccount.yaml | yq '.metadata.labels'

Output:

app.kubernetes.io/name: insight-runbook
helm.sh/chart: insight-0.21.1
app.kubernetes.io/name: insight
app.kubernetes.io/instance: insight
app.kubernetes.io/version: "0.21.1"
app.kubernetes.io/managed-by: Helm

As can be seen, the field app.kubernetes.io/name is defined twice.

This issue occurs multiple times throughout the chart - please refer to the attachment below for the full output of helm template.

insight-template.yaml.txt

Need a manual CI

A manual CI is required to facilitate the timely synchronization of new versions of the helm package.
image

dce-addon/insight-agent chart has repeated operator.insight.io/managed-by field in template charts/kube-prometheus-stack/templates/exporters/core-dns/servicemonitor.yaml

dce-addon/insight-agent chart has repeated operator.insight.io/managed-by field in template charts/kube-prometheus-stack/templates/exporters/core-dns/servicemonitor.yaml which causes HelmRelease reconciliation failures with Flux v2 as shown in the screenshot below:

2023-11-07 16_43_58-donaldleung@ESPF3QDR0B_ ~

Chart details

  • Repository: dce-addon (https://release.daocloud.io/chartrepo/addon)
  • Chart name: insight-agent
  • Chart version: 0.21.1 (affects 0.19.x as well)

Steps to reproduce

Unfortunately, it appears some templates rely on data from the running cluster so helm template doesn't work.

Install DCE5 Community with dce5-installer according to the official instructions, then run:

helm -n insight-system get manifest insight-agent > insight-agent.yaml.txt

Now inspect the output of the command in insight-agent.yaml.txt (attached below).

insight-agent.yaml.txt

In the YAML block with source charts/kube-prometheus-stack/templates/exporters/core-dns/servicemonitor.yaml, observe a duplicate operator.insight.io/managed-by field:

---
# Source: insight-agent/charts/kube-prometheus-stack/templates/exporters/core-dns/servicemonitor.yaml
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: insight-agent-kube-prometh-coredns
  namespace: insight-system
  labels:
    app: kube-prometheus-stack-coredns
    operator.insight.io/managed-by: insight
    
    app.kubernetes.io/managed-by: Helm
    app.kubernetes.io/instance: insight-agent
    app.kubernetes.io/version: "45.28.1"
    app.kubernetes.io/part-of: kube-prometheus-stack
    chart: kube-prometheus-stack-45.28.1
    release: "insight-agent"
    heritage: "Helm"
    operator.insight.io/managed-by: insight
spec:
  jobLabel: jobLabel
  
  selector:
    matchLabels:
      app: kube-prometheus-stack-coredns
      release: "insight-agent"
  namespaceSelector:
    matchNames:
      - "kube-system"
  endpoints:
  - port: http-metrics
    bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token

For reference, here is the values.yaml file used (password REDACTED for security reasons):

global:
  exporters:
    auditLog:
      host: insight-opentelemetry-collector.insight-system.svc.cluster.local
    logging:
      host: 192.168.86.201
      password: REDACTED
      port: 31824
      scheme: https
      user: elastic
    metric:
      host: vminsert-insight-victoria-metrics-k8s-stack.insight-system.svc.cluster.local
kube-prometheus-stack:
  prometheus:
    prometheusSpec:
      replicas: 1
opentelemetry-collector:
  replicaCount: 1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.