Etape 5 : Déploiement du service de dashboarding

Nous allons maintenant procéder au déploiement de notre dernier élément, le dashboard. Ce dashboard est une application web développée en python avec le framework Dash. Il récupère les KPI générés par le pipeline déployé à l’étape 4, puis les affiche sous forme de graphiques.

Un service se déploie à l’identique d’un job. La différence réside dans la clé "published" du manifest.json qui définit, entre autres, des propriétés telles que l’URL via laquelle notre service va être accessible (clé “prefix”), les restrictions d’accès (clé “access”) ou encore l’icône (clé “displayed_name”).

{
    "labels": "app:qsdashboard",
    "type": "service",
    "name": "qsdashboard",
    "published": {
        "access": "dtsbx2zr5s",
        "prefix": "/dtsbx2zr5s-dashboard-kpi/",
        "displayed_name": "Dashboard KPI"

    },
    "image-destination": "eu.gcr.io/dtsbx2zr5s/qsdashboard:0.1",
    "cmd": ["python3","/code/dashboard.py"],
    "replicas": 1,
    "container-port": 8050,
    "env" : [
        {"name": "PROJECT_ID", "value": "dtsbx2zr5s"}
    ],
    "svc-account-secret": "dtsbx2zr5s-251b50bccec4"
}

Depuis le menu, on clique sur Tasks → New Task et on renseigne dans le champ Directory le dossier qs-dashboard. On sélectionne le namespace de notre choix (dans notre cas dtsbx2zr5s) puis on clique sur Deploy pour déployer le service.