Skip to content

Commit

Permalink
[DOCKER] Add Jenkins pipeline with integrity checker (DEVSYS-729)
Browse files Browse the repository at this point in the history
  • Loading branch information
Thomas Ferreira committed Dec 12, 2017
1 parent 69e83db commit bc2ee9e
Show file tree
Hide file tree
Showing 5 changed files with 79 additions and 0 deletions.
11 changes: 11 additions & 0 deletions Dockerfile
@@ -0,0 +1,11 @@
FROM ubuntu:14.04

LABEL maintainer="Thomas Ferreira <thomas.ferreira@dailymotion.com>"

RUN apt-get update \
&& apt-get install -y --no-install-recommends build-essential yui-compressor \
&& rm -rf /var/lib/apt/lists/*

COPY . /usr/src/

WORKDIR /usr/src
36 changes: 36 additions & 0 deletions Jenkinsfile
@@ -0,0 +1,36 @@
pipeline {
environment {
DOCKER_HOST = "tcp://inspect-02.adm.dc3.dailymotion.com:4243"
serviceName = "dailymotion-sdk-js"

}

agent {
label 'ci-ubuntu-slave'
}

stages{
stage ("Quality") {
steps {
parallel(
"Integrity" : {
sh 'make integrity'
}
)
}

post {
always {
sh "docker-compose down"
}
}
}
}

post {
failure {
slackSend "${serviceName}: Error on *${env.JOB_NAME}* for branch *${env.BRANCH_NAME}* (${env.BUILD_ID})"
}
}
}

9 changes: 9 additions & 0 deletions Makefile
@@ -1,3 +1,8 @@
#!/usr/bin/env make -f
include Makefile.inc

.PHONY: all

PLAYER_FILES := src/core/prelude.js src/common/array.js src/core/player.js src/core/epilogue.js src/core/qs.js

FILES := src/third-party/json2.js src/core/prelude.js src/core/json.js src/common/array.js \
Expand All @@ -18,3 +23,7 @@ player_api.js: $(PLAYER_FILES)
cat $(PLAYER_FILES) > $(TEMP_FILE)
$(COMPRESSOR_BIN) --type js -o $@ $(TEMP_FILE)

.PHONY: integrity
integrity:
$(COMPOSE) build integrity
$(COMPOSE) run integrity
8 changes: 8 additions & 0 deletions Makefile.inc
@@ -0,0 +1,8 @@
# -*- mode: makefile -*-
SHELL = /bin/sh

CP = cp

DOCKER = docker
COMPOSE = docker-compose
VERSION = `git rev-parse --short HEAD`
15 changes: 15 additions & 0 deletions docker-compose.yml
@@ -0,0 +1,15 @@
version: "2"
services:
app:
build:
context: .
network_mode: bridge

integrity:
build:
context: .
command: bash -c "make && test -s all.js"
volumes:
- .:/usr/src/
network_mode: bridge

0 comments on commit bc2ee9e

Please sign in to comment.