Aller au contenu principal

Configurer les default Python package repository

info

Aperçu

La configuration des repositories de package Python par default est généralement disponible pour les notebooks et Jobs Serverless. Pour les Lakeflow Pipelines et pour le compute classique créé via l'interface utilisateur et l'API, c'est en aperçu public. Les administrateurs du workspace peuvent contrôler l'accès aux fonctionnalités de l'aperçu public depuis la page Aperçus en activant les aperçus suivants :

  • Default Python package repositories in Spark Declarative Pipelines
  • Dépôts de packages Python default dans les clusters créés via l'API
  • default paquets Python dépôts dans les clusters créés via l'interface utilisateur

Les administrateurs du Workspace peuvent configurer des repositories de packages privés ou authentifiés au sein des workspaces comme configuration pip par default pour les notebooks, les jobs et les LakeFlow Pipelines.

Si un Workspace est configuré avec un repository de packages Python par default, les utilisateurs du Workspace pourront installer des packages à partir de repositorys Python internes sans définir explicitement les valeurs index-url ou extra-index-url. Cependant, si ces valeurs sont spécifiées dans le code ou dans un Notebook, elles prévalent sur les valeurs par default du workspace.

Cette configuration s'appuie sur les secrets Databricks pour stocker et gérer en toute sécurité les URL et les identifiants du repository. Les administrateurs de Workspace peuvent configurer la configuration à l'aide de la page de paramètres d'administration du Workspace ou à l'aide d'un Secret Scope prédéfini et des commandes de secrets de la CLI Databricks ou de l'API REST.

Configurer les dépendances default pour un Workspace

Les administrateurs de Workspace peuvent ajouter ou supprimer les repository de packages Python par défaut à l'aide de la page des paramètres d'administration du Workspace.

  1. En tant qu'administrateur d'espace de travail, connectez-vous à l'espace de travail Databricks.
  2. Cliquez sur votre nom d'utilisateur dans la barre supérieure du workspace Databricks et sélectionnez **Paramètres**.
  3. Cliquez sur l’onglet Compute .
  4. À côté de **Default Package Repositories**, cliquez sur **Gérer**.
  5. (Facultatif) Ajouter ou supprimer une URL d’index, des URL d’index supplémentaires ou un certificat SSL personnalisé.
  6. Cliquez sur Enregistrer pour enregistrer les modifications.
remarque

Les modifications ou les suppressions de secrets sont appliquées différemment selon le type de charge de travail. Pour les notebooks et les jobs serverless, les modifications sont appliquées après le rattachement de la ressource de compute au notebook ou la réexécution du job. Pour les Notebooks et les Jobs classiques, les modifications sont appliquées après le redémarrage de la ressource de compute. Pour les LakeFlow Pipelines, les modifications sont appliquées aux nouvelles exécutions de pipeline.

Configuration à l'aide du CLI des secrets ou de l'API REST

Pour configurer les repositories de packages Python par default à l'aide de l'API REST ou de la CLI, créez un Secret Scope prédéfini, configurez les autorisations d'accès, puis ajoutez les secrets des repositories de packages.

Nom du Secret Scope prédéfini

Les administrateurs du Workspace peuvent définir des URL d'index pip default ou des URL d'index supplémentaires, ainsi que des jetons d'authentification et des secrets, dans un Secret Scope désigné sous des clés prédéfinies :

  • Nom du Secret Scope : databricks-package-management
  • Clé secrète pour index-url : pip-index-url
  • Clé secrète pour les URL d'index supplémentaires : pip-extra-index-urls
  • Clé secrète pour le contenu de la certification SSL : pip-cert

Créer le Secret Scope

Un Secret Scope peut être créé à l’aide des commandes secrets de la CLI Databricks ou de l’ API REST. Après avoir créé le Secret Scope, configurez les listes de contrôle d’accès pour accorder à tous les utilisateurs du Workspace un accès en lecture. Cela garantit que le repository reste sécurisé et ne peut pas être modifié par des utilisateurs individuels. Le Secret Scope doit utiliser le nom prédéfini du secret scope databricks-package-management.

Bash
databricks secrets create-scope databricks-package-management
databricks secrets put-acl databricks-package-management admins MANAGE
databricks secrets put-acl databricks-package-management users READ

Ajouter des secrets de repository de packages Python

Ajoutez les détails du repository de package Python à l'aide des noms de clé secrète prédéfinis, les trois champs étant facultatifs.

Bash
# Add index URL.
databricks secrets put-secret --json '{"scope": "databricks-package-management", "key": "pip-index-url", "string_value":"<index-url-value>"}'

# Add extra index URLs. If you have multiple extra index URLs, separate them using white space.
databricks secrets put-secret --json '{"scope": "databricks-package-management", "key": "pip-extra-index-urls", "string_value":"<extra-index-url-1 extra-index-url-2>"}'

# Add cert content. If you want to pip configure a custom SSL certificate, put the cert file content here.
databricks secrets put-secret --json '{"scope": "databricks-package-management", "key": "pip-cert", "string_value":"<cert-content>"}'
remarque

Si votre repository requiert une authentification, utilisez l'un des formats suivants pour l'URL d'index :

  • Nom d’utilisateur et mot de passe : https://<username>:<password>@<index_url>
  • Jeton : https://<token>@<index_url>

Modifier ou supprimer des secrets de repository PyPI privés

Pour modifier les secrets du repository PyPI, utilisez la commande put-secret. Pour supprimer les secrets du repository PyPI, utilisez delete-secret comme indiqué ci-dessous :

Bash
# delete secret
databricks secrets delete-secret databricks-package-management pip-index-url

databricks secrets delete-secret databricks-package-management pip-extra-index-urls

databricks secrets delete-secret databricks-package-management pip-cert

# delete scope
databricks secrets delete-scope databricks-package-management