alecsg77 opened a new issue, #46733:
URL: https://github.com/apache/airflow/issues/46733

   ### Official Helm Chart version
   
   main (development)
   
   ### Apache Airflow version
   
   2.10.5
   
   ### Kubernetes Version
   
   k3s version v1.31.5+k3s1
   
   ### Helm Chart configuration
   
   config:
     webserver:
       expose_config: 'True'
   webserverSecretKeySecretName: airflow-webserver-secret-key
   executor: "CeleryExecutor,KubernetesExecutor"
   createUserJob:
     useHelmHooks: false
     applyCustomEnv: false
   migrateDatabaseJob:
     useHelmHooks: false
     applyCustomEnv: false
   ingress:
     web:
       enabled: true
       ingressClassName: tailscale
       hosts:
         - airflow
       tls:
         enabled: true
   dags:
     persistence:
       enabled: true
     gitSync:
       enabled: false
   
   
   ### Docker Image customizations
   
   None
   
   ### What happened
   
   Helm upgrade failed for release airflow/airflow with chart 
[email protected]:
   cannot patch "airflow-scheduler" with kind Deployment: Deployment.apps 
"airflow-scheduler" is invalid: metadata.labels: Invalid value: 
"CeleryExecutor,KubernetesExecutor": a valid label must be an empty string or 
consist of alphanumeric characters, ''-'', ''_'' or ''.'', and must start and 
end with an alphanumeric character (e.g. ''MyValue'',  or ''my_value'',  or 
''12345'', regex used for validation is 
''(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?'')'
   
   ### What you think should happen instead
   
   Successfully update the chart and use the multiple executors feature.
   
   ### How to reproduce
   
   - install airflow using the latest official chart (1.15.0)
   - git clone airflow repo and checkout main
   - `helm upgrade -f values.yaml airflow ./char/ --namespace airflow`
   
   ### Anything else
   
   Linked to https://github.com/apache/airflow/issues/43224
   Scheduler deployment sets a label executor without considering that the 
executor should be on a comma-separated list.
   
https://github.com/apache/airflow/blob/a10ae15440b812e146d57de1a5d5a02b3ec9c4c7/chart/templates/scheduler/scheduler-deployment.yaml#L60
   
   Two possible solutions:
   
   1. use the first executor in the list as the note in the config section 
suggests as the default executor (ignoring the others)
   2. generate multiple labels (executor, executor-1, executor-2, ...) for each 
executor in the list
   
   ### Are you willing to submit PR?
   
   - [x] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [x] I agree to follow this project's [Code of 
Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to