Skip to content

Commit

Permalink
robottests in docker
Browse files Browse the repository at this point in the history
  • Loading branch information
alekseystryukov committed Jul 12, 2023
1 parent 73c7da6 commit 76ac284
Show file tree
Hide file tree
Showing 10 changed files with 106 additions and 3 deletions.
3 changes: 3 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
MODE=aboveThresholdUA

ROBOT_OPTIONS="--loglevel DEBUG -s planning --exitonfailure"
46 changes: 46 additions & 0 deletions .github/workflows/build-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Build & Publish Docker Image

on:
push:
tags:
- '*'

env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}


jobs:
build-and-push-image:
name: "Builds and publishes a docker image"
runs-on: ubuntu-latest
permissions:
contents: read
packages: write

steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Log in to the Container registry
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}

- name: Build and push Docker image
uses: docker/build-push-action@f2a1d5e99d037542a71f64918e516c093c6f3fc4
with:
context: .
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
__pycache__/
*.py[cod]

.env
artifact*.yaml
reports/

# Distribution / packaging / buildout
/*.egg-info/
/.installed.cfg
Expand Down
15 changes: 15 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
stages:
- build

build:
stage: build
tags:
- shell
before_script:
- docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
script:
- docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG .
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG
- docker rmi -f $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG
only:
- tags
13 changes: 13 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
FROM ppodgorsek/robot-framework:latest

USER root
RUN dnf install -y git
COPY requirements.txt requirements.txt
RUN pip3 install --upgrade pip && pip install --no-cache-dir -r requirements.txt

USER ${ROBOT_UID}:${ROBOT_GID}


COPY /op_robot_tests/tests_files /opt/robotframework/tests

CMD ["sh","-c", "run-tests-in-virtual-screen.sh"]
13 changes: 13 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
version: '3.8'

services:
robot:
build:
context: .
dockerfile: Dockerfile
command: ["sh","-c", "run-tests-in-virtual-screen.sh"]
env_file:
- .env
volumes:
- ./op_robot_tests/tests_files:/opt/robotframework/tests
- ./reports:/opt/robotframework/reports
2 changes: 1 addition & 1 deletion op_robot_tests/tests_files/aboveThreshold_keywords.robot
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
*** Settings ***
Library ../tests_files/service_keywords.py
Library service_keywords.py
Library Collections
Resource keywords.robot
Resource resource.robot
Expand Down
2 changes: 1 addition & 1 deletion op_robot_tests/tests_files/base_keywords.robot
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
coding: utf-8
*** Settings ***
Library ../tests_files/service_keywords.py
Library service_keywords.py
Library Collections
Resource keywords.robot
Resource resource.robot
Expand Down
2 changes: 1 addition & 1 deletion op_robot_tests/tests_files/keywords.robot
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
coding: utf-8
*** Settings ***
Library ../tests_files/service_keywords.py
Library service_keywords.py
Library String
Library Collections
Library SeleniumLibrary
Expand Down
9 changes: 9 additions & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Faker>=18.9.0
dpath==2.1.6
robotframework-debuglibrary==2.3.0
haversine==2.8.0
jsonpath-rw==1.4.0
munch==3.0.0
webdriver-manager==3.8.6
git+https://github.com/ProzorroUKR/[email protected]#egg=barbecue
git+https://github.com/ProzorroUKR/openprocurement.client.python.git@upstream#egg=openprocurement_client

0 comments on commit 76ac284

Please sign in to comment.