Skip to content
Snippets Groups Projects
Commit c78ae081 authored by Dalmiro Jorge Filipe Maia's avatar Dalmiro Jorge Filipe Maia
Browse files

Merge branch 'st-970-add-alpine-tests' into 'master'

ST-970 add alpine tests

See merge request ska-telescope/ska-tango-images!127
parents 09dff5e8 25417986
Branches
Tags
No related merge requests found
...@@ -571,6 +571,45 @@ oci-image-publish: #Executed on a tag for CAR ...@@ -571,6 +571,45 @@ oci-image-publish: #Executed on a tag for CAR
rules: rules:
- if: '$CI_COMMIT_TAG' - if: '$CI_COMMIT_TAG'
##### Test k8s with alpine images
k8s-test-alpine:
# allow_failure: true
image: $SKA_K8S_TOOLS_DEPLOY_IMAGE
stage: test
variables:
PYTHONPATH: /usr/local/lib/python3.9/site-packages
tags:
- k8srunner
before_script:
- '[ -f .make/k8s.mk ] || (echo "File k8s.mk not included in Makefile; exit 1")'
- 'make help | grep k8s-test'
- make k8s-install-chart IS_ALPINE="-alpine" CAR_OCI_REGISTRY_HOST=${CI_REGISTRY}/${CI_PROJECT_NAMESPACE}/${CI_PROJECT_NAME}
- make k8s-wait
script:
- make k8s-test K8S_TEST_IMAGE_TO_TEST=${CI_REGISTRY}/${CI_PROJECT_NAMESPACE}/${CI_PROJECT_NAME}/ska-tango-images-tango-itango-alpine:9.3.7
after_script:
- echo $CI_JOB_NAME - $CI_JOB_STAGE
- make k8s-uninstall-chart
- kubectl -n $KUBE_NAMESPACE delete pods,svc,daemonsets,deployments,replicasets,statefulsets,cronjobs,jobs,ingresses,configmaps --all
- make k8s-delete-namespace
artifacts:
name: "$CI_PROJECT_NAME-$CI_JOB_ID"
paths:
- "build/"
reports:
junit: build/report.xml
when: always
environment:
name: test
kubernetes:
namespace: ci-$CI_PROJECT_NAME-alpine-$CI_COMMIT_SHORT_SHA
rules:
- exists:
- tests/**/*
allow_failure: true
# Include CI templates # Include CI templates
include: include:
# OCI Images # OCI Images
...@@ -597,3 +636,9 @@ include: ...@@ -597,3 +636,9 @@ include:
# k8s steps # k8s steps
- project: 'ska-telescope/templates-repository' - project: 'ska-telescope/templates-repository'
file: 'gitlab-ci/includes/k8s.gitlab-ci.yml' file: 'gitlab-ci/includes/k8s.gitlab-ci.yml'
# changelog release page
- project: 'ska-telescope/templates-repository'
file: 'gitlab-ci/includes/changelog.gitlab-ci.yml'
.make @ 8fcc86c4
Subproject commit b54b8f3d97d4cb9abc8c4441acf3749dcad74bc7 Subproject commit 8fcc86c4cc83e15dc61aefe5cb7ac7d6453a6936
This diff is collapsed.
BASE = $(shell pwd) BASE = $(shell pwd)
HELM_CHARTS_TO_PUBLISH ?= ska-tango-util ska-tango-base HELM_CHARTS ?= ska-tango-util ska-tango-base
HELM_CHARTS_TO_PUBLISH ?= $(HELM_CHARTS)
OCI_IMAGES ?= ska-tango-images-tango-dependencies ska-tango-images-tango-dependencies-alpine ska-tango-images-tango-db ska-tango-images-tango-db-alpine ska-tango-images-tango-cpp ska-tango-images-tango-cpp-alpine ska-tango-images-tango-java ska-tango-images-tango-java-alpine ska-tango-images-tango-rest ska-tango-images-tango-rest-alpine ska-tango-images-pytango-builder ska-tango-images-pytango-builder-alpine ska-tango-images-tango-pogo ska-tango-images-tango-libtango ska-tango-images-tango-jive ska-tango-images-pytango-runtime ska-tango-images-pytango-runtime-alpine ska-tango-images-tango-admin ska-tango-images-tango-databaseds ska-tango-images-tango-test ska-tango-images-tango-dsconfig ska-tango-images-tango-dsconfig-alpine ska-tango-images-tango-itango ska-tango-images-tango-itango-alpine ska-tango-images-tango-vnc ska-tango-images-tango-pytango ska-tango-images-tango-panic ska-tango-images-tango-panic-gui OCI_IMAGES ?= ska-tango-images-tango-dependencies ska-tango-images-tango-dependencies-alpine ska-tango-images-tango-db ska-tango-images-tango-db-alpine ska-tango-images-tango-cpp ska-tango-images-tango-cpp-alpine ska-tango-images-tango-java ska-tango-images-tango-java-alpine ska-tango-images-tango-rest ska-tango-images-tango-rest-alpine ska-tango-images-pytango-builder ska-tango-images-pytango-builder-alpine ska-tango-images-tango-pogo ska-tango-images-tango-libtango ska-tango-images-tango-jive ska-tango-images-pytango-runtime ska-tango-images-pytango-runtime-alpine ska-tango-images-tango-admin ska-tango-images-tango-databaseds ska-tango-images-tango-test ska-tango-images-tango-dsconfig ska-tango-images-tango-dsconfig-alpine ska-tango-images-tango-itango ska-tango-images-tango-itango-alpine ska-tango-images-tango-vnc ska-tango-images-tango-pytango ska-tango-images-tango-panic ska-tango-images-tango-panic-gui
OCI_IMAGES_TO_PUBLISH ?= $(OCI_IMAGES) OCI_IMAGES_TO_PUBLISH ?= $(OCI_IMAGES)
...@@ -21,7 +22,7 @@ CI_ENVIRONMENT_SLUG ?= ska-tango-images ...@@ -21,7 +22,7 @@ CI_ENVIRONMENT_SLUG ?= ska-tango-images
# K8S_TEST_MAKE_PARAMS = KUBE_NAMESPACE=$(KUBE_NAMESPACE) HELM_RELEASE=$(RELEASE_NAME) TANGO_HOST=$(TANGO_HOST) MARK=$(MARK) # K8S_TEST_MAKE_PARAMS = KUBE_NAMESPACE=$(KUBE_NAMESPACE) HELM_RELEASE=$(RELEASE_NAME) TANGO_HOST=$(TANGO_HOST) MARK=$(MARK)
# K8S_CHART_PARAMS = --set global.minikube=$(MINIKUBE) --set global.tango_host=$(TANGO_HOST) --values $(BASE)/charts/values.yaml # K8S_CHART_PARAMS = --set global.minikube=$(MINIKUBE) --set global.tango_host=$(TANGO_HOST) --values $(BASE)/charts/values.yaml
PYTHON_VARS_BEFORE_PYTEST = PYTHONPATH=/app:/app/tests KUBE_NAMESPACE=$(KUBE_NAMESPACE) HELM_RELEASE=$(RELEASE_NAME) TANGO_HOST=$(TANGO_HOST) PYTHON_VARS_BEFORE_PYTEST = PYTHONPATH=${PYTHONPATH}:/app:/app/tests KUBE_NAMESPACE=$(KUBE_NAMESPACE) HELM_RELEASE=$(RELEASE_NAME) TANGO_HOST=$(TANGO_HOST)
PYTHON_VARS_AFTER_PYTEST = --disable-pytest-warnings --timeout=300 PYTHON_VARS_AFTER_PYTEST = --disable-pytest-warnings --timeout=300
......
...@@ -62,8 +62,8 @@ annotations: ...@@ -62,8 +62,8 @@ annotations:
dsconfig: dsconfig:
image: image:
registry: ${CAR_OCI_REGISTRY_HOST} registry: ${CAR_OCI_REGISTRY_HOST}
image: ska-tango-images-tango-dsconfig image: ska-tango-images-tango-dsconfig${IS_ALPINE}
tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-dsconfig setContextHelper; getVersion)${SUFFIX} tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-dsconfig${IS_ALPINE} setContextHelper; getVersion)${SUFFIX}
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
itango: itango:
...@@ -74,7 +74,7 @@ itango: ...@@ -74,7 +74,7 @@ itango:
intent: enabling intent: enabling
image: image:
registry: ${CAR_OCI_REGISTRY_HOST} registry: ${CAR_OCI_REGISTRY_HOST}
image: ska-tango-images-tango-itango image: ska-tango-images-tango-itango${IS_ALPINE}
tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-itango setContextHelper; getVersion)${SUFFIX} tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-itango setContextHelper; getVersion)${SUFFIX}
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
resources: resources:
...@@ -94,8 +94,8 @@ databaseds: ...@@ -94,8 +94,8 @@ databaseds:
intent: production intent: production
image: image:
registry: ${CAR_OCI_REGISTRY_HOST} registry: ${CAR_OCI_REGISTRY_HOST}
image: ska-tango-images-tango-cpp image: ska-tango-images-tango-cpp${IS_ALPINE}
tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-cpp setContextHelper; getVersion)${SUFFIX} tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-cpp${IS_ALPINE} setContextHelper; getVersion)${SUFFIX}
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
resources: resources:
requests: requests:
...@@ -141,8 +141,8 @@ deviceServers: ...@@ -141,8 +141,8 @@ deviceServers:
- name: "sys/tg_test/1" - name: "sys/tg_test/1"
image: image:
registry: ${CAR_OCI_REGISTRY_HOST} registry: ${CAR_OCI_REGISTRY_HOST}
image: ska-tango-images-tango-java image: ska-tango-images-tango-java${IS_ALPINE}
tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-java setContextHelper; getVersion)${SUFFIX} tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-java${IS_ALPINE} setContextHelper; getVersion)${SUFFIX}
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
resources: resources:
requests: requests:
...@@ -215,8 +215,8 @@ jive: ...@@ -215,8 +215,8 @@ jive:
intent: enabling intent: enabling
image: image:
registry: ${CAR_OCI_REGISTRY_HOST} registry: ${CAR_OCI_REGISTRY_HOST}
image: ska-tango-images-tango-java image: ska-tango-images-tango-java${IS_ALPINE}
tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-java setContextHelper; getVersion)${SUFFIX} tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-java${IS_ALPINE} setContextHelper; getVersion)${SUFFIX}
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
resources: resources:
requests: requests:
...@@ -262,8 +262,8 @@ tangorest: ...@@ -262,8 +262,8 @@ tangorest:
intent: enabling intent: enabling
image: image:
registry: ${CAR_OCI_REGISTRY_HOST} registry: ${CAR_OCI_REGISTRY_HOST}
image: ska-tango-images-tango-rest image: ska-tango-images-tango-rest${IS_ALPINE}
tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-rest setContextHelper; getVersion)${SUFFIX} tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-rest${IS_ALPINE} setContextHelper; getVersion)${SUFFIX}
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
resources: resources:
requests: requests:
...@@ -283,8 +283,8 @@ logviewer: ...@@ -283,8 +283,8 @@ logviewer:
intent: enabling intent: enabling
image: image:
registry: ${CAR_OCI_REGISTRY_HOST} registry: ${CAR_OCI_REGISTRY_HOST}
image: ska-tango-images-tango-java image: ska-tango-images-tango-java${IS_ALPINE}
tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-java setContextHelper; getVersion)${SUFFIX} tag: $(. ${RELEASE_SUPPORT}; RELEASE_CONTEXT_DIR=../../images/ska-tango-images-tango-java${IS_ALPINE} setContextHelper; getVersion)${SUFFIX}
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
resources: resources:
requests: requests:
...@@ -308,3 +308,4 @@ affinity: {} ...@@ -308,3 +308,4 @@ affinity: {}
tolerations: [] tolerations: []
EOF EOF
release=9.3.14 release=9.3.14
tag=9.13.14 tag=9.3.14
\ No newline at end of file \ No newline at end of file
...@@ -26,7 +26,6 @@ RUN apk --update add --no-cache libstdc++ \ ...@@ -26,7 +26,6 @@ RUN apk --update add --no-cache libstdc++ \
boost-dev \ boost-dev \
python3-dev \ python3-dev \
py3-pip \ py3-pip \
py3-wheel\
py3-cryptography \ py3-cryptography \
bash \ bash \
make \ make \
...@@ -43,7 +42,7 @@ COPY requirements.txt requirements.txt ...@@ -43,7 +42,7 @@ COPY requirements.txt requirements.txt
# Install numpy manually before PyTango and other requirements to ensure we # Install numpy manually before PyTango and other requirements to ensure we
# build PyTango with numpy support. # build PyTango with numpy support.
RUN python3.9 -m pip install --prefix=/usr/local numpy==1.21.0 \ RUN python3.9 -m pip install --prefix=/usr/local wheel numpy==1.21.0 \
# now install build requirements # now install build requirements
&& python3.9 -m pip install --prefix=/usr/local -r requirements.txt \ && python3.9 -m pip install --prefix=/usr/local -r requirements.txt \
# this should be commented if we wish for the builder # this should be commented if we wish for the builder
......
...@@ -19,6 +19,7 @@ pytest-pycodestyle ...@@ -19,6 +19,7 @@ pytest-pycodestyle
pytest-pydocstyle pytest-pydocstyle
pytest-pylint pytest-pylint
pytest-runner pytest-runner
pytest-timeout
python-dotenv>=0.5.1 python-dotenv>=0.5.1
ptvsd ptvsd
Sphinx Sphinx
......
...@@ -4,13 +4,13 @@ pyyaml ...@@ -4,13 +4,13 @@ pyyaml
pytest-cov pytest-cov
pytest-json-report pytest-json-report
pycodestyle<2.7.0,>=2.6.0a1 pycodestyle<2.7.0,>=2.6.0a1
pytest-bdd==3.4.0 pytest-bdd
pytest-ordering pytest-ordering
pytest-timeout
elasticsearch elasticsearch
kubernetes kubernetes
assertpy assertpy
mock mock
importlib
elasticsearch-dsl elasticsearch-dsl
aiohttp aiohttp
aiojobs aiojobs
......
...@@ -10,6 +10,7 @@ from pytest_bdd import given, scenario, then, when, parsers, scenarios ...@@ -10,6 +10,7 @@ from pytest_bdd import given, scenario, then, when, parsers, scenarios
scenarios('../features/tango-commands.feature') scenarios('../features/tango-commands.feature')
@pytest.fixture
@given(parsers.parse('a device called {device_name}')) @given(parsers.parse('a device called {device_name}'))
def device_proxy(run_context, device_name): def device_proxy(run_context, device_name):
"""a device called sys/tg_test/1.""" """a device called sys/tg_test/1."""
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment