0

I'm trying to setup a simple CI/CD environment on gitlab. My code is a python app that needs an external service for testing. The service is a container that does not require any script to be run. My gitlab-ci.yml file is:

stages:
  - dynamodb
  - testing


build_dynamo:
  stage: dynamodb
  image: amazon/dynamodb-local:latest


unit_tests:
  stage: testing
  image: python:3.10.3
  before_script:
    - pip install -r requirements_tests.txt
    - export PYTHONPATH="${PYTHONPATH}:./src"
  script: 
    - python -m unittest discover -s ./tests -p '*test*.py'

For this config I get an error

Found errors in your .gitlab-ci.yml: jobs build_dynamo config should implement a script: or a trigger: keyword

Hiow can I solve this or implement the setup I need?

esantix
  • 323
  • 5
  • 26

1 Answers1

0

Using service solved this

unit_tests:
  image: python:3.10.3-slim-buster
  services:
    - name: amazon/dynamodb-local:latest
  before_script:
    - pip install -r requirements_tests.txt
    - export PYTHONPATH="${PYTHONPATH}:./src"
  script: 
    - python -m unittest discover -s ./tests -p '*test*.py'

endpoint for the service is amazon-dynamo-local:8000 since "/" are changed to "-".

Reference: https://docs.gitlab.com/ee/ci/services/#accessing-the-services

esantix
  • 323
  • 5
  • 26