<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Deploying using Databricks asset bundles (DABs) in a closed network in Data Engineering</title>
    <link>https://community.databricks.com/t5/data-engineering/deploying-using-databricks-asset-bundles-dabs-in-a-closed/m-p/124473#M47204</link>
    <description>&lt;P&gt;&lt;a href="https://community.databricks.com/t5/user/viewprofilepage/user-id/143781"&gt;@dbxlearner&lt;/a&gt;&amp;nbsp; were you able to fix the issue ? i am running into same one&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 08 Jul 2025 14:53:30 GMT</pubDate>
    <dc:creator>sunilr8</dc:creator>
    <dc:date>2025-07-08T14:53:30Z</dc:date>
    <item>
      <title>Deploying using Databricks asset bundles (DABs) in a closed network</title>
      <link>https://community.databricks.com/t5/data-engineering/deploying-using-databricks-asset-bundles-dabs-in-a-closed/m-p/119984#M46018</link>
      <description>&lt;P&gt;Hello, I'm trying to deploy DBX workflows using DABs using an Azure DevOps pipeline, in a network that cannot download the required terraform databricks provider package online, due to firewall/network restrictions.&lt;BR /&gt;&lt;BR /&gt;I have followed this post:&amp;nbsp;&lt;A href="https://github.com/databricks/cli/issues/1238" target="_blank"&gt;https://github.com/databricks/cli/issues/1238&lt;/A&gt;&amp;nbsp;on how to do this by providing the terraform databricks provider file locally, however, the terraform databricks provider version it's trying to use on the 'databricks bundle deploy' command (1.71.0) it is not matching my file version (1.50.0), hence I'm getting the following "Error: failed to query available provider packages, could not retrieve the list of available versions for provider databricks/databricks: no available releases match the given constrains 1.71.0".&lt;BR /&gt;&lt;BR /&gt;I had a look at the bundle.tf.json file, that the databricks bundle deploy generates when using the deploy command and it is stating to use version 1.71.0, is there a way to set this to the version I want?&lt;/P&gt;</description>
      <pubDate>Thu, 22 May 2025 15:31:12 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/deploying-using-databricks-asset-bundles-dabs-in-a-closed/m-p/119984#M46018</guid>
      <dc:creator>dbxlearner</dc:creator>
      <dc:date>2025-05-22T15:31:12Z</dc:date>
    </item>
    <item>
      <title>Re: Deploying using Databricks asset bundles (DABs) in a closed network</title>
      <link>https://community.databricks.com/t5/data-engineering/deploying-using-databricks-asset-bundles-dabs-in-a-closed/m-p/120121#M46071</link>
      <description>&lt;P&gt;Another thing I noticed is, when running the 'databricks bundle debug terraform' command, it mentions these variables:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dbxlearner_0-1748044088599.png" style="width: 400px;"&gt;&lt;img src="https://community.databricks.com/t5/image/serverpage/image-id/17097i2CD094D106E44BC2/image-size/medium?v=v2&amp;amp;px=400" role="button" title="dbxlearner_0-1748044088599.png" alt="dbxlearner_0-1748044088599.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;I have tried setting these variables as environment variables in my ADO pipeline, specially the databricks terraform provider variable, but it has not made any effect. If anyone has previously used these variables would appreciate if you can let me know how to set them properly.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 23 May 2025 23:49:11 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/deploying-using-databricks-asset-bundles-dabs-in-a-closed/m-p/120121#M46071</guid>
      <dc:creator>dbxlearner</dc:creator>
      <dc:date>2025-05-23T23:49:11Z</dc:date>
    </item>
    <item>
      <title>Re: Deploying using Databricks asset bundles (DABs) in a closed network</title>
      <link>https://community.databricks.com/t5/data-engineering/deploying-using-databricks-asset-bundles-dabs-in-a-closed/m-p/124473#M47204</link>
      <description>&lt;P&gt;&lt;a href="https://community.databricks.com/t5/user/viewprofilepage/user-id/143781"&gt;@dbxlearner&lt;/a&gt;&amp;nbsp; were you able to fix the issue ? i am running into same one&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 08 Jul 2025 14:53:30 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/deploying-using-databricks-asset-bundles-dabs-in-a-closed/m-p/124473#M47204</guid>
      <dc:creator>sunilr8</dc:creator>
      <dc:date>2025-07-08T14:53:30Z</dc:date>
    </item>
    <item>
      <title>Re: Deploying using Databricks asset bundles (DABs) in a closed network</title>
      <link>https://community.databricks.com/t5/data-engineering/deploying-using-databricks-asset-bundles-dabs-in-a-closed/m-p/135878#M50452</link>
      <description>&lt;P class="my-2 [&amp;amp;+p]:mt-4 [&amp;amp;_strong:has(+br)]:inline-block [&amp;amp;_strong:has(+br)]:pb-2"&gt;There is currently&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;no direct configuration field&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;inside a Databricks Asset Bundle (DAB) to override the Terraform Databricks provider version that&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;databricks bundle deploy&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;uses. The provider version (like&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;1.71.0&lt;/CODE&gt;) is automatically chosen by the Databricks CLI based on the bundle schema it was built against. However, there are&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;workarounds&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;that allow you to force DAB to use your local provider (like&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;1.50.0&lt;/CODE&gt;) even in a closed or air‑gapped network.​&lt;/P&gt;
&lt;H2 class="mb-2 mt-4 font-display font-semimedium text-base first:mt-0"&gt;Recommended Workaround&lt;/H2&gt;
&lt;P class="my-2 [&amp;amp;+p]:mt-4 [&amp;amp;_strong:has(+br)]:inline-block [&amp;amp;_strong:has(+br)]:pb-2"&gt;To pin the provider version offline and bypass the registry check, you can pre‑create a Terraform lock file and local mirror.&lt;/P&gt;
&lt;OL class="marker:text-quiet list-decimal"&gt;
&lt;LI class="py-0 my-0 prose-p:pt-0 prose-p:mb-2 prose-p:my-0 [&amp;amp;&amp;gt;p]:pt-0 [&amp;amp;&amp;gt;p]:mb-2 [&amp;amp;&amp;gt;p]:my-0"&gt;
&lt;P class="my-2 [&amp;amp;+p]:mt-4 [&amp;amp;_strong:has(+br)]:inline-block [&amp;amp;_strong:has(+br)]:pb-2"&gt;&lt;STRONG&gt;Create a Terraform CLI config file (&lt;CODE&gt;terraform.rc&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;or&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;cli.tfrc&lt;/CODE&gt;)&lt;/STRONG&gt;:&lt;/P&gt;
&lt;DIV class="w-full md:max-w-[90vw]"&gt;
&lt;DIV class="codeWrapper text-light selection:text-super selection:bg-super/10 my-md relative flex flex-col rounded font-mono text-sm font-normal bg-subtler"&gt;
&lt;DIV class="translate-y-xs -translate-x-xs bottom-xl mb-xl flex h-0 items-start justify-end md:sticky md:top-[100px]"&gt;
&lt;DIV class="overflow-hidden rounded-full border-subtlest ring-subtlest divide-subtlest bg-base"&gt;
&lt;DIV class="border-subtlest ring-subtlest divide-subtlest bg-subtler"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV class="-mt-xl"&gt;
&lt;DIV&gt;
&lt;DIV class="text-quiet bg-subtle py-xs px-sm inline-block rounded-br rounded-tl-[3px] font-thin" data-testid="code-language-indicator"&gt;text&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&lt;CODE&gt;provider_installation {
  filesystem_mirror {
    path = "/path/to/providers"
    include = ["*/*/*"]
  }
  direct {
    exclude = ["*/*/*"]
  }
}
&lt;/CODE&gt;&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P class="my-2 [&amp;amp;+p]:mt-4 [&amp;amp;_strong:has(+br)]:inline-block [&amp;amp;_strong:has(+br)]:pb-2"&gt;Then set the environment variable:&lt;/P&gt;
&lt;DIV class="w-full md:max-w-[90vw]"&gt;
&lt;DIV class="codeWrapper text-light selection:text-super selection:bg-super/10 my-md relative flex flex-col rounded font-mono text-sm font-normal bg-subtler"&gt;
&lt;DIV class="translate-y-xs -translate-x-xs bottom-xl mb-xl flex h-0 items-start justify-end md:sticky md:top-[100px]"&gt;
&lt;DIV class="overflow-hidden rounded-full border-subtlest ring-subtlest divide-subtlest bg-base"&gt;
&lt;DIV class="border-subtlest ring-subtlest divide-subtlest bg-subtler"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV class="-mt-xl"&gt;
&lt;DIV&gt;
&lt;DIV class="text-quiet bg-subtle py-xs px-sm inline-block rounded-br rounded-tl-[3px] font-thin" data-testid="code-language-indicator"&gt;bash&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&lt;CODE&gt;&lt;SPAN class="token token"&gt;export&lt;/SPAN&gt; &lt;SPAN class="token token assign-left"&gt;TF_CLI_CONFIG_FILE&lt;/SPAN&gt;&lt;SPAN class="token token operator"&gt;=&lt;/SPAN&gt;/path/to/terraform.rc
&lt;/CODE&gt;&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI class="py-0 my-0 prose-p:pt-0 prose-p:mb-2 prose-p:my-0 [&amp;amp;&amp;gt;p]:pt-0 [&amp;amp;&amp;gt;p]:mb-2 [&amp;amp;&amp;gt;p]:my-0"&gt;
&lt;P class="my-2 [&amp;amp;+p]:mt-4 [&amp;amp;_strong:has(+br)]:inline-block [&amp;amp;_strong:has(+br)]:pb-2"&gt;&lt;STRONG&gt;Manually create a&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;terraform.hcl.lock&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;file&lt;/STRONG&gt;:&lt;BR /&gt;Before running&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;databricks bundle deploy&lt;/CODE&gt;, create a file under&lt;BR /&gt;&lt;CODE&gt;.databricks/bundle/stage/terraform/terraform.hcl.lock&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;and specify your desired provider version and checksum (matching your downloaded&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;1.50.0&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;provider).&lt;BR /&gt;This locks the CLI to that version and disables remote version queries.​&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="py-0 my-0 prose-p:pt-0 prose-p:mb-2 prose-p:my-0 [&amp;amp;&amp;gt;p]:pt-0 [&amp;amp;&amp;gt;p]:mb-2 [&amp;amp;&amp;gt;p]:my-0"&gt;
&lt;P class="my-2 [&amp;amp;+p]:mt-4 [&amp;amp;_strong:has(+br)]:inline-block [&amp;amp;_strong:has(+br)]:pb-2"&gt;&lt;STRONG&gt;Set Databricks CLI environment variables in your DevOps pipeline&lt;/STRONG&gt;:&lt;/P&gt;
&lt;DIV class="w-full md:max-w-[90vw]"&gt;
&lt;DIV class="codeWrapper text-light selection:text-super selection:bg-super/10 my-md relative flex flex-col rounded font-mono text-sm font-normal bg-subtler"&gt;
&lt;DIV class="translate-y-xs -translate-x-xs bottom-xl mb-xl flex h-0 items-start justify-end md:sticky md:top-[100px]"&gt;
&lt;DIV class="overflow-hidden rounded-full border-subtlest ring-subtlest divide-subtlest bg-base"&gt;
&lt;DIV class="border-subtlest ring-subtlest divide-subtlest bg-subtler"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV class="-mt-xl"&gt;
&lt;DIV&gt;
&lt;DIV class="text-quiet bg-subtle py-xs px-sm inline-block rounded-br rounded-tl-[3px] font-thin" data-testid="code-language-indicator"&gt;bash&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&lt;CODE&gt;&lt;SPAN class="token token"&gt;export&lt;/SPAN&gt; &lt;SPAN class="token token assign-left"&gt;DATABRICKS_TF_PROVIDER_VERSION&lt;/SPAN&gt;&lt;SPAN class="token token operator"&gt;=&lt;/SPAN&gt;&lt;SPAN class="token token"&gt;1.50&lt;/SPAN&gt;.0
&lt;SPAN class="token token"&gt;export&lt;/SPAN&gt; &lt;SPAN class="token token assign-left"&gt;DATABRICKS_TF_EXEC_PATH&lt;/SPAN&gt;&lt;SPAN class="token token operator"&gt;=&lt;/SPAN&gt;/path/to/terraform
&lt;SPAN class="token token"&gt;export&lt;/SPAN&gt; &lt;SPAN class="token token assign-left"&gt;DATABRICKS_TF_CLI_CONFIG_FILE&lt;/SPAN&gt;&lt;SPAN class="token token operator"&gt;=&lt;/SPAN&gt;/path/to/terraform.rc
&lt;/CODE&gt;&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P class="my-2 [&amp;amp;+p]:mt-4 [&amp;amp;_strong:has(+br)]:inline-block [&amp;amp;_strong:has(+br)]:pb-2"&gt;While&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;DATABRICKS_TF_PROVIDER_VERSION&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;does not always override the internal version constraint, setting it along with the local lock and mirror ensures Terraform uses your supplied local provider.​&lt;/P&gt;
&lt;/LI&gt;
&lt;LI class="py-0 my-0 prose-p:pt-0 prose-p:mb-2 prose-p:my-0 [&amp;amp;&amp;gt;p]:pt-0 [&amp;amp;&amp;gt;p]:mb-2 [&amp;amp;&amp;gt;p]:my-0"&gt;
&lt;P class="my-2 [&amp;amp;+p]:mt-4 [&amp;amp;_strong:has(+br)]:inline-block [&amp;amp;_strong:has(+br)]:pb-2"&gt;&lt;STRONG&gt;Avoid re‑generation of&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;bundle.tf.json&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;between runs&lt;/STRONG&gt;:&lt;BR /&gt;The CLI auto‑produces this each deploy, so rely on overriding behavior with lock files and mirrors rather than editing it directly.&lt;/P&gt;
&lt;/LI&gt;
&lt;/OL&gt;
&lt;H2 class="mb-2 mt-4 font-display font-semimedium text-base first:mt-0"&gt;Why editing&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;bundle.tf.json&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;does not work&lt;/H2&gt;
&lt;P class="my-2 [&amp;amp;+p]:mt-4 [&amp;amp;_strong:has(+br)]:inline-block [&amp;amp;_strong:has(+br)]:pb-2"&gt;&lt;CODE&gt;bundle.tf.json&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;is auto‑generated and overwritten by the Databricks CLI each deployment. Even if you manually set the version inside it, the CLI will regenerate it based on the internal template schema that hardcodes the supported provider (&lt;CODE&gt;1.71.0&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;currently).​&lt;/P&gt;
&lt;H2 class="mb-2 mt-4 font-display font-semimedium text-base first:mt-0"&gt;Summary&lt;/H2&gt;
&lt;DIV class="group relative"&gt;
&lt;DIV class="w-full overflow-x-auto md:max-w-[90vw] border-subtlest ring-subtlest divide-subtlest bg-transparent"&gt;
&lt;TABLE class="border-subtler my-[1em] w-full table-auto border-separate border-spacing-0 border-l border-t"&gt;
&lt;THEAD class="bg-subtler"&gt;
&lt;TR&gt;
&lt;TH class="border-subtler p-sm break-normal border-b border-r text-left align-top"&gt;Goal&lt;/TH&gt;
&lt;TH class="border-subtler p-sm break-normal border-b border-r text-left align-top"&gt;Action&lt;/TH&gt;
&lt;/TR&gt;
&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="px-sm border-subtler min-w-[48px] break-normal border-b border-r"&gt;Force older provider version&lt;/TD&gt;
&lt;TD class="px-sm border-subtler min-w-[48px] break-normal border-b border-r"&gt;Pre‑create&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;.databricks/bundle/stage/terraform/terraform.hcl.lock&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;referencing your desired version&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;​&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="px-sm border-subtler min-w-[48px] break-normal border-b border-r"&gt;Avoid internet download&lt;/TD&gt;
&lt;TD class="px-sm border-subtler min-w-[48px] break-normal border-b border-r"&gt;Configure&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;TF_CLI_CONFIG_FILE&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;to a local&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;provider_installation&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;mirror&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;​&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="px-sm border-subtler min-w-[48px] break-normal border-b border-r"&gt;Databricks CLI ignores&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;DATABRICKS_TF_PROVIDER_VERSION&lt;/CODE&gt;&lt;/TD&gt;
&lt;TD class="px-sm border-subtler min-w-[48px] break-normal border-b border-r"&gt;Use with lock file and mirror together; standalone variable is not enough&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;​&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;/DIV&gt;
&lt;DIV class="bg-base border-subtler shadow-subtle pointer-coarse:opacity-100 right-xs absolute bottom-0 flex rounded-lg border opacity-0 transition-opacity group-hover:opacity-100 [&amp;amp;&amp;gt;*:not(:first-child)]:border-subtle [&amp;amp;&amp;gt;*:not(:first-child)]:border-l"&gt;
&lt;DIV class="flex"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="flex"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P class="my-2 [&amp;amp;+p]:mt-4 [&amp;amp;_strong:has(+br)]:inline-block [&amp;amp;_strong:has(+br)]:pb-2"&gt;By combining a manually created local mirror and lockfile, you can reliably use a pinned Databricks provider (like&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE&gt;1.50.0&lt;/CODE&gt;) inside a restricted network where automatic provider fetching fails.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Oct 2025 17:52:44 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/deploying-using-databricks-asset-bundles-dabs-in-a-closed/m-p/135878#M50452</guid>
      <dc:creator>mark_ott</dc:creator>
      <dc:date>2025-10-23T17:52:44Z</dc:date>
    </item>
  </channel>
</rss>

