Commit 85be9a17 authored by Lluis Gifre Renom's avatar Lluis Gifre Renom
Browse files

Testing GitLab CI pipeline for device and context services

parent f9f0d0da
Loading
Loading
Loading
Loading
+4 −12
Original line number Diff line number Diff line
@@ -31,25 +31,17 @@ test unitary context:
  script:
    - docker pull "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG"
    - docker run -d -p 1010:1010 --name $IMAGE_NAME --network=teraflowbridge "$IMAGE_NAME:$IMAGE_TAG"
    - docker ps > $IMAGE_NAME--deploy_test_report.txt
    - docker ps -a
    - sleep 5
    - docker ps > $IMAGE_NAME--deploy_test_report_2.txt
    - docker logs $IMAGE_NAME > $IMAGE_NAME--run_logs.txt
    - docker exec -i $IMAGE_NAME "pytest --log-level=DEBUG --verbose $IMAGE_NAME/tests/test_unitary.py" > $IMAGE_NAME--pytest_unitary_report.txt
    - docker ps -a
    - docker logs $IMAGE_NAME
    - docker exec -i $IMAGE_NAME bash -c "pytest --log-level=DEBUG --verbose $IMAGE_NAME/tests/test_unitary.py"
  after_script:
    - docker stop $IMAGE_NAME
  rules:
    - changes:
      - src/$IMAGE_NAME/**
      - .gitlab-ci.yml
  artifacts:
    when: always
    paths:
      - $IMAGE_NAME--deploy_test_report.txt
      - $IMAGE_NAME--pytest_unitary_report.txt
      - $IMAGE_NAME--deploy_test_report_2.txt
      - $IMAGE_NAME--run_logs.txt
    expire_in: 1 day

# Deployment of the monitoring service in Kubernetes Cluster
deploy context:
+6 −4
Original line number Diff line number Diff line
@@ -2,7 +2,7 @@ import logging, os, signal, sys, threading
from prometheus_client import start_http_server
from common.database.Factory import get_database
from context.service.ContextService import ContextService
from context.Config import SERVICE_PORT, MAX_WORKERS, GRACE_PERIOD, LOG_LEVEL, METRICS_PORT
from context.Config import GRPC_SERVICE_PORT, GRPC_MAX_WORKERS, GRPC_GRACE_PERIOD, LOG_LEVEL, METRICS_PORT

terminate = threading.Event()
logger = None
@@ -15,15 +15,17 @@ def signal_handler(signal, frame):
def main():
    global terminate, logger

    service_port = os.environ.get('CONTEXTSERVICE_SERVICE_PORT_GRPC', SERVICE_PORT)
    max_workers  = os.environ.get('MAX_WORKERS',  MAX_WORKERS )
    grace_period = os.environ.get('GRACE_PERIOD', GRACE_PERIOD)
    service_port = os.environ.get('CONTEXTSERVICE_SERVICE_PORT_GRPC', GRPC_SERVICE_PORT)
    max_workers  = os.environ.get('MAX_WORKERS',  GRPC_MAX_WORKERS )
    grace_period = os.environ.get('GRACE_PERIOD', GRPC_GRACE_PERIOD)
    log_level    = os.environ.get('LOG_LEVEL',    LOG_LEVEL   )
    metrics_port = os.environ.get('METRICS_PORT', METRICS_PORT)

    logging.basicConfig(level=log_level)
    logger = logging.getLogger(__name__)

    logger.warning('env: {}'.format(str(os.environ)))

    signal.signal(signal.SIGINT,  signal_handler)
    signal.signal(signal.SIGTERM, signal_handler)

+4 −12
Original line number Diff line number Diff line
@@ -31,25 +31,17 @@ test unitary device:
  script:
    - docker pull "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG"
    - docker run -d -p 2020:2020 --name $IMAGE_NAME --network=teraflowbridge "$IMAGE_NAME:$IMAGE_TAG"
    - docker ps > $IMAGE_NAME--deploy_test_report.txt
    - docker ps -a
    - sleep 5
    - docker ps > $IMAGE_NAME--deploy_test_report_2.txt
    - docker logs $IMAGE_NAME > $IMAGE_NAME--run_logs.txt
    - docker exec -i $IMAGE_NAME "pytest --log-level=DEBUG --verbose $IMAGE_NAME/tests/test_unitary.py" > $IMAGE_NAME--pytest_unitary_report.txt
    - docker ps -a
    - docker logs $IMAGE_NAME
    - docker exec -i $IMAGE_NAME bash -c "pytest --log-level=DEBUG --verbose $IMAGE_NAME/tests/test_unitary.py"
  after_script:
    - docker stop $IMAGE_NAME
  rules:
    - changes:
      - src/$IMAGE_NAME/**
      - .gitlab-ci.yml
  artifacts:
    when: always
    paths:
      - $IMAGE_NAME--deploy_test_report.txt
      - $IMAGE_NAME--pytest_unitary_report.txt
      - $IMAGE_NAME--deploy_test_report_2.txt
      - $IMAGE_NAME--run_logs.txt
    expire_in: 1 day

# Deployment of the monitoring service in Kubernetes Cluster
deploy device:
+2 −0
Original line number Diff line number Diff line
@@ -24,6 +24,8 @@ def main():
    logging.basicConfig(level=log_level)
    logger = logging.getLogger(__name__)

    logger.warning('env: {}'.format(str(os.environ)))

    signal.signal(signal.SIGINT,  signal_handler)
    signal.signal(signal.SIGTERM, signal_handler)