--- # 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.20-alpine@sha256:3d93b1f77efce339aa77db726656872517b0d67837989aa7c4b35bd5ae7e81ba env: PYROOT: '/pyroot' PYTHONUSERBASE: '/pyroot' SQLALCHEMY_DATABASE_URI: 'sqlite://' 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 - pipenv run python -m unittest discover ki - name: docker-dry-run image: plugins/docker:20.18.4@sha256:a8d3d86853c721492213264815f1d00d3ed13f42f5c1855a02f47fa4d5f1e042 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.4@sha256:a8d3d86853c721492213264815f1d00d3ed13f42f5c1855a02f47fa4d5f1e042 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 steps: - name: install-lint-test image: python:3.8.20-alpine@sha256:3d93b1f77efce339aa77db726656872517b0d67837989aa7c4b35bd5ae7e81ba env: PYROOT: '/pyroot' PYTHONUSERBASE: '/pyroot' SQLALCHEMY_DATABASE_URI: 'sqlite://' 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.18.4@sha256:a8d3d86853c721492213264815f1d00d3ed13f42f5c1855a02f47fa4d5f1e042 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"