question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Helm Chart Allow for Empty data settings

See original GitHub issue

The helm-chart should not force the settings of Resultsbackend, Metadata and Broker. Either through an additional configuration option or implicitly by not providing values, the helm-chart should refrain from populating those Airflow-Env configurations.

Use case / motivation The current Helm chart forces the configuration of certain values such as brokerUrl (https://github.com/apache/airflow/blob/main/chart/values.yaml#L236) Which will then be populated as Airflow ENV config. Due to Airflows configuration precedence (https://airflow.apache.org/docs/apache-airflow/stable/howto/set-config.html) are these settings taking highest priority in Airflow configuration.

With the suggested change, users can dynamically provide Airflow configurations through Airflow’s __CMD environment variables.

In other words; provide users with the option to utilize Airflow’s __CMD ENV configuration.

I am willing to submit a PR.

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Reactions:1
  • Comments:15 (15 by maintainers)

github_iconTop GitHub Comments

1reaction
dstandishcommented, Oct 13, 2021

I too see the value in allowing components of the standard_airflow_environment to be sourced in a way other than k8s secret.

One reason is, if it’s an officially supported way of managing configuration in airflow, then the helm chart should probably allow it. Otherwise it’s confusing, as a user sees “oh i can store these params in AWS ssm” only to later discover it’s not possible with the helm chart.

Another reason is the convenience of managing everything from one source. Rather than some things in k8s secrets, others in vault or SSM – better to have one place.

And from a CI perspective, managing k8s secrets can be a little more cumbersome than something like vault or SSM.

From an implementation perspective, it seems we might be able to just move everything to extraEnvFrom (or something like this), and get rid of the standard_airflow_environment e.g. and the similar celery one. Then the user has the flexibility afforded by airflow.

0reactions
potiukcommented, Oct 14, 2021

Quite agree. I think Airflow precedence makes things easier at times but using pre-defined env variables in chart makes it less powerful and more opinionated.

I prepared a PR that might be a good way of addressing the issue: #18974

WDYT?

Read more comments on GitHub >

github_iconTop Results From Across the Web

Chart Development Tips and Tricks - Helm
The required function allows you to declare a particular values entry as required for template rendering. If the value is empty, the template...
Read more >
helm template check for empty string - Stack Overflow
I need to check $var. alias inside the printf in the code snippet and write custom logic to print a custom value.
Read more >
13 Best Practices for using Helm - Coder Society
Helm allows you to install the same database with a single command ... This article features 13 best practices for creating Helm charts...
Read more >
The Kubernetes executor for GitLab Runner
A table of "key=value" = "Effect" pairs in the format of string=string:string . Setting this allows pods to schedule to nodes with all...
Read more >
Secrets | Kubernetes
Kubernetes Secrets are, by default, stored unencrypted in the API server's underlying data store (etcd). Anyone with API access can retrieve or ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found