--- # SPDX-FileCopyrightText: WTF Kooperative eG # # SPDX-License-Identifier: AGPL-3.0-or-later kind: pipeline type: docker name: qa trigger: event: - push - pull_request branch: - main services: - name: mariadb image: mariadb:11.8.3@sha256:851a6020c97b9eae7736b6fb275800601d64635222054d3a1b1b3c4abdfa117a environment: MARIADB_ROOT_PASSWORD: notused MARIADB_DATABASE: ki MARIADB_USER: ki MARIADB_PASSWORD: testing TZ: Europe/Berlin steps: - name: install-lint-test image: python:3.11.13-alpine@sha256:8d8c6d3808243160605925c2a7ab2dc5c72d0e75651699b0639143613e0855b8 env: PYROOT: '/pyroot' PYTHONUSERBASE: '/pyroot' commands: - apk add --no-cache gcc g++ musl-dev python3-dev - pip3 install pipenv - pipenv verify - pipenv install --dev - pipenv run flake8 - pipenv run reuse lint - SQLALCHEMY_DATABASE_URI=mariadb+pymysql://ki:testing@mariadb:3306/ki pipenv run python -m unittest discover ki - name: docker-dry-run image: plugins/docker:20.18.6@sha256:59c993e3c4e6c097a0e2d274419aac0d7d8e929773f0ba1af44078e54389834f settings: registry: git.wtf-eg.de repo: git.wtf-eg.de/kompetenzinventar/backend target: ki-backend dry_run: true when: event: - pull_request --- kind: pipeline type: docker name: build trigger: event: - push branch: - main depends_on: - qa steps: - name: docker-publish image: plugins/docker:20.18.6@sha256:59c993e3c4e6c097a0e2d274419aac0d7d8e929773f0ba1af44078e54389834f settings: registry: git.wtf-eg.de repo: git.wtf-eg.de/kompetenzinventar/backend target: ki-backend auto_tag: true username: from_secret: "docker_username" password: from_secret: "docker_password" --- kind: pipeline type: docker name: deploy trigger: event: - push branch: - main depends_on: - build steps: - name: deploy-dev image: appleboy/drone-ssh:1.7.5@sha256:995677e073454912f26d4c0fdd2f9df2e1f5a30d6603d3f2ece667311b6babb3 settings: host: - dev01.wtf-eg.net username: drone_deployment key: from_secret: "dev01_deployment_key" command_timeout: 2m script: - echo "Executing forced command..." --- kind: pipeline type: docker name: tag-release trigger: event: - tag services: - name: mariadb image: mariadb:11.8.3@sha256:851a6020c97b9eae7736b6fb275800601d64635222054d3a1b1b3c4abdfa117a environment: MARIADB_ROOT_PASSWORD: notused MARIADB_DATABASE: ki MARIADB_USER: ki MARIADB_PASSWORD: testing TZ: Europe/Berlin steps: - name: install-lint-test image: python:3.11.13-alpine@sha256:8d8c6d3808243160605925c2a7ab2dc5c72d0e75651699b0639143613e0855b8 env: PYROOT: '/pyroot' PYTHONUSERBASE: '/pyroot' commands: - apk add --no-cache gcc g++ musl-dev python3-dev - pip3 install pipenv - pipenv install --dev - pipenv run flake8 - pipenv run reuse lint - SQLALCHEMY_DATABASE_URI=mariadb+pymysql://ki:testing@mariadb:3306/ki pipenv run python -m unittest discover ki - name: docker-publish image: plugins/docker:20.18.6@sha256:59c993e3c4e6c097a0e2d274419aac0d7d8e929773f0ba1af44078e54389834f settings: registry: git.wtf-eg.de repo: git.wtf-eg.de/kompetenzinventar/backend target: ki-backend auto_tag: true username: from_secret: "docker_username" password: from_secret: "docker_password"