Delen via


Artefactinstellingen dynamisch definiëren in Databricks Asset Bundles

In dit artikel wordt beschreven hoe u de instellingen voor artefacten in Databricks Asset Bundles overschrijft. Zie Wat zijn Databricks-assetbundels?

In Azure Databricks-bundelconfiguratiebestanden kunt u de artefactinstellingen samenvoegen in een toewijzing op het hoogste niveau artifacts met de artefactinstellingen in een targets toewijzing, bijvoorbeeld (weglatingstekens geven inhoud aan, voor beknoptheid):

# ...
artifacts:
  <some-unique-programmatic-identifier-for-this-artifact>:
    # Artifact settings.

targets:
  <some-unique-programmatic-identifier-for-this-target>:
    resources:
      artifacts:
        <the-matching-programmatic-identifier-for-this-artifact>:
          # Any more artifact settings to join with the settings from the
          # matching top-level artifacts mapping.

Als er een artefactinstelling is gedefinieerd in zowel de toewijzing op het hoogste niveau artifacts als de targets toewijzing voor hetzelfde artefact, heeft de instelling in de targets toewijzing voorrang op de instelling in de toewijzing op het hoogste niveau artifacts .

Voorbeeld 1: Artefactinstellingen die alleen zijn gedefinieerd in de toewijzing van artefacten op het hoogste niveau

Om te laten zien hoe dit in de praktijk werkt, wordt in het volgende voorbeeld path gedefinieerd in de toewijzing op het hoogste niveau artifacts , waarmee alle instellingen voor het artefact worden gedefinieerd (weglatingstekens geven aan dat inhoud wordt weggelaten, ter beknoptheid):

# ...
artifacts:
  my-artifact:
    type: whl
    path: ./my_package
# ...

Wanneer u voor dit voorbeeld wordt uitgevoerd databricks bundle validate , is de resulterende grafiek (weglatingstekens geven aan dat de inhoud wordt weggelaten, voor beknoptheid):

{
  "...": "...",
  "artifacts": {
    "my-artifact": {
      "type": "whl",
      "path": "./my_package",
      "...": "..."
    }
  },
  "...": "..."
}

Voorbeeld 2: Conflicterende artefactinstellingen gedefinieerd in meerdere artefacttoewijzingen

In dit voorbeeld path wordt zowel in de toewijzing op het hoogste niveau artifacts als in de artifacts toewijzing in targets. In dit voorbeeld path heeft de artifacts toewijzing targets voorrang op path de toewijzing op het hoogste niveau artifacts om de instellingen voor het artefact te definiëren (weglatingstekens geven inhoud aan, ter beknoptheid):

# ...
artifacts:
  my-artifact:
    type: whl
    path: ./my_package

targets:
  dev:
    artifacts:
      my-artifact:
        path: ./my_other_package
    # ...

Wanneer u voor dit voorbeeld wordt uitgevoerd databricks bundle validate , is de resulterende grafiek (weglatingstekens geven aan dat de inhoud wordt weggelaten, voor beknoptheid):

{
  "...": "...",
  "artifacts": {
    "my-artifact": {
      "type": "whl",
      "path": "./my_other_package",
      "...": "..."
    }
  },
  "...": "..."
}