[SIP] Proposal for fetching configuration from external source</h2> <h3>Motivation</h3> <p>We would like to run Apache Superset on ECS Fargate (for example) and not needing to customize the container itself, just run the Docker Hub official Image.</p> <p>This also applies to other Cloud Providers and Parameter-Store like providers (i.e.: Google, Vault, Nomad, Consul, etc...)</p> <h3>Proposed Change</h3> <p>The proposed change is to have a <code>ConfigurationFetcher</code> Contract set via Environment Variable, i.e.: <code>CONFIGURATION_FROM=awsparameterstore</code> where it defaults to the current behaviour (Check superset_config.yml on FileSystem) and <code>CONFIGURATION_LOCATION=<aws:arn></code></p> <h3>New or Changed Public Interfaces</h3> <p>No changes to existing endpoints, just the CLI where we can specify where we want to fetch the configuration from.</p> <h3>New dependencies</h3> <ul> <li>boto3</li> <li>botocore</li> </ul> <h3>Migration Plan and Compatibility</h3> <p>No need for a migration plan, given that the default behavior will remain the same</p> <h3>Rejected Alternatives</h3> <p>N/A</p> <p><strong>Comment From: rusackas</strong></p> <p>Thank you for the proposal! It's been numbered - let me/us know if you have questions about moving this through the SIP process.</p> <p><strong>Comment From: rusackas</strong></p> <p>I don't see a DISCUSS thread on the dev@ mailing list. You'll need to do that, or this may eventually be closed as abandoned.</p> <p><strong>Comment From: driverpt</strong></p> <p>How do I do that?</p> <p><strong>Comment From: rusackas</strong></p> <p>To open a [DISCUSS] thread on the Apache Superset Dev mailing list, you first have to be <em>subscribed</em> to the Dev mailing list. You can do that by sending a blank email to dev-subscribe@superset.apache.org.</p> <p>Once you've received confirmation that you've subscribed, you can email the listserv. Send an email to dev@superset.apache.org with a title like "[DISCUSS][SIP-XXX] My Sip Title" and include a brief synopsis about your SIP and a link to this GitHub thread. </p> <p>Once discussion has settled out, one of the Committers/PMC members may decide to open up a [VOTE] thread as the next step. </p> <p><strong>Comment From: rusackas</strong></p> <p>Curious if @mistercrunch or @dpgaspar have alternate ideas here, this seems like something they may have dealt with in the past. If people are into this, I can help nudge it along with a DISCUSS thread. </p> <p><strong>Comment From: mistercrunch</strong></p> <p>Oh! this is super-related to this -> https://github.com/apache/superset/pull/34210</p> <p>Out of the box my plan is to have much better support for env vars (for everything that's static - ie not a python method or object, but supporting inline typed json inline in env vars), and to allow for managing some configs (you define which ones by configuration) in the metadata database itself.</p> <p>As I work on this, I'll think about how we could have ways to fetch configs from other places.</p> </div></div> <div class="column-side column-left"></div> <div class="column-side column-right"> <div class="toc-content"></div></div> </div> </div> <footer class="module footer_minimal"> <p class="copyright">©2025 Aurora Blog All rights reserved</p> <div class="text-secondary">Unless otherwise stated, works are licensed under <a target="_blank" href="https://creativecommons.org/licenses/by-nc-nd/4.0/">Attribution-NonCommercial-NoDerivatives 4.0 International</a>.</div> </footer>. <script src="https://blog.aisem.top/themes/minimal/assets/lib/highlightjs@11.5.1/highlight.min.js"></script> <script src="https://blog.aisem.top/themes/minimal/assets/js/main.min.js"></script> </body> </html>