--- # 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 steps: - name: install-lint-test image: python:3.8.18-alpine 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 - pipenv run python -m unittest discover ki --- kind: pipeline type: docker name: build trigger: event: - push branch: - main depends_on: - qa steps: - name: docker-publish image: plugins/docker:20.17.3 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 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 steps: - name: install-lint-test image: python:3.8.18-alpine 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 - pipenv run python -m unittest discover ki - name: docker-publish image: plugins/docker:20.17.3 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"