Merge "Use a more generic kubectl command to check status"
authorNaga Sugguna <ns156u@att.com>
Tue, 5 Nov 2019 20:17:46 +0000 (20:17 +0000)
committerGerrit Code Review <gerrit@akraino.org>
Tue, 5 Nov 2019 20:17:46 +0000 (20:17 +0000)
bluval/blucon.py
docker/os/Dockerfile
ui/src/main/webapp/.eslintrc

index 7f72048..7fc8002 100644 (file)
@@ -30,6 +30,7 @@ from bluutil import BluvalError
 from bluutil import ShowStopperError
 
 _OPTIONAL_ALSO = False
+_SUBNET = ""
 
 def get_volumes(layer):
     """Create a list with volumes to mount in the container for given layer
@@ -55,9 +56,8 @@ def get_volumes(layer):
 def invoke_docker(bluprint, layer):
     """Start docker container for given layer
     """
-
     volume_list = get_volumes('common') + get_volumes(layer)
-    cmd = ("docker run" + volume_list +
+    cmd = ("docker run" + volume_list + _SUBNET +
            " akraino/validation:{0}-latest"
            " /bin/sh -c"
            " 'cd /opt/akraino/validation "
@@ -89,12 +89,14 @@ def invoke_dockers(yaml_loc, layer, blueprint_name):
 @click.command()
 @click.argument('blueprint')
 @click.option('--layer', '-l')
+@click.option('--network', '-n')
 @click.option('--optional_also', '-o', is_flag=True)
-def main(blueprint, layer, optional_also):
+def main(blueprint, layer, network, optional_also):
     """Takes blueprint name and optional layer. Validates inputs and derives
     yaml location from blueprint name. Invokes validate on blue print.
     """
     global _OPTIONAL_ALSO  # pylint: disable=global-statement
+    global _SUBNET # pylint: disable=global-statement
     mypath = Path(__file__).absolute()
     yaml_loc = mypath.parents[0].joinpath('bluval-{}.yaml'.format(blueprint))
     if layer is not None:
@@ -102,6 +104,9 @@ def main(blueprint, layer, optional_also):
     if optional_also:
         _OPTIONAL_ALSO = True
         print("_OPTIONAL_ALSO {}".format(_OPTIONAL_ALSO))
+    if network is not None:
+        _SUBNET = " --net=" + network
+        print("Using", _SUBNET)
     try:
         invoke_dockers(yaml_loc, layer, blueprint)
     except ShowStopperError as err:
index f17542e..291267b 100644 (file)
 ##############################################################################
 
 # ref: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds
-FROM python:3.6-alpine3.9 as build
+FROM ubuntu:18.04 as build
 
 # Install dependencies
 COPY pip-requirements.txt /wheels/requirements/pip-requirements.txt
-RUN apk --no-cache add --update \
-        gcc \
-        git \
-        libc-dev \
-        libffi \
-        libffi-dev \
-        make \
-        openssl-dev
+RUN apt-get update && apt-get -y install \
+    python3-pip \
+    gcc \
+    git \
+    libc-dev \
+    libffi6 \
+    libffi-dev \
+    make \
+    libssl-dev \
+    build-essential \
+    autoconf automake autotools-dev m4 \
+    linux-headers-generic \
+    libaio-dev libattr1-dev libcap-dev
 
 # Build binaries
 WORKDIR /wheels
@@ -34,15 +39,31 @@ RUN pip3 install wheel
 RUN pip3 wheel -r /wheels/requirements/pip-requirements.txt
 RUN git clone https://gerrit.akraino.org/r/validation /opt/akraino/validation
 
-# Copy binaries in the final contaier and install robot framework
-FROM python:3.6-alpine3.9
+# Build ltp tests
+RUN mkdir -p /opt/akraino /root/src
+WORKDIR  /root/src
+RUN git clone https://github.com/linux-test-project/ltp.git
+WORKDIR /root/src/ltp
+RUN make autotools && \
+    ./configure --prefix=/opt/ltp && \
+    make -j $(getconf _NPROCESSORS_ONLN) 2>&1 | tee ../build-log.txt && \
+    make install 2>&1 | tee ../install-log.txt
+RUN tar czvf /opt/akraino/ltp.tar.gz /opt/ltp
+
+# Copy binaries into the final container and install robot framework
+FROM ubuntu:18.04
 COPY --from=build /wheels /wheels
 COPY --from=build /opt/akraino/validation /opt/akraino/validation
+COPY --from=build /opt/akraino/ltp.tar.gz /opt/akraino/ltp.tar.gz
 
-RUN pip3 install -r /wheels/requirements/pip-requirements.txt \
+RUN apt-get update && apt-get -y install \
+    python3-pip && \
+    pip3 install -r /wheels/requirements/pip-requirements.txt \
                  -f /wheels && \
-     rm -rf /wheels && \
-     rm -rf /root/.cache/pip/*
+    rm -rf /wheels && \
+    rm -rf /root/.cache/pip/* && \
+    rm -rf /var/cache/apt/* && \
+    rm -rf /var/lib/apt/lists/*
 
 # Install blueval dependencies
-RUN pip install -r /opt/akraino/validation/bluval/requirements.txt
+RUN pip3 install -r /opt/akraino/validation/bluval/requirements.txt
index 8cc24f1..37832b3 100644 (file)
@@ -1,10 +1,10 @@
 {
   "globals": {
     "angular": writable,
-    "console": 1,
-    "confirm":1,
-    "localStorage":1,
-    "window":1,
-    "appDS2":1
+    "console": writable,
+    "confirm":writable,
+    "localStorage":writable,
+    "window":writable,
+    "appDS2":writable
   }
 }