add common ci-pipeline code 10/2010/3
authorMike Marchetti <mmarchetti@sandvine.com>
Wed, 5 Jul 2017 16:03:21 +0000 (12:03 -0400)
committergarciadeblas <gerardo.garciadeblas@telefonica.com>
Wed, 12 Jul 2017 08:36:16 +0000 (10:36 +0200)
Signed-off-by: Mike Marchetti <mmarchetti@sandvine.com>
Change-Id:      I03d2573e7ba670a34c0c7ee08b566994905e5f88

Dockerfile
Jenkinsfile
devops-stages/stage-archive.sh [new file with mode: 0755]
devops-stages/stage-build.sh [new file with mode: 0755]
devops-stages/stage-test.sh [new file with mode: 0755]

index 82c3ca9..254027c 100644 (file)
@@ -1,7 +1,7 @@
 FROM ubuntu:16.04
 
 RUN  apt-get update && \
-  DEBIAN_FRONTEND=noninteractive apt-get -y install git build-essential && \
+  DEBIAN_FRONTEND=noninteractive apt-get -y install git build-essential apt-utils && \
   DEBIAN_FRONTEND=noninteractive apt-get -y install python python-dev python-all python-stdeb fakeroot pypi2deb && \
   DEBIAN_FRONTEND=noninteractive apt-get -y install python-pip libmysqlclient-dev libssl-dev libffi-dev && \
   DEBIAN_FRONTEND=noninteractive pip install --upgrade pip && \
index 13a85d0..bc6c2d0 100644 (file)
@@ -1,36 +1,30 @@
-pipeline {
-       agent any
-       stages {
-               stage("Build") {
-                       agent {
-                               dockerfile true
-                       }
-                       steps {
-                               sh 'make package'
-                               stash name: "deb-files", includes: ".build/*.deb"
-                       }
-               }
-               stage("Unittest") {
-                       agent {
-                               dockerfile true
-                       }
-                       steps {
-                               sh 'echo "UNITTEST"'
-                       }
-               }
-               stage("Repo Component") {
-                       agent any
-                       steps {
-                               unstash "deb-files"
-                               sh '''
-                                       mkdir -p pool/RO
-                                       mv .build/*.deb pool/RO/
-                                       mkdir -p dists/ReleaseOne/unstable/RO/binary-amd64/
-                                       apt-ftparchive packages pool/RO > dists/ReleaseOne/unstable/RO/binary-amd64/Packages
-                                       gzip -9fk dists/ReleaseOne/unstable/RO/binary-amd64/Packages
-                                       '''
-                               archiveArtifacts artifacts: "dists/**,pool/RO/*.deb"
-                       }
-               }
-       }
+properties([
+    parameters([
+        string(defaultValue: env.BRANCH_NAME, description: '', name: 'GERRIT_BRANCH'),
+        string(defaultValue: 'osm/RO', description: '', name: 'GERRIT_PROJECT'),
+        string(defaultValue: env.GERRIT_REFSPEC, description: '', name: 'GERRIT_REFSPEC'),
+        string(defaultValue: env.GERRIT_PATCHSET_REVISION, description: '', name: 'GERRIT_PATCHSET_REVISION'),
+        string(defaultValue: 'https://osm.etsi.org/gerrit', description: '', name: 'PROJECT_URL_PREFIX'),
+        booleanParam(defaultValue: false, description: '', name: 'TEST_INSTALL'),
+    ])
+])
+
+def devops_checkout() {
+    dir('devops') {
+        git url: "${PROJECT_URL_PREFIX}/osm/devops", branch: params.GERRIT_BRANCH
+    }
+}
+
+node {
+    checkout scm
+    devops_checkout()
+
+    ci_helper = load "devops/jenkins/ci-pipelines/ci_stage_2.groovy"
+    ci_helper.ci_pipeline( 'RO',
+                           params.PROJECT_URL_PREFIX,
+                           params.GERRIT_PROJECT,
+                           params.GERRIT_BRANCH,
+                           params.GERRIT_REFSPEC,
+                           params.GERRIT_PATCHSET_REVISION,
+                           params.TEST_INSTALL)
 }
diff --git a/devops-stages/stage-archive.sh b/devops-stages/stage-archive.sh
new file mode 100755 (executable)
index 0000000..cc1cfc0
--- /dev/null
@@ -0,0 +1,8 @@
+#!/bin/sh
+rm -rf pool
+rm -rf dists
+mkdir -p pool/RO
+mv .build/*.deb pool/RO/
+mkdir -p dists/unstable/RO/binary-amd64/
+apt-ftparchive packages pool/RO > dists/unstable/RO/binary-amd64/Packages
+gzip -9fk dists/unstable/RO/binary-amd64/Packages
diff --git a/devops-stages/stage-build.sh b/devops-stages/stage-build.sh
new file mode 100755 (executable)
index 0000000..8505499
--- /dev/null
@@ -0,0 +1,2 @@
+#!/bin/sh
+make package
diff --git a/devops-stages/stage-test.sh b/devops-stages/stage-test.sh
new file mode 100755 (executable)
index 0000000..49296c7
--- /dev/null
@@ -0,0 +1,2 @@
+#!/bin/sh
+echo "UNITTEST"