Dynamisches Definieren von Artefakteinstellungen in Databricks-Ressourcenpaketen
In diesem Artikel wird beschrieben, wie Sie die Einstellungen für Artefakte in Databricks-Ressourcenpaketen außer Kraft setzen. Weitere Informationen finden Sie unter Was sind Databricks-Ressourcenpakete?
In Azure Databricks-Paketkonfigurationsdateien können Sie die Artefakteinstellungen in einer artifacts
-Zuordnung auf oberster Ebene mit den Artefakteinstellungen in einer targets
-Zuordnung zu verknüpfen, z. B. (Auslassungspunkte weisen auf Inhalte hin, die der Übersichtlichkeit halber weggelassen wurden):
# ...
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.
Wenn eine Artefakteinstellung sowohl in der artifacts
-Zuordnung auf oberster Ebene als auch in der targets
-Zuordnung für dasselbe Artefakt definiert ist, hat die Einstellung in der targets
-Zuordnung Vorrang vor der Einstellung in der artifacts
-Zuordnung auf oberster Ebene.
Beispiel 1: Artefakteinstellungen, die nur in der Artefaktzuordnung auf oberster Ebene definiert sind
Um zu veranschaulichen, wie dies in der Praxis funktioniert, wird im folgenden Beispiel path
in der artifacts
-Zuordnung auf oberster Ebene definiert. Dadurch werden alle Einstellungen für das Artefakt definiert (Auslassungspunkte weisen auf Inhalte hin, die der Übersichtlichkeit halber weggelassen wurden):
# ...
artifacts:
my-artifact:
type: whl
path: ./my_package
# ...
Wenn Sie für dieses Beispiel databricks bundle validate
ausführen, sieht das resultierende Diagramm wie folgt aus (Auslassungspunkte weisen auf Inhalte hin, die der Übersichtlichkeit halber weggelassen wurden):
{
"...": "...",
"artifacts": {
"my-artifact": {
"type": "whl",
"path": "./my_package",
"...": "..."
}
},
"...": "..."
}
Beispiel 2: In Konflikt stehende Artefakteinstellungen, die in mehreren Artefaktzuordnungen definiert sind
In diesem Beispiel wird path
sowohl in der artifacts
-Zuordnung auf oberster Ebene als auch in der artifacts
-Zuordnung in targets
definiert. In diesem Beispiel hat path
in der artifacts
-Zuordnung in targets
Vorrang vor path
in der artifacts
-Zuordnung auf oberster Ebene, um die Einstellungen für das Artefakt zu definieren (Auslassungspunkte weisen auf Inhalte hin, die der Übersichtlichkeit halber weggelassen wurden):
# ...
artifacts:
my-artifact:
type: whl
path: ./my_package
targets:
dev:
artifacts:
my-artifact:
path: ./my_other_package
# ...
Wenn Sie für dieses Beispiel databricks bundle validate
ausführen, sieht das resultierende Diagramm wie folgt aus (Auslassungspunkte weisen auf Inhalte hin, die der Übersichtlichkeit halber weggelassen wurden):
{
"...": "...",
"artifacts": {
"my-artifact": {
"type": "whl",
"path": "./my_other_package",
"...": "..."
}
},
"...": "..."
}