Déployer OSDU Admin UI sur Azure Data Manager for Energy

Ce guide vous montre comment déployer l’outil OSDU Admin UI sur votre instance Azure Data Manager for Energy (ADME).

L’outil OSDU Admin UI permet aux administrateurs de plateforme de gérer la partition de données Azure Data Manager for Energy à laquelle vous le connectez. Les tâches de gestion comprennent les droits d’utilisation (gestion des utilisateurs et des groupes), les étiquettes légales, les schémas, les données de référence, ainsi que l’affichage et la visualisation d’objets sur une carte.

Prérequis

Configuration de l’environnement

  1. Utilisez le conteneur de développement dans Visual Studio Code pour déployer OSDU Admin UI afin d’éliminer les conflits sur votre ordinateur local.

  2. Sélectionnez Remote - Containers | Open pour ouvrir un conteneur de développement et cloner le dépôt de l’interface utilisateur de l’administrateur OSDU.

    Ouvrir dans un dépôt distant - Conteneurs

  3. Acceptez l’invite de clonage.

    Capture d’écran montrant le clonage du dépôt.

  4. Lorsque vous êtes invité à entrer un modèle de configuration de conteneur.

    1. sélectionnez Ubuntu.
    2. Acceptez la version par défaut.
    3. N’ajoutez aucune fonctionnalité supplémentaire.
  5. Après quelques minutes, le conteneur de développement s’exécute.

    Capture d’écran montrant l’exécution de devcontainer.

  6. Ouvrez le terminal.

    Capture d’écran montrant l’ouverture du terminal.

  7. Installez Angular CLI, Azure CLI, npm et Node Version Manager (NVM).

    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash && \
    export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
    [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && \
    nvm install 14.17.3 && \
    export NG_CLI_ANALYTICS=false && \ 
    npm install -g @angular/cli@13.3.9 && \
    curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
    

    Capture d’écran montrant l’installation.

  8. Connectez-vous à Azure CLI en exécutant la commande sur le terminal. Vous accédez à l’écran de connexion.

    az login
    
  9. Vous accédez à l’écran de connexion. Entrez vos informations d’identification et, si l’opération réussit, vous voyez un message de réussite.

    Capture d’écran montrant une connexion réussie.

  10. Validez que vous utilisez l’abonnement approprié.

    az account show
    
  11. Si nécessaire, utilisez ce code pour changer d’abonnement.

    az account set --subscription <subscription-id>
    

Configuration des variables d’environnement

  1. Entrez les variables d’environnement nécessaires sur le terminal.
     export ADMINUI_CLIENT_ID="" ## App Registration to be used by OSDU Admin UI, usually the client ID used to provision ADME
     export WEBSITE_NAME="" ## Unique name of the static web app or storage account that will be generated. Storage account name must be between 3 and 24 characters in length and use numbers and lower-case letters only.
     export RESOURCE_GROUP="" ## Name of resource group
     export LOCATION="" ## Azure region to deploy to, i.e. "westeurope"
    

Déployer un compte de stockage

  1. Créez un groupe de ressources. Ignorez cette étape si le groupe de ressources existe déjà.

    az group create \
        --name $RESOURCE_GROUP \
        --location $LOCATION
    
  2. Créez un compte de stockage.

    az storage account create \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION \
        --name $WEBSITE_NAME \
        --sku Standard_LRS \
        --public-network-access Enabled \
        --allow-blob-public-access true
    
  3. Configurez le site web statique.

    az storage blob service-properties update \
        --account-name $WEBSITE_NAME \
        --static-website \
        --404-document index.html \
        --index-document index.html
    
  4. Définissez des autorisations de conteneur $web pour autoriser l’accès anonyme.

    az storage container set-permission \
        --name '$web' \
        --account-name $WEBSITE_NAME \
        --public-access blob
    
  5. Ajoutez l’URI de redirection à l’inscription de l’application.

    export REDIRECT_URI=$(az storage account show --resource-group $RESOURCE_GROUP --name $WEBSITE_NAME --query "primaryEndpoints.web") && \
    echo "Redirect URL: $REDIRECT_URI" && \
    echo "Add the redirect URI above to the following App Registration's Single-page Application (SPA) section: https://ms.portal.azure.com/#view/Microsoft_AAD_RegisteredApps/ApplicationMenuBlade/~/Authentication/appId/$ADMINUI_CLIENT_ID/isMSAApp~/false"
    

    Capture d’écran montrant les URI de redirection pour l’inscription d’application.

Générer et déployer l’application web

  1. Accédez au dossier OSDUApp.

    cd OSDUApp/
    
  2. Installez les dépendances.

    npm install
    
  3. Modifiez les paramètres dans le fichier de configuration situé dans /src/config/config.json.

    {
        "mapboxKey": "key", // This is optional for the access token from Mapbox.com and used to visualize data on the map feature.
        ...
        "data_partition": "<adme_data_partition>", // ADME Data Partition ID (i.e. opendes)
      "idp": {
         ...
         "tenant_id": "<tenant_id>", // Entra ID tenant ID
         "client_id": "<client_id>", // App Registration ID to use for the admin UI, usually the same as the ADME App Registration ID, i.e. "6ee7e0d6-0641-4b29-a283-541c5d00655a"
         "redirect_uri": "<redirect_uri>", // This is the website URL ($REDIRECT_URI), i.e. "https://contoso.z1.web.core.windows.net"
         "scope": "<client_id>/.default" // Scope of the ADME instance, i.e. "6ee7e0d6-0641-4b29-a283-541c5d00655a/.default"
      },
      "api_endpoints": { // Just replace contoso.energy.azure.com with your ADME_URL after removing https or wwww in all the API endpoints below.
         "entitlement_endpoint": "https://contoso.energy.azure.com/api/", 
         "storage_endpoint": "https://contoso.energy.azure.com/api/",
         "search_endpoint": "https://contoso.energy.azure.com/api/",
         "legal_endpoint": "https://contoso.energy.azure.com/api/",
         "schema_endpoint": "https://contoso.energy.azure.com/api/",
         "osdu_connector_api_endpoint":"osdu_connector", // Optional. API endpoint of the OSDU Connector API*
         "file_endpoint": "https://contoso.energy.azure.com/api/",
         "graphAPI_endpoint": "https://graph.microsoft.com/v1.0/",
         "workflow_endpoint": "https://contoso.energy.azure.com/api/"
      }
      ...
    }
    

    Remarque

    L’API OSDU Connector est créée comme interface entre les consommateurs et les API OSDU enveloppant certains appels et objets de chaîne d’API. Actuellement, elle gère toutes les opérations et actions sur les objets de projet et de scénario.

  4. Créez l’interface utilisateur web.

    ng build
    
  5. Chargez la build dans le compte de stockage.

    az storage blob upload-batch \
        --account-name $WEBSITE_NAME \
        --source ./dist/OSDUApp \
        --destination '$web' \
        --overwrite
    
  6. Récupérez l’URL du site web.

    echo $REDIRECT_URI
    
  7. Ouvrez l’URL du site web dans le navigateur et vérifiez qu’elle fonctionne correctement et qu’elle est connectée à l’instance Azure Data Manager for Energy appropriée.

Étapes suivantes

Une fois qu’Admin UI fonctionne correctement, vous pouvez :

Vous pouvez également ingérer les données dans votre instance Azure Data Manager pour Energy :

Références

Pour plus d’informations sur OSDU Admin UI, consultez OSDU GitLab.
Pour obtenir d’autres méthodes de déploiement (Terraform ou pipeline CI/CD Azure DevOps), consultez OSDU Admin UI DevOps.