<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Topics tagged with environments]]></title><description><![CDATA[A list of topics that have been tagged with environments]]></description><link>https://fusionauth.io/community/forum/tags/environments</link><generator>RSS for Node</generator><lastBuildDate>Tue, 21 Apr 2026 13:37:42 GMT</lastBuildDate><atom:link href="https://fusionauth.io/community/forum/tags/environments.rss" rel="self" type="application/rss+xml"/><pubDate>Invalid Date</pubDate><ttl>60</ttl><item><title><![CDATA[Different base resources for an environment]]></title><description><![CDATA[<p dir="auto">The best way to do this is to put a value on the tenant.data object. From there you can access it in each theme.</p>
<p dir="auto">So, for the tenant in the dev environment, set tenant.data.assethost to dev.example.com. For the prod environment,  set tenant.data.assethost to dev.example.com.</p>
<p dir="auto">Then, in your theme, you'd have something like this:</p>
&lt;link rel="stylesheet" href="${tenant.data.assethost}/styles.css"/&gt;

<p dir="auto">The reason to use the tenant object is that it is <a href="https://fusionauth.io/docs/v1/tech/themes/template-variables/#common-variables" rel="nofollow ugc">available on every theme template</a>.</p>
<p dir="auto">This does mean that your tenant configuration will differ slightly between environments. You can also replicate this field value between tenants if you are using multiple tenants.</p>
]]></description><link>https://fusionauth.io/community/forum/topic/1337/different-base-resources-for-an-environment</link><guid isPermaLink="true">https://fusionauth.io/community/forum/topic/1337/different-base-resources-for-an-environment</guid><dc:creator><![CDATA[dan]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Parameterizing themes]]></title><description><![CDATA[<p dir="auto">We don’t currently resolve any environment variables in the themes, or anything other than what is documented here: <a href="https://fusionauth.io/docs/v1/tech/themes/template-variables/" rel="nofollow ugc">https://fusionauth.io/docs/v1/tech/themes/template-variables/</a></p>
<p dir="auto">But you can set variables in the Helpers template using assign that can be used in other templates. You could use a templating language like jinja to build the Helpers template at build time and then a script to load it during deploy. (Or even sed.)</p>
<p dir="auto">You can also create different themes (a dev theme, a qa theme) and assign them via scripts to the different environments (unsure if you are using different tenants to represent environments or different FusionAuth instances, but the concept is the same).</p>
]]></description><link>https://fusionauth.io/community/forum/topic/1306/parameterizing-themes</link><guid isPermaLink="true">https://fusionauth.io/community/forum/topic/1306/parameterizing-themes</guid><dc:creator><![CDATA[dan]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Should I run multiple environments in different tenants or different instances?]]></title><description><![CDATA[<p dir="auto">I'm a former consultant, so the answer is, as always, "it depends".</p>
<p dir="auto">Strengths of running in different tenants:</p>

easier to manage (only one instance to run and upgrade)
configuration, such as lambda or identity provider config, can be shared across tenants
cheaper to run (again, only one instance and database to pay for)

<p dir="auto">Strengths of running in different instances:</p>

true isolation when running
you can allow developers access to the admin ui of the instance
a misconfiguration in development isn't going to affect production
you can have a true IaC approach, where you deploy config changes across environments one at a time

<p dir="auto">In general, it makes sense to be careful about production environments, as if any configuration changes are made in error, it can impact the customer experience.</p>
<p dir="auto">It really depends on what works best for you.</p>
]]></description><link>https://fusionauth.io/community/forum/topic/1065/should-i-run-multiple-environments-in-different-tenants-or-different-instances</link><guid isPermaLink="true">https://fusionauth.io/community/forum/topic/1065/should-i-run-multiple-environments-in-different-tenants-or-different-instances</guid><dc:creator><![CDATA[dan]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Use specified ids for all entities to make sure that environments are the same]]></title><description><![CDATA[<p dir="auto">If you'd like the form fields and other entities to all have the same ids across environments, you can do that.</p>
<p dir="auto">The default form fields ship with random ids, as you mention. Some FusionAuth entities that always have the same ids, but if you want to control everything, the easiest way to do so is to create all the entities yourself.</p>
<p dir="auto">You have two options:</p>

Kickstart, a declarative format that runs only when a FusionAuth is first initialized. More details here: <a href="https://fusionauth.io/docs/v1/tech/installation-guide/kickstart/" rel="nofollow ugc">https://fusionauth.io/docs/v1/tech/installation-guide/kickstart/</a>
Using the API, typically via one of the client libraries: <a href="https://fusionauth.io/docs/v1/tech/client-libraries/" rel="nofollow ugc">https://fusionauth.io/docs/v1/tech/client-libraries/</a>

<p dir="auto">With Kickstart, you can create all the form fields, forms and other entities. You'd hard code the UUIDs for each entity. For example, you could hardcode a form field's UUID like so (an excerpt from a kickstart file):</p>
{
      "method": "POST",
      "url": "/api/form/field/85a03867-dccf-4882-adde-1a79aeec50df",
      "body": {
        "field": {
          "description": "The user's first name",
          "key": "user.firstName",
          "name": "Custom first-name Form Field",
          "required": true
        }
      }
    },

<p dir="auto">You would build up forms out of these fields with known ids, then assign forms to the applications/tenants and so on.</p>
<p dir="auto">If you use Kickstart, the default entities with the random ids will still be added, but can be ignored. Currently you can't run a DELETE operation in Kickstart, but you can either delete the default entities later via an API call. If being able to call a DELETE operation in a Kickstart file is important, please consider <a href="https://github.com/fusionauth/fusionauth-issues/issues" rel="nofollow ugc">filing an issue</a>.</p>
<p dir="auto">You could do much the same with APIs in python, ruby, java, or any of the other supported languages as well. All entities take an id on creation. With these libraries, you'd also be able to delete the default form and other elements. The benefit of using the API is that you aren't limited by Kickstart, but there's more code to write.</p>
<p dir="auto">You can also use Kickstart to set up your environment initially and then use the API/client libraries for changes over time.</p>
]]></description><link>https://fusionauth.io/community/forum/topic/770/use-specified-ids-for-all-entities-to-make-sure-that-environments-are-the-same</link><guid isPermaLink="true">https://fusionauth.io/community/forum/topic/770/use-specified-ids-for-all-entities-to-make-sure-that-environments-are-the-same</guid><dc:creator><![CDATA[dan]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[How can we migrate FusionAuth configuration from dev&#x2F;qa to prod]]></title><description><![CDATA[<p dir="auto">For exporting changes, it depends on how you make the changes. There's a <a href="https://fusionauth.io/community/forum/topic/374/terraform-provider-for-fusionauth-released">community supported terraform module</a>, but it doesn't cover all the apis (PRs welcome!).</p>
<p dir="auto">You could also script all your changes using the API and apply those scripts to different environments. We mostly see folks writing migration scripts that call the APIs. These are very similar to database migration scripts except they make REST calls instead of SQL. The scripts are run during upgrades of their app. (If you are using an app like rails, you could even leverage the existing migration framework and a <a href="https://fusionauth.io/docs/v1/tech/client-libraries/" rel="nofollow ugc">client library</a>.)</p>
<p dir="auto"><a href="https://fusionauth.io/docs/v1/tech/installation-guide/kickstart" rel="nofollow ugc">Kickstart</a> works well for dev envts and CI, but doesn't handle changes (it assumes there is no data in fusionauth and won't run if it sees any).</p>
]]></description><link>https://fusionauth.io/community/forum/topic/549/how-can-we-migrate-fusionauth-configuration-from-dev-qa-to-prod</link><guid isPermaLink="true">https://fusionauth.io/community/forum/topic/549/how-can-we-migrate-fusionauth-configuration-from-dev-qa-to-prod</guid><dc:creator><![CDATA[dan]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Question about dev&#x2F;staging and databases]]></title><description><![CDATA[<p dir="auto">Hmmm.</p>
<p dir="auto">Here's an issue tracking digitalocean database issues--some managed databases don't work right now: <a href="https://github.com/FusionAuth/fusionauth-issues/issues/95" rel="nofollow ugc">https://github.com/FusionAuth/fusionauth-issues/issues/95</a></p>
<p dir="auto">The number of open connections should be around 10. I believe that is per fusionauth instance.</p>
<p dir="auto">What were the specs you were seeing the issues with?</p>

what version of fusionauth
how many pods running it
what version of postgres
what size were the pods (in terms of memory and CPU)
what are the replication steps to trigger the negative performance impacts

<p dir="auto">We've seen FusionAuth (the application) run in 64M of RAM. You can specify the maximum amount of memory used in the configuration file or via environment args. More here: <a href="https://fusionauth.io/docs/v1/tech/reference/configuration" rel="nofollow ugc">https://fusionauth.io/docs/v1/tech/reference/configuration</a></p>
<p dir="auto">Note that if you don't need advanced search functionality, you can use the database search engine and avoid running elasticsearch: <a href="https://fusionauth.io/docs/v1/tech/tutorials/switch-search-engines" rel="nofollow ugc">https://fusionauth.io/docs/v1/tech/tutorials/switch-search-engines</a> talks about how to switch between them. That may eliminate some of the memory pressure if you were running elastic.</p>
]]></description><link>https://fusionauth.io/community/forum/topic/212/question-about-dev-staging-and-databases</link><guid isPermaLink="true">https://fusionauth.io/community/forum/topic/212/question-about-dev-staging-and-databases</guid><dc:creator><![CDATA[dan]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Can you store off fusionauth config in a file?]]></title><description><![CDATA[<p dir="auto">You could look at kickstart: <a href="https://fusionauth.io/docs/v1/tech/installation-guide/kickstart" rel="nofollow ugc">https://fusionauth.io/docs/v1/tech/installation-guide/kickstart</a></p>
<p dir="auto">Kickstart only works if the other devs' fusionauth instances are going to be starting from scratch.</p>
<p dir="auto">Otherwise you might want to vote for <a href="https://github.com/FusionAuth/fusionauth-issues/issues/560" rel="nofollow ugc">https://github.com/FusionAuth/fusionauth-issues/issues/560</a></p>
]]></description><link>https://fusionauth.io/community/forum/topic/73/can-you-store-off-fusionauth-config-in-a-file</link><guid isPermaLink="true">https://fusionauth.io/community/forum/topic/73/can-you-store-off-fusionauth-config-in-a-file</guid><dc:creator><![CDATA[dan]]></dc:creator><pubDate>Invalid Date</pubDate></item></channel></rss>