+##
+# Copyright 2019 ETSI
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+##
+
+########################################################################
+
# This creates som/LCM docker from from last stable package
FROM ubuntu:16.04
python3-all python3-setuptools openssh-client libffi-dev libssl-dev \
python3-bitarray python3-regex python3-lxml dh-python wget tox \
python3-cffi \
- && pip3 install pip==9.0.3 \
- && pip3 install -U aiokafka pyang lxml six enum34 \
- && pip3 install websockets==4.0.1 \
- && pip3 install requests \
+ && pip3 install -U pip \
+ && python3 -m pip install -U aiokafka pyang lxml six enum34 \
+ && python3 -m pip install websockets==4.0.1 \
+ && python3 -m pip install requests \
&& rm -rf /var/lib/apt/lists/*
# packages needed for N2VC because deb dependencies are not fine
-RUN pip3 install 'macaroonbakery>=1.1,<2.0' 'pyRFC3339>=1.0,<2.0' \
+RUN python3 -m pip install 'macaroonbakery>=1.1,<2.0' 'pyRFC3339>=1.0,<2.0' \
'pyyaml>=3.0,<4.0' 'theblues>=0.3.8,<1.0' 'websockets>=4.0,<5.0' \
'paramiko' # PyNaCl
#
# RUN git clone https://osm.etsi.org/gerrit/osm/N2VC.git \
# && cd N2VC \
# && cd modules/libjuju && python3 setup.py develop && cd ../.. \
-# && pip3 install -U -r requirements.txt
+# && python3 -m pip install -U -r requirements.txt
ARG REPOSITORY_BASE=http://osm-download.etsi.org/repository/osm/debian
ARG RELEASE=ReleaseFOUR-daily
+##
+# Copyright 2019 ETSI
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+##
+
+########################################################################
+
# This creates osm/NBI docker from local NBI source code
FROM ubuntu:16.04
RUN apt-get update && apt-get install -y git python3 python3-jsonschema \
python3-pymongo python3-yaml python3-pip python3-keystoneclient \
- && pip3 install pip==9.0.3 \
- && pip3 install aiokafka aiohttp cherrypy==18.0.0 pyangbind keystoneauth1 \
+ && pip3 install -U pip \
+ && python3 -m pip install aiokafka aiohttp cherrypy==18.0.0 pyangbind keystoneauth1 \
&& mkdir -p /app/storage/kafka && mkdir -p /app/log
ARG REPOSITORY_BASE=http://osm-download.etsi.org/repository/osm/debian
+##
+# Copyright 2019 ETSI
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+##
+
+########################################################################
+
from ubuntu:xenial
MAINTAINER Gennadiy Dubina <gennadiy.dubina@dataat.com>; Alfonso Tierno <alfonso.tiernosepulveda@telefoncia.com>
RUN apt-get update && apt-get -y install curl software-properties-common git
RUN DEBIAN_FRONTEND=noninteractive add-apt-repository -y cloud-archive:queens
RUN apt-get update && apt-get install -y python-setuptools python-wheel mysql-client python-bitarray python-pip
-RUN DEBIAN_FRONTEND=noninteractive pip2 install pip==9.0.3 pyangbind
+RUN DEBIAN_FRONTEND=noninteractive pip2 install -U pip && python -m pip install pyangbind
ARG REPOSITORY_BASE=http://osm-download.etsi.org/repository/osm/debian
ARG RELEASE=ReleaseFOUR-daily
+##
+# Copyright 2019 ETSI
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+##
+
+########################################################################
+
FROM ubuntu:16.04
LABEL authors="Michael Marchetti"
RUN apt-get update && apt-get -y install python \
libcurl4-gnutls-dev libgnutls-dev iputils-ping python-pip \
python-openstackclient wget
-RUN pip install python-magic pyangbind pytest==4.6.3
+RUN pip install -U pip && python -m pip install python-magic pyangbind pytest==4.6.3
ARG REPOSITORY_BASE=http://osm-download.etsi.org/repository/osm/debian
ARG RELEASE=ReleaseFOUR-daily
sudo add-apt-repository -y "deb [arch=amd64] $CLIENT_REPOSITORY_BASE/$CLIENT_RELEASE $CLIENT_REPOSITORY osmclient"
sudo apt-get update
sudo apt-get install -y python-pip
- sudo -H LC_ALL=C pip install pip==9.0.3
- sudo -H LC_ALL=C pip install python-magic
+ sudo -H LC_ALL=C pip install -U pip
+ sudo -H LC_ALL=C python -m pip install python-magic
sudo apt-get install -y python-osmclient
#sed 's,OSM_SOL005=[^$]*,OSM_SOL005=True,' -i ${HOME}/.bashrc
#echo 'export OSM_HOSTNAME=localhost' >> ${HOME}/.bashrc
/* Copyright 2017 Sandvine
*
* All Rights Reserved.
- *
+ *
* Licensed under the Apache License, Version 2.0 (the "License"); you may
* not use this file except in compliance with the License. You may obtain
* a copy of the License at
withDockerContainer(image: "${container_name}", args: docker_args) {
stage('Test') {
sh 'devops-stages/stage-test.sh'
+ if (fileExists('coverage.xml')) {
+ cobertura coberturaReportFile: 'coverage.xml'
+ }
+ if (fileExists('nosetests.xml')) {
+ junit 'nosetests.xml'
+ }
}
stage('Build') {
sh(returnStdout:true, script: 'devops-stages/stage-build.sh').trim()
# Change log:
# 1. Bug 722 : Jayant Madavi : JM00553988@techmahindra.com : Enhancement to use new fossology server. Had to change the variable name at # couple of places, while scanning the variable name was adding curl as a license.
# 2. Bug 542 : Jayant Madavi, Mrityunjay Yadav : JM00553988@techmahindra.com : 24-jul-2019 : Enhancement to raise exit in case files modified or added does # not contain license.
-# 3.
+# 3. Bug 542 : Jayant Madavi, Mrityunjay Yadav : JM00553988@techmahindra.com :add exception list. for now as inLine. later need to create a variable for exception_list
echo GERRIT BRANCH is $GERRIT_BRANCH
dpkg -l wget &>/dev/null ||sudo apt-get install -y wget
apache=0
nolicense=0
other=0
-
+exception_list="':(exclude)*.pdf' ':(exclude)*.png' ':(exclude)*.jpeg' ':(exclude)*.jpg' ':(exclude)*.gif' ':(exclude)*.json'"
git fetch
RE="FATAL: your file did not get passed through"
-for file in $(git diff --name-only origin/$GERRIT_BRANCH); do
+for file in $(echo ${exception_list} | xargs git diff --name-only origin/$GERRIT_BRANCH -- . ); do
if [ -f $file ]; then
if [ -s $file ]; then
licnse=$(curl -s -X POST -H 'Accept: text' -H 'Cache-Control: no-cache' -H 'Connection: keep-alive' -H 'Content-Type: multipart/form-data' -H 'cache-control: no-cache' -F "file_input=@\"$file\"" -F 'showheader=1' https://fossology-osm.etsi.org/?mod=agent_nomos_once |grep "A one shot license analysis shows the following license(s) in file"|sed -n 's:.*<strong>\(.*\)</strong>.*:\1:p' |xargs)