Helm: рдиреЗрд╕реНрдЯреЗрдб `рдирд▓` рдорд╛рди рдЕрдкреЗрдХреНрд╖рд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХреБрдВрдЬрд┐рдпрд╛рдБ рдирд╣реАрдВ рдирд┐рдХрд╛рд▓рддреЗ рд╣реИрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 18 рдЬрдире░ 2019  ┬╖  36рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: helm/helm

https://github.com/helm/helm/pull/2648 values.yaml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ null рдореВрд▓реНрдп рд╕реЗрдЯ рдХрд░рдХреЗ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣ рдиреЗрд╕реНрдЯреЗрдб рдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ:

web:
  livenessProbe:
    httpGet: null
    exec:
      command:
      - curl
      - -f
      - http://localhost:8080/api/v1/info

рдореВрд▓ рдореВрд▓реНрдпреЛрдВ рд╕реЗ web.livenessProbe.httpGet рдирд╣реАрдВ рдирд┐рдХрд╛рд▓реЗрдВрдЧреЗ, рдмрд▓реНрдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ null рд╕рд╛рде рдореВрд▓реНрдп рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЪреЗрддрд╛рд╡рдиреА рджреЗрддрд╛ рд╣реИ:

2019/01/18 11:30:07 Warning: Merging destination map for chart 'concourse'. Cannot overwrite table item 'httpGet', with non table value: map[path:/api/v1/info port:atc]

рд╡рд┐рдбрдВрдмрдирд╛ рдпрд╣ рд╣реИ рдХрд┐ рдКрдкрд░ рдбреЙрдХреНрд╕ рдореЗрдВ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдкрд░ рдПрдХ рдЫреЛрдЯрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, рдЬреЛ рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдХреНрдпрд╛ рджрд╛рд╡рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ: https://docs.helm.sh/chart_template_guide/#de рд╣рдЯрд╛рдирд╛-a.efault-key

рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдЪреВрдВрдХрд┐ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдПрдХ рдЕрд╢рдХреНрдд рдореВрд▓реНрдп рдФрд░ рдПрдХ рдореВрд▓реНрдп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реЛрдиреЗ рдХреЗ рдмреАрдЪ рдмрд╣реБрдд рдЕрдВрддрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдХрд┐ рдЗрд╕ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдФрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИред

helm version рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ:

Client: &version.Version{SemVer:"v2.12.1", GitCommit:"02a47c7249b1fc6d8fd3b94e6b4babf9d818144e", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.12.1", GitCommit:"02a47c7249b1fc6d8fd3b94e6b4babf9d818144e", GitTreeState:"clean"}

kubectl version рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ:

Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.1", GitCommit:"eec55b9ba98609a46fee712359c7b5b365bdd920", GitTreeState:"clean", BuildDate:"2018-12-13T10:39:04Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"11+", GitVersion:"v1.11.5-eks-6bad6d", GitCommit:"6bad6d9c768dc0864dab48a11653aa53b5a47043", GitTreeState:"clean", BuildDate:"2018-12-06T23:13:14Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}

рдХреНрд▓рд╛рдЙрдб рдкреНрд░рджрд╛рддрд╛ / рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо (AKS, GKE, Minikube рдЖрджрд┐):

рдИ.рдХреЗ.рдПрд╕.

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╣рдо рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рднреА рд╣рд┐рдЯ рдХрд░рддреЗ рд╣реИрдВ (@vbuciuc рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рдПрдХ рдХреЗ рд╕рдорд╛рди) рдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП "рд╢реВрдиреНрдп" рдХрд╛рдо рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдЬрдм рдУрд╡рд░рдЪрд╛рд░реНрдЬ рдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдореЗрдВ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛред рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг (3.1.x) рдЙрдореНрдореАрдж рдХреЗ рдореБрддрд╛рдмрд┐рдХ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред

рд╕рднреА 36 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

@scottrigby , рдХреНрдпрд╛ рдЖрдк рдХрд┐рд╕реА рднреА рдореМрдХреЗ рдкрд░ рдЗрд╕ рдкрд░ рдПрдХ

рдкреНрд░рд╢реНрди / рд╕рдорд░реНрдерди рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдЬрдм рддрдХ рдпрд╣ рдкреБрд╖реНрдЯрд┐ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореВрд▓ рд▓реЗрдЦрдХ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдПрдХ рдмрдЧ рд╣реИред

рдореИрдВ рдЗрд╕реЗ 2.12.3 рдкрд░ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВред рдореИрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ, рдЬрдмрдХрд┐ -f рдФрд░ --set рджреЛрдиреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╢реВрдиреНрдп рд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдпрд╣ рд╕рд┐рд░реНрдл рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЗрд╕реЗ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ "рдЙрджреНрдзрд░рдг рдХреЗ рдмрд┐рдирд╛" рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред
рдореЗрд░реА рд╕реНрдерд┐рддрд┐:

> helm get values grafana
admin:
  existingSecret: ""
chownDataImage:
  pullPolicy: null
  repository: null
  tag: null
<...>

> helm upgrade grafana stable/grafana --tls --reuse-values --set chownDataImage.pullPolicy=null
<output indicating it works>

> helm get values grafana
admin:
  existingSecret: ""
chownDataImage:
  pullPolicy: null
  repository: null
  tag: null
<...>

рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рдЗрди рдорд╛рдиреЛрдВ рдХреЛ рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рдЬреЛ рдХрд┐ рдЕрдм рд╣реЗрд▓реНрдо рдореЗрдВ рдЕрдЯрдХреЗ рдбрд┐рдлреЙрд▓реНрдЯ рдХреЗ рдмрдЬрд╛рдп рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реЗ рдбрд┐рдлреЙрд▓реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред

рд╕реНрдерд┐рд░ / рдлрд╛рдЗрд▓рдмреАрдЯ

null рдпрд╛ nil рдореИрдВ рдПрдХ рд╣реА рдЪреАрдЬрд╝ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ ... рдХреБрдВрдЬреА рдХреЛ рд╣рдЯрд╛рдпрд╛ рдирд╣реАрдВ рдЧрдпрд╛ рд╣реИ ... рдЗрд╕реЗ null/nil рд░реВрдк рдореЗрдВ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рд▓реЗрдХрд┐рди рд╣рдЯрд╛рдпрд╛ рдирд╣реАрдВ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЬрдм рдЖрдк рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд╡рд┐рднрд┐рдиреНрди рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ:

---values.yml in the Chart
output.file:
  path: /var/log/foo.log

`` `рдпрд╛рдорд▓
--- рдореЗрд░рд╛ рдУрд╡рд░рд░рд╛рдЗрдб
рдЙрддреНрдкрд╛рджрдиред рдЦреЛрдЬ:
рдореЗрдЬрдмрд╛рди:
- ' http: // localhost : 9200'
output.file: рдЕрд╢рдХреНрдд

or
```yaml
---my overrides
output:
  elasticsearch:
     host:
      - 'http://localhost:9200'
  file: null

рдпрд╛

---my overrides
output:
  elasticsearch:
     hosts:
      - 'http://localhost:9200'
output.file: null
┬╗ k get secret filebeat -o jsonpath="{.data.filebeat\.yml}" | base64 -D
    filebeat.config:
      modules:
        path: ${path.config}/modules.d/*.yml
        reload.enabled: false
      prospectors:
        path: ${path.config}/prospectors.d/*.yml
        reload.enabled: false
    filebeat.prospectors:
    - enabled: true
      fields:
        apenv: dev
        app: kubernetes
        log_category: kubernetes
      fields_under_root: true
      paths:
      - /var/log/*.log
      - /var/log/messages
      - /var/log/syslog
      type: log
    - containers.ids:
      - '*'
      fields:
        apenv: dev
        app: kubernetes
        log_category: kubernetes
      fields_under_root: true
      processors:
      - add_kubernetes_metadata:
          in_cluster: true
      - drop_event:
          when:
            equals:
              kubernetes.container.name: filebeat
      type: docker
    http.enabled: true
    http.port: 5066
    output:
      elasticsearch:
        hosts:
        - http://localhost9200
    output.file: null
    processors:
    - add_cloud_metadata: null

рдкреЙрдб рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ:

Exiting: error unpacking config data: more than one namespace configured accessing 'output' (source:'filebeat.yml')

рдореИрдВ рднреА рдлрд╝рд╛рдЗрд▓ рдЪрд╛рд░реНрдЯ рдХреЗ рд╕рд╛рде рдЗрд╕ рд╕рдЯреАрдХ рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред

@ LCDenneen рдЖрдк рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ config.output.file.enabled=false рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВ рдПрдХ рдРрд╕реА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдЬреВрдЭ рд░рд╣рд╛ рд╣реВрдВ, рдЬрд╣рд╛рдВ рдореИрдВ рдлрд╛рдЗрд▓рдмреАрдЬ рдХреЗ рд▓рд┐рдП рдирдП inputs рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди prospectors рдХреБрдВрдЬреА рдХреЛ рд╣рдЯрд╛ рдирд╣реАрдВ рд╕рдХрддрд╛ред

рдореМрдЬреВрджрд╛ рдореВрд▓реНрдп:

config:
  filebeat.prospectors:
    - type: log
      enabled: true
      paths:
        - /var/log/*.log
        - /var/log/messages
        - /var/log/syslog

рдореЗрд░рд╛ рдУрд╡рд░рд░рд╛рдЗрдб: --set config.filebeat.prospectors=null

рдкрд░рд┐рдгрд╛рдо: (рдПрдХ рдЧреБрдкреНрдд рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)

filebeat:
  prospectors: null

рдореИрдВрдиреЗ stable/kibana рдФрд░ stable/filebeat рдХреЗ рд╕рд╛рде рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рднреА рд╕рд╛рдордирд╛ рдХрд┐рдпрд╛, рдЬрдм рдЪрд╛рд░реНрдЯ !!null рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддрдм рднреА рдХреБрдВрдЬреА рдЪрд╛рд░реНрдЯ рдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрдЧреАред

@aeijdenberg рдХрд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкреАрдЖрд░ рдХреЛ рд╕рдореАрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП рд▓реЗрдмрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

рдЕрд░реЗ @bacongobbler рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореБрдЭреЗ рдЖрдкрдХрд╛ рд╕рд╡рд╛рд▓ https://github.com/helm/helm/issues/5184#issuecomment -456138448 рдореЗрдВ рдпрд╛рдж рдЖрдпрд╛ред рдореИрдВ рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдмрдЧ рд╣реИред # 2648 рдореЗрдВ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ рдЬреЛ рдкреНрд░рд▓реЗрдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рдерд╛ред рдореИрдВ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдерд╛, рд▓реЗрдХрд┐рди # 5185 рдЖрд╢рд╛рдЬрдирдХ рд▓рдЧ рд░рд╣рд╛ рд╣реИ! ЁЯСП рд╡рд╣рд╛рдБ рдкрд░ рдЬрд╡рд╛рдм рджреЗрдВрдЧреЗ

рд╣рд╛рдп @scottrigby ред рдХреНрдпрд╛ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕ рд░рд┐рд▓реАрдЬ рдореЗрдВ # 5185 рдХрд╛ рдлрд┐рдХреНрд╕ рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧрд╛? рдореБрдЭреЗ рд╕рд┐рд░реНрдл рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдЬрдм istio рдЪрд╛рд░реНрдЯ рдкрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЧрдИред

рдпрд╣ 2.14.2 рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ - рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред

рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рдорд╛рди рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░ рд░рд╣рд╛ рд╣реВрдВ - рдПрдХрдорд╛рддреНрд░ рдЕрдВрддрд░ рдЬреЛ рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ рдПрдХ рд╕рдмрдЪрд░реНрдЯ рдореЗрдВ рд╕реЗрдЯ рдореВрд▓реНрдп (рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд▓реЙрдЧрд╕реНрдЯреИрд╢) рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореИрдиреЗ рдкреНрд░рдпрддреНрди рдХрд┐рдпрд╛:

  • logstash.livenessProbe.httpGet рдХреЛ null , ~ рдФрд░ {} рдореБрдЦреНрдп рдЪрд╛рд░реНрдЯ рдХреЗ рдорд╛рдиреЛрдВ рдореЗрдВ рд╕реЗрдЯ рдХрд░реЗрдВ редyaml, рдпрд╛ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░ред рджреЛрдиреЛрдВ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, "рд╣реЗрд▓реНрдо рдЯреЗрдореНрдкрд▓реЗрдЯ" рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдореВрд▓ рдореВрд▓реНрдп рдЕрднреА рднреА рд╣реИ (рдпрд╛рдиреА рдореБрдЭреЗ рдЕрднреА рднреА httpGet рд╕реЗрдЯ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ) - рдФрд░ рдпрд╣ "рд╣реЗрд▓реНрдо рдЗрдВрд╕реНрдЯреЙрд▓" рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рджреЗрдЦреЗ рдЬрд╛рдиреЗ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИред
  • "nil" рдореЗрдВ logstash.livenessProbe.httpGet рд╕реЗрдЯ рдХрд░рдирд╛ - рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдорд╛рди рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдЯреНрд░рд┐рдВрдЧ "nil" рдХреЗ рд▓рд┐рдП рдЬреЛ рдпрд╣рд╛рдБ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реИрдз рдореВрд▓реНрдп рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП kubernetes рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рджреЗрддрд╛ рд╣реИред

рдХреНрдпрд╛ рдореБрдЭреЗ рдЧрд▓рдд рд╕рдордЭрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдпрд╣ 2.14.2 рдореЗрдВ рдирд╣реАрдВ рдмрдирд╛ рд╣реИ - рдпрд╛ рдЕрднреА рднреА рдХреЛрдИ рдореБрджреНрджрд╛ рд╣реИ?

(рдЗрд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдЪрд╛рд░реНрдЯ: Demo.zip )

рдкреИрдЪ рдХреЛ рдЬрд╛рд░реА рдиреЛрдЯреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ 2.14.2 рдореЗрдВ рдЪреЗрд░реА-рдкрд┐рдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЙрдкрд▓рдмреНрдз рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХрд┐рд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдмрдЧ рдареАрдХ рд╣реЛ рдЧрдпрд╛ рд╣реИ - рдХреНрдпрд╛ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП? рдХреНрдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдЪрд╛рд░реНрдЯ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬреЛ рдореИрдВрдиреЗ рдКрдкрд░ рд╕рдВрд▓рдЧреНрди рдХреА рд╣реИ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╡реЗ рдЕрд▓рдЧ рджрд┐рдЦрддреЗ рд╣реИрдВ?

@ cc-stjm @bacongobbler - рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВ, рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкрд░реАрдХреНрд╖рд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ

func TestSubchartCoaleseWithNullValue(t *testing.T) {
    v, err := CoalesceValues(&chart.Chart{
        Metadata: &chart.Metadata{Name: "demo"},
        Dependencies: []*chart.Chart{
            {
                Metadata: &chart.Metadata{Name: "logstash"},
                Values: &chart.Config{
                    Raw: `livenessProbe: {httpGet: {path: "/", port: monitor}}`,
                },
            },
        },
        Values: &chart.Config{
            Raw: `logstash: {livenessProbe: {httpGet: null, exec: "/bin/true"}}`,
        },
    }, &chart.Config{})
    if err != nil {
        t.Errorf("Failed with %s", err)
    }
    result := v.AsMap()
    expected := map[string]interface{}{
        "logstash": map[string]interface{}{
            "global": map[string]interface{}{},
            "livenessProbe": map[string]interface{}{
                "exec": "/bin/true",
            },
        },
    }
    if !reflect.DeepEqual(result, expected) {
        t.Errorf("got %+v, expected %+v", result, expected)
    }
}

рд╕рдорд╕реНрдпрд╛, рдЬрд╣рд╛рдБ рддрдХ рдореИрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдБ, рдпрд╣ рд╣реИ рдХрд┐ CoalesceValues() рдкрд░рд┐рдгрд╛рдо рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рд╣реИ рдЬреЛ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдХреЛрдпрд▓рд╛ рдмрдирд╛рддрд╛ рд╣реИ:
https://github.com/helm/helm/blob/e04fa72f6f211cae68c362f9b7c62f06dc51493e/pkg/chartutil/values .go#L164 -L180

рдпрд╛рдиреА рд▓рд╛рдЗрди 173 рд╕реЗ рдКрдкрд░ рдХреЗ рд╕рд╛рде рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ httpGet рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ null , рд▓реЗрдХрд┐рди рдореВрд▓реНрдп рд╡рд╛рдкрд╕ рдХрд░рддреА рд╣реИ рдХрд┐ рдирдХреНрд╢реЗ рд╕реЗ рдХреБрдВрдЬреА рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рд╣реИ (рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд░рд╛рджрд╛)ред рд▓реЗрдХрд┐рди рдлрд┐рд░ рдЙрд╕ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдХреЛрд▓реЗрд╕рд┐рдВрдЧ (рд▓рд╛рдЗрди 179) рдХреЗ 2 рд╕реЗрдЯ рдХреЗ рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ 2 рдмрд╛рд░ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рддрдм рд╕реЗ рдХреБрдВрдЬреА рдЕрдм рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдЪрд╛рд░реНрдЯ рдореЗрдВ рдореВрд▓реНрдп рдХреЗ рд▓рд┐рдП рдЪреВрдХ рдХрд░рддрд╛ рд╣реИред

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореИрдВ рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХрд┐рд╕реА рднреА рд╕рдордп рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ - рдореИрдВрдиреЗ рднреВрдорд┐рдХрд╛рдПрдВ рдмрджрд▓ рджреА рд╣реИрдВ рдФрд░ рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣реЗрд▓реНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдкрд░ рдЬрд╡рд╛рдм рдореЗрд░реЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИред рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдКрдкрд░ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рд╣рд╛рдпрдХ рд╣реИред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВрдиреЗ рдЕрднреА 2.14.0 => 2.14.2 рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рд╣реИред рди рдХреЗрд╡рд▓ null ed рдХреБрдВрдЬреА рдЕрднреА рднреА рдореМрдЬреВрдж рд╣реИ, рдмрд▓реНрдХрд┐ рдЗрд╕рдореЗрдВ рдкрд┐рдЫрд▓рд╛ рдорд╛рди рднреА рд╣реИред рдкрд┐рдЫрд▓реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдиреЗ рдЗрд╕реЗ рд╢реВрдиреНрдп рдмрдирд╛ рджрд┐рдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реБрдЖ рд╣реИред

@aeijdenberg рдЖрдк @sgillespie рдХреА рдЬрд╛рдВрдЪ рдореЗрдВ рдХреГрдкрдпрд╛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ? рдпрджрд┐ рдХреЛрдИ рдкреНрд░рддрд┐рдЧрдорди рд╣реИ, рддреЛ рд╕рдВрднрд╡рддрдГ рдпрд╣ рдЙрд╕ рдкреАрдЖрд░ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдЖрдк рдПрдХ рдирд┐рд░реНрдзрд╛рд░рдг рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдпрджрд┐ рдЖрдк рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реИрдВ рддреЛ рд╕рдВрднрд╡рдд: рдЖрдкрдХреА рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдирд╛ рдФрд░ рд╡рд░реНрдЧ 1 рдореЗрдВ рд╡рд╛рдкрд╕ рдЬрд╛рдирд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИред рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдЖрдк рдХреИрд╕реЗ рдЖрдЧреЗ рдмрдврд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

@bacongobbler , рдЬрдмрдХрд┐ рдореИрдВрдиреЗ 2.14.0 рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рдЬреЛ @sgillespie рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ https://github.com/helm/helm/issues/5184#issuecomment-517059748 рдореЗрдВ рдмрддрд╛рдП рдЧрдП рд╡реНрдпрд╡рд╣рд╛рд░ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред рджреБрдЦ рдХреА рдмрд╛рдд рд╣реИ рдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдкрд╛рд░рд┐рдд рд╣реЛрдиреЗ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдВрдд рдореЗрдВ рдЕрд╕рдлрд▓ рд╣реЛрдиреЗ рдХрд╛ рдЕрдВрдд - рдЬреИрд╕рд╛ рдХрд┐ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдЬреЛ рдкрд╣рд▓реЗ рдЪрд░рдг рдореЗрдВ рдПрдХ рдХреБрдВрдЬреА рдХреЛ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рд╕реЗ рдмрд╛рдж рдХреЗ рдЪрд░рдгреЛрдВ рдореЗрдВ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ (рдФрд░ рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореВрд▓ рдореВрд▓реНрдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖ рд░рд╣реЗ рд╣реИрдВ)ред

рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рдкреНрд░рддрд┐рдЧрдорди рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рд▓реЗрдирд╛ рднреА рдирдП рд╡реНрдпрд╡рд╣рд╛рд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рддрд┐рдЧрдорди рд╣реИред

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдорд╛рдореВрд▓реА рдкреИрдЪ рд╣реИ, рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ # 6146 рдореЗрдВ рдкреНрд░рднрд╛рд╡ рдХреЛ рдХрдо рдХрд░ рджреЗрдЧрд╛ (рдФрд░ рдЬреЛ рдкрд░реАрдХреНрд╖рдг рдореИрдВрдиреЗ рдКрдкрд░ рдЬреЛрдбрд╝рд╛ рд╣реИ) рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИ - рдореБрдЭреЗ рдЦреЗрдж рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдкрд┐рдЫрд▓реЗ рдкреНрд░рдпрд╛рд╕ рдореЗрдВ рдпрд╣ рдЧрд▓рдд рдорд┐рд▓рд╛ рд╣реИред

рдпрд╣ https://github.com/helm/helm/pull/6080 рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

рдпрджрд┐ рд╣рд╛рдВ, рддреЛ рдХреНрдпрд╛ # 6146 рдХреЛ рдмрдВрдж рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реИ? рдореИрдВ рдпрд╣рд╛рдБ рд╕рдорд╕реНрдпрд╛ рд╕реНрдерд╛рди рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЕрдкрдирд╛ рд╕рд┐рд░ рдЯрдЯреЛрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпреЗ рдкреАрдЖрд░ рдХреНрдпрд╛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдорд╛рдлрд╝ рдХрд░рдирд╛ред

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрддрд╛ рд╣реИред рдПрдХ рддреНрд╡рд░рд┐рдд рднреЛрд▓рд╛рдкрди рдкрд░реАрдХреНрд╖рдг:

Subchart рдорд╛рди:

prop:
  nested:
    val: true

рдореВрд▓ рдЪрд╛рд░реНрдЯ рдорд╛рди:

sub:
  prop:
    nested: null

рдЙрдореНрдореАрдж рдХреЗ рдореБрддрд╛рдмрд┐рдХ рдЖрдЙрдЯрдкреБрдЯ {}

рдирдорд╕реНрддреЗ,

рдореИрдВ helm 2.15.0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдореИрдВ рдЕрднреА рднреА рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдорд┐рд▓рд╛ рд╣реВрдВред

рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЙрдк-рд╕рдореВрд╣ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП:

securityContext:
  runAsUser: 65534
  fsGroup: 65534

рдЬрд╣рд╛рдБ рдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ toYaml рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдФрд░ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдЪрд╛рд░реНрдЯ рдореВрд▓реНрдпреЛрдВ рдореЗрдВ:

sub:
  securityContext:
  runAsUser: null

рдлрд┐рд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрддреНрдкрд╛рджрди рд╣реИ:

securityContext:
  runAsUser: 65534
  fsGroup: 65534

рдЬрдмрдХрд┐ рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛:

securityContext:
  fsGroup: 65534

рдЖрдкрдХреА рдкрд░реЗрдб рдкрд░ рдмрд╛рд░рд┐рд╢ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рднреА рдЗрд╕реЗ рд╣реЗрд▓реНрдо v3.0.1 рдХреЗ рд╕рд╛рде рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ

version.BuildInfo {рд╕рдВрд╕реНрдХрд░рдг: "v3.0.1", GitCommit: "7c22ef9ce89e0ebeb7125ba2ebf7d421f3e82ffa", GitcreeState: "рдХреНрд▓реАрди", GoVersion: "go1.13.4"}}

рд╕реНрдерд┐рд░ / рдкреНрд░рдЬреНрд╡рд▓рд┐рдд рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╕рдордп рдореБрдЭреЗ рдПрдХ рдорд╛рди рдХреЛ рдЕрдирд╕реБрдирд╛ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрддрд╡рд╛рд░ рдХреЗрд╡рд▓ рдорд╛рди рдХреЛ рд╢реВрдиреНрдп / рд╢реВрдиреНрдп рдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ k8 рдХреЛ рд╕рддреНрдпрд╛рдкрди рдЪрд░рдг рдореЗрдВ рдЧрдВрдЬрд╛ рд╣реЛрдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред

рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ bug5184-ignite.yaml рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬреЗрдВ (рдЪрд╛рд░реНрдЯ рдХреА рдЪреВрдХ рд╕реЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП: https://github.com/helm/charts/blob/master/stable/ignite/values.yaml):

persistence:
  enabled: true   # <-- without this, the keys in question are ignored
  persistenceVolume:
    provisionerParameters:
      type: null  # <-- I want to unset this key
  walVolume:
    provisionerParameters:
      type: null  # <-- I want to unset this key

рдлрд┐рд░ рдЗрд╕реЗ рдПрдХ рдЖрдЧ рд▓рдЧрдиреЗ рд╡рд╛рд▓реА рд╕рдВрд╕реНрдерд╛рдкрди рдХреЗ рд▓рд┐рдП рдорд╛рди рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:

helm install runtimedb stable/ignite --version 1.0.1 --values bug5184-ignite.yaml --debug --dry-run | less

рдЬреЛ рдкрд░рд┐рдгрд╛рдо рдореБрдЭреЗ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ рд╡рд╣ рдпрд╣ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рд╣реИ, рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдЬрд┐рд╕ рдореВрд▓реНрдп рдХреЛ рдореИрдВ рдкрд░реЗрд╢рд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдЙрд╕реЗ nil рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

install.go:148: [debug] Original chart version: ""
install.go:165: [debug] CHART PATH: /home/creinig/.cache/helm/repository/ignite-1.0.1.tgz

Error: unable to build kubernetes objects from release manifest: error validating "": error validating data: unknown object type "nil" in StorageClass.parameters.type
helm.go:76: [debug] error validating "": error validating data: unknown object type "nil" in StorageClass.parameters.type
helm.sh/helm/v3/pkg/kube.scrubValidationError
        /home/circleci/helm.sh/helm/pkg/kube/client.go:520
helm.sh/helm/v3/pkg/kube.(*Client).Build
        /home/circleci/helm.sh/helm/pkg/kube/client.go:135
helm.sh/helm/v3/pkg/action.(*Install).Run
        /home/circleci/helm.sh/helm/pkg/action/install.go:229
[...]

рдореИрдВрдиреЗ рднреА рдХреНрдпрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИ:

  • рдХреБрдЫ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ / рдЗрд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рдирд╣реАрдВ рдХрд░рдирд╛

    • => PersistentVolumeClaim "рд▓рдВрдмрд┐рдд" рдореЗрдВ рдЕрдЯрдХрд╛ рд╣реБрдЖ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рджрд╛рддрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд "рдкреНрд░рдХрд╛рд░" рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ

    • => рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореВрд▓реНрдп рд╣реИ

  • рдореВрд▓реНрдп null --set рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛

    • рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЗрд╕реЗ рд╕реЗрдЯ рдХрд░рддреЗ рд╕рдордп рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░

рдЬрдм рдХреЗрд╡рд▓ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ null рд▓рд┐рдП рдПрдХ рд╣реА рдорд╛рди рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдкреНрд░рдЬреНрд╡рд▓рд┐рдд рдЕрдХреНрд╖рдорддрд╛ рдХреЛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реБрдП (рддрд╛рдХрд┐ рд╕реНрдЯреЛрд░рдХреНрд▓рд╛рд╕ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЙрддреНрдкрдиреНрди рди рд╣реЛ рдФрд░ рдкреНрд░рд╢реНрди рдореЗрдВ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдП ...)

helm install myignite stable/ignite --version 1.0.1 --set persistence.persistenceVolume.provisionerParameters.type=null --debug --dry-run | less

... рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рдмрдЬрд╛рдп рдЙрдЪрд┐рдд рдбрд┐рдмрдЧ рдЖрдЙрдЯрдкреБрдЯ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдореВрд▓реНрдп рд╕рд┐рд░реНрдл null (рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЬреЛрдбрд╝реЗ рдЧрдП рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ) рдкрд░ рд╕реЗрдЯ рд╣реИ:

NAME: myignite
LAST DEPLOYED: Tue Dec 10 09:43:40 2019
NAMESPACE: default
STATUS: pending-install
REVISION: 1
TEST SUITE: None
USER-SUPPLIED VALUES:
persistence:
  persistenceVolume:
    provisionerParameters:
      type: null   # <-- Set via the command line

COMPUTED VALUES:
affinity: {}
dataStorage:
  config: ""
env:
  IGNITE_QUIET: "false"
  JVM_OPTS: -Djava.net.preferIPv4Stack=true
  OPTION_LIBS: ignite-kubernetes,ignite-rest-http
fullnameOverride: ""
image:
  pullPolicy: IfNotPresent
  repository: apacheignite/ignite
  tag: 2.7.6
nameOverride: ""
nodeSelector: {}
peerClassLoadingEnabled: false
persistence:
  enabled: false
  persistenceVolume:
    provisioner: kubernetes.io/aws-ebs
    provisionerParameters:
      fsType: ext4
      type: null  # <-- Set to null instead of removed
    size: 8Gi
  walVolume:
    provisioner: kubernetes.io/aws-ebs
    provisionerParameters:
      fsType: ext4
      type: gp2  # <-- This is what the default looks like
    size: 8Gi
rbac:
  create: true
replicaCount: 2
resources: {}
serviceAccount:
  create: true
  name: null
tolerations: []

рдореИрдВ 3.0.1 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдЯреАрдХ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛ рд╣реВрдВ, рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

рд╣реЗрд▓реНрдо v2.16.1 рд╕реЗ v3.0.2 рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рджред рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкрд░реЗрд╢рд╛рди рдХрд░рдиреЗ рд╡рд╛рд▓реА рдФрд░ cpu рд╕реАрдорд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рд╣реИред

рдореИрдВ рд╕рд┐рд░реНрдл 2.14.1 рдФрд░ 3.0.2 рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддрд╛ рд╣реВрдВред рдЗрд╕ рдкрд░ рдХрд┐рд╕реА рднреА рдЕрджреНрдпрддрди?

рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЬрд╣рд╛рдВ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдкрд░реАрдХреНрд╖рдг рдХреЗ рджреМрд░рд╛рди рд╣реЗрд▓рдо рдЪрд╛рд░реНрдЯ рдХреЗрд╡рд▓ рд╕рд╣реА рдФрд░ рдЧрд▓рдд / рдЧрд▓рдд рд╣реИ, рддреЛ рдореИрдВ рдорд╛рди рдХреЛ рдЧреИрд░ рддрд╛рд▓рд┐рдХрд╛ рдорд╛рди рдХреЗ рд╕рд╛рде рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддрд╛ рд╣реВрдВ рдЬреИрд╕реЗ 0. рдореБрдЭреЗ Overwriting table item 'x', with non table value: 0 рддрд░рд╣ рдмрд╣реБрдд рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдХрдо рд╕реЗ рдХрдо рдорд┐рд▓рддрд╛ рд╣реИ рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдПрдХ рд╕рдорд╛рдзрд╛рди, рдЬрд╣рд╛рдВ рдореИрдВ рдПрдХ рд╢реНрд▓реЛрдХ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ред рдореЗрд░реА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╢рдХреНрдд рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдмрджрд╕реВрд░рдд рдХрд╛рдо рд╣реИред

рдореИрдВрдиреЗ рдорд╛рдиреЛрдВ рдХреЛ рд╢реВрдиреНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИ (рдФрд░ рдЙрдиреНрд╣реЗрдВ рдореЗрд░реЗ рдореВрд▓реНрдпреЛрдВ рдХреА рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╢реВрдиреНрдп рдХрд░ рджрд┐рдпрд╛ рд╣реИ) рдФрд░ рддрд╛рд▓рд┐рдХрд╛ рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреА рд▓рдВрдмреА рд╕реВрдЪреА рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ рдЬреЛ рдЕрднреА рдХреЗ рд▓рд┐рдП рдареАрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреБрд░рд╛рдиреЗ рдЧрд▓рдд рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╛рд░ рдХреА рд╕рдлрд╛рдИ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ред рдЬрдм рддрдХ рдпрд╣ рдореВрд▓реНрдп рд╡рд┐рд▓реЛрдкрди рдмрдЧ рддрдп рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддрд╛, рддрдм рддрдХ рдореМрдЬреВрджрд╛ рддреИрдирд╛рддреА рдкрд░ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдбрд╛рдЙрдирдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде рдПрдХ рдореИрдиреБрдЕрд▓ рддрд░реАрдХрд╛ рд╣реИ?

liveness рдФрд░ readiness рдЬрд╛рдВрдЪ рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рдЕрдВрдХ рдореЗрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реИред
рдЯреЗрдореНрдкрд▓реЗрдЯ рдЧрд╛рдЗрдб рд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреБрдВрдЬреА рдХреЛ

рдХреГрдкрдпрд╛ # 7743 рдПрдХ рдХреЛрд╢рд┐рд╢ рджреЗред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣реЗрд▓реНрдо 2 рдХреЗ рд▓рд┐рдП рдХрд┐рдП рдЧрдП рдХрдорд┐рдЯреНрд╕ рдХреЛ рд╣реЗрд▓реНрдо 3 рд╕реЗ рдЕрдзрд┐рдХ рдкреЛрд░реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдпрд╣реА рд╡рдЬрд╣ рд╣реИ рдХрд┐ рдХрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд╣рд╛рдВ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рджреЗрдЦ рд░рд╣реЗ рд╣реЛрдВрдЧреЗред

рдЕрднреА рднреА рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ 2.16.3 рдХреЗ рд╕рд╛рде рджреЗрдЦ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рддрднреА рдЬрдм рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ рд╣реЛред

рдмреВ рдЙрдкрд╢рд░реНрдд рд╣реИ рдФрд░ рдлреВ рдкреИрд░реЗрдВрдЯ рдЪрд╛рд░реНрдЯ рд╣реИ:

vibu@item-ax35755:~/work$ cat boo/values.yaml 
object:
  fromSubchart:
    hello: from boo
vibu@item-ax35755:~/work$ cat foo/values.yaml 
boo:
  object:
    fromParent:
      hello: from foo
    fromSubchart: null
vibu@item-ax35755:~/work$ cat boo/templates/test.yaml 
{{ toYaml .Values.object }}
vibu@item-ax35755:~/work$ cat foo/requirements.yaml 
dependencies:
- name: boo
  repository: file://../boo
  version: 0.1.0
vibu@item-ax35755:~/work/foo$ helm version -c
Client: &version.Version{SemVer:"v2.16.3", GitCommit:"1ee0254c86d4ed6887327dabed7aa7da29d7eb0d", GitTreeState:"clean"}
vibu@item-ax35755:~/work/foo$ helm dep up
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "incubator" chart repository
...Successfully got an update from the "stable" chart repository
Update Complete.
Saving 1 charts
Deleting outdated charts

vibu@item-ax35755:~/work/foo$ helm template .
---
# Source: foo/charts/boo/templates/test.yaml
fromParent:
  hello: from foo
fromSubchart:
  hello: from boo


vibu@item-ax35755:~/work/foo$ mv requirements.yaml{,.bak}
vibu@item-ax35755:~/work/foo$ helm template .
---
# Source: foo/charts/boo/templates/test.yaml
fromParent:
  hello: from foo

рджреЛрдиреЛрдВ рдЪрд╛рд░реНрдЯ рдпрд╣рд╛рдВ:

helm_5184.zip

@bacongobbler рдХреНрдпрд╛ 2.x рдореЗрдВ рдЗрд╕реЗ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдЗрд░рд╛рджрд╛ рд╣реИ?

рд╣рдо рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рднреА рд╣рд┐рдЯ рдХрд░рддреЗ рд╣реИрдВ (@vbuciuc рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рдПрдХ рдХреЗ рд╕рдорд╛рди) рдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП "рд╢реВрдиреНрдп" рдХрд╛рдо рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдЬрдм рдУрд╡рд░рдЪрд╛рд░реНрдЬ рдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдореЗрдВ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛред рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг (3.1.x) рдЙрдореНрдореАрдж рдХреЗ рдореБрддрд╛рдмрд┐рдХ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред

@bacongobbler @technosophos рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд╕рд╛рде-рд╕рд╛рде Helm 3.3.4 рдореЗрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реВрдВ, рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдкреБрдирдГ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ;

рдореИрдВ рдЗрд╕ рдмрд╛рдд рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕рдиреЗ 3.1.2 рдореЗрдВ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдиреЗ 3.2.x @palee рдЙрд▓реНрд▓реЗрдЦреЛрдВ рдХреЗ рдмрд╛рдж рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдЕрднреА рдХреЗ рд▓рд┐рдП, рдРрд╕рд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ @ tuzla0autopilot4 рдХрд╛ рдЗрд╕реЗ false рдЬреИрд╕реЗ рдиреЙрди-рдореИрдк рдорд╛рди рдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдЗрдЪреНрдЫрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд╣реЛрдиреЗ рдкрд░ рдЖрдЙрдЯрдкреБрдЯ рдЪреЗрддрд╛рд╡рдиреА рджреЗрддрд╛ рд╣реИред

@ рдЪрд┐рд▓реА-рдореИрди, рдореИрдВрдиреЗ рдЕрднреА 3.1.3 рд╕рд╛рде рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ рдФрд░ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдпрд╣ null рд╕рд╛рде рд▓рд╛рдЧреВ рд╣реЛрдЧрд╛ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓рддреА рд╣реИ рдФрд░ рдпрд╣ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреЗ рд╕рд╛рде ( false , 0 , [] ) рдЗрд╕рдХреЗ рд╕рд╛рде рдордирд╛ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЬреИрд╕реЗ,)

`` `coalesce.go: 196: рдЪреЗрддрд╛рд╡рдиреА: рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЧреИрд░ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ (рдорд╛рдирдЪрд┐рддреНрд░ [рдЕрдиреБрд░реЛрдз: рдорд╛рдирдЪрд┐рддреНрд░ [рд╕реАрдкреАрдпреВ: 250 рдореАрдЯрд░ рдореЗрдореЛрд░реА: 256Mi]])
рддреНрд░реБрдЯрд┐: UPGRADE рд╡рд┐рдлрд▓: рдорд╛рди рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд╛рд░реНрдЯ рдореЗрдВ рд╕реНрдХреАрдорд╛ (рдПрд╕) рдХреЗ рд╡рд┐рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдкреВрд░рд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ:
рдкреЛрд╕реНрдЯрдЧреНрд░реИрд╕реЗрдХрд▓:

  • рд╕рдВрд╕рд╛рдзрди: рдЕрдорд╛рдиреНрдп рдкреНрд░рдХрд╛рд░ред рдЙрдореНрдореАрдж: рд╡рд╕реНрддреБ, рджрд┐рдпрд╛: рдмреВрд▓рд┐рдпрди
    `` (or what the type that I try that is not a dict/hash). With 3.3.4 I get just silence and it does nothing with null` рдФрд░ рдЗрд╕реА рддрд░рд╣ рдмрд╛рдХреА рд╕рднреА рдЪреАрдЬреЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ рдордирд╛ рдХрд░ рджреЗрддреА рд╣реИрдВред рдЬреНрдпрд╛рджрд╛ рдХрд╖реНрдЯрджрд╛рдпреА...

рдореИрдВ рдЕрднреА рднреА 3.4.2 рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореБрджреНрджрд╛ рдЕрднреА рднреА 3.4.2 рдореЗрдВ рдореМрдЬреВрдж рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдХреБрдЫ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВред
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдЪрд╛рд░реНрдЯ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХрдИ рдЙрдк-рдЪрд╛рд░реНрдЯ рд╣реИрдВред
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЛ рдЙрдк рдЪрд╛рд░реНрдЯ рдореЗрдВ рдбрд╛рд▓рддреЗ рд╕рдордп null рдУрд╡рд░рд░рд╛рдЗрдб рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рд╕рдорд╛рди рдорд╛рдиреЛрдВ рдХреЛ рдореВрд▓ рдЪрд╛рд░реНрдЯ рдорд╛рдиреЛрдВ рдореЗрдВ рд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЕрдкреЗрдХреНрд╖рд╛ рдХреЗ рдЕрдиреБрд░реВрдк рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдпрд╣ рдХреЗрд╡рд▓ рдЙрдк-рдЪрд╛рд░реНрдЯ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИред рдЬрдм рдЖрдк рдЗрд╕реЗ рд╕рд┐рдВрдЧрд▓ (рдлреНрд▓реИрдЯ) рдЪрд╛рд░реНрдЯ рдореЗрдВ рдбрд╛рд▓рддреЗ рд╣реИрдВ рддреЛ рд╕рдм рдХреБрдЫ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореИрдВ 3.4.2 рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЬрдм рдЙрдкрдХреЗрд░реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐ @BohdanKalytka рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рд╣реИ)ред
рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдореИрдВ рдПрдХ OpenShift рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ ElasticSearch рд╣реЗрд▓рдо рдЪрд╛рд░реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп
рдХреНрдпрд╛ рдпрд╣ рдореБрджреНрджрд╛ рдлрд┐рд░ рд╕реЗ рдЦреБрд▓рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ, рдпрд╛ рд╣рдореЗрдВ рдПрдХ рдирдпрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

# 9136 рдХреЛ рдЙрдард╛рдпрд╛

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

sgoings picture sgoings  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

tjquinno picture tjquinno  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

bq1756 picture bq1756  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

naveensrinivasan picture naveensrinivasan  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

antoniaklja picture antoniaklja  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ