← Back to team overview

sts-sponsors team mailing list archive

[Merge] ~ack/maas-ci/+git/maas-ci-internal:grafana-dashboards-job into ~maas-committers/maas-ci/+git/maas-ci-internal:main

 

Alberto Donato has proposed merging ~ack/maas-ci/+git/maas-ci-internal:grafana-dashboards-job into ~maas-committers/maas-ci/+git/maas-ci-internal:main.

Commit message:
move grafana-dashboards job to JJB



Requested reviews:
  MAAS Committers (maas-committers)

For more details, see:
https://code.launchpad.net/~ack/maas-ci/+git/maas-ci-internal/+merge/435668
-- 
Your team MAAS Committers is requested to review the proposed merge of ~ack/maas-ci/+git/maas-ci-internal:grafana-dashboards-job into ~maas-committers/maas-ci/+git/maas-ci-internal:main.
diff --git a/jobs/grafana-dashboards.groovy b/jobs/grafana-dashboards.groovy
new file mode 100644
index 0000000..1037e06
--- /dev/null
+++ b/jobs/grafana-dashboards.groovy
@@ -0,0 +1,56 @@
+pipeline {
+    agent {
+        docker {
+            image 'ubuntu:{{ series }}'
+            registryUrl '{{ docker_registry }}'
+            registryCredentialsId '{{ docker_registry_cred }}'
+            label 'maas-tester'
+            args '-u 0:0'
+            reuseNode true
+        }
+    }
+
+    stages {
+        stage('Prepare') {
+            steps {
+                sh '''
+                if [ ! -z \$http_proxy ]; then
+                    echo "Acquire::http::proxy \\"\$http_proxy\\"\\;" > /etc/apt/apt.conf.d/launchpad-ci-proxy
+                    echo "Acquire::https::proxy \\"\$http_proxy\\"\\;" >> /etc/apt/apt.conf.d/launchpad-ci-proxy
+                  fi
+
+                export DEBIAN_FRONTEND=noninteractive
+                apt update
+                apt install -y git make sudo
+                '''
+            }
+        }
+        stage('Checkout') {
+            steps {
+                withCredentials([file(credentialsId: 'lp-lander-sshkey', variable: 'SSHKEY')]) {
+                    withEnv(["GIT_SSH_COMMAND=ssh -i $SSHKEY -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"]) {
+                        sh '''
+                        rm -rf checkout
+                        git clone --depth 1 --single-branch --branch ${LP_BRANCH} git+ssh://maas-lander@xxxxxxxxxxxxxxxxx/${LP_REPO} checkout
+                        '''
+                    }
+                }
+            }
+        }
+        stage('Setup') {
+            steps {
+                sh '''
+                make -C checkout deb-dep setup
+                '''
+            }
+        }
+        stage('Generate dashboards') {
+            steps {
+                sh '''
+                make -C checkout dashboards DATASOURCE="maas-influxdb.cloud.kpi.internal"
+                '''
+                archiveArtifacts artifacts: 'checkout/generated/*.json'
+            }
+        }
+    }
+}
diff --git a/jobs/grafana-dashboards.yaml b/jobs/grafana-dashboards.yaml
new file mode 100644
index 0000000..006325a
--- /dev/null
+++ b/jobs/grafana-dashboards.yaml
@@ -0,0 +1,22 @@
+- project:
+    name: grafana-dashboards
+    jobs:
+      - grafana-dashboards
+
+- job-template:
+    name: grafana-dashboards
+    parameters:
+        - string:
+            name: LP_REPO
+            description: 'Git repository'
+            default: '~maas-committers/maas-kpi/+git/maas-kpi'
+        - string:
+            name: LP_BRANCH
+            description: 'Git branch'
+            default: 'master'
+    triggers:
+      - timed: '@daily'
+    properties:
+      - build-discarder:
+          artifact-num-to-keep: 20
+    dsl: !include-jinja2: grafana-dashboards.groovy

Follow ups