jiajie-chen opened a new issue, #35227: URL: https://github.com/apache/airflow/issues/35227
### Official Helm Chart version 1.11.0 (latest released) ### Apache Airflow version v2.7.1 ### Kubernetes Version v1.27.4 (minikube v1.31.2) ### Helm Chart configuration This causes errors: ```yaml workers: strategy: type: Recreate # disable persistence to install `Deployment` persistence: enabled: false logs: persistence: enabled: false ``` But this works: ```yaml scheduler: strategy: type: Recreate # disable persistence to install `Deployment` logs: persistence: enabled: false ``` ### Docker Image customizations Using Helm chart defaults. ### What happened When installing the Helm chart with `workers.strategy.type=Recreate` and persistence disabled, the installation fails. Helm raises the error: ``` Error: INSTALLATION FAILED: 1 error occurred: * Deployment.apps "airflow-worker" is invalid: spec.strategy.rollingUpdate: Forbidden: may not be specified when strategy `type` is 'Recreate' ``` This also applies for `triggerer` and `dagProcessor`. However, the `scheduler` and `webserver` are able to install with `Recreate`. ### What you think should happen instead Setting `strategy.type=Recreate` should behave the same for all Airflow `Deployment`s. The final spec should show something like: ```yaml apiVersion: apps/v1 kind: Deployment metadata: name: airflow-worker namespace: airflow spec: strategy: type: Recreate # no `rollingUpdate` ``` ### How to reproduce Run an installation on a new cluster/namespace (will error): ```bash helm install airflow apache-airflow/airflow \ --namespace airflow --create-namespace \ --set 'workers.strategy.type=Recreate' \ --set 'workers.persistence.enabled=false' \ --set 'logs.persistence.enabled=false' ``` However, this doesn't cause errors: ```bash helm install airflow apache-airflow/airflow \ --namespace airflow --create-namespace \ --set 'scheduler.strategy.type=Recreate' \ --set 'logs.persistence.enabled=false' ``` ### Anything else Setting the strategy to this achieves the same functionality as `Recreate`: ```yaml workers: strategy: rollingUpdate: maxSurge: 0 maxUnavailable: "100%" ``` But a consistent fix would be ideal - either not supporting `Recreate` or allowing it for all deployments. ### Are you willing to submit PR? - [ ] 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: commits-unsubscr...@airflow.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org