--- kind: pipeline name: test steps: - name: lint image: alpine:edge commands: - apk add --no-cache python3 py3-lxml py3-setproctitle py3-pip py3-wheel py3-enchant hunspell-en - pip3 install --no-cache-dir .[full] .[dev] - isort --check-only --diff . - pylint morss --rcfile=.pylintrc --disable=C,R,W --fail-under=8 - pytest --cov=morss tests --- kind: pipeline name: python steps: - name: publish image: plugins/pypi settings: username: from_secret: pypi_user password: from_secret: pypi_pwd commands: - /bin/drone-pypi - cp dist/morss-*.tar.gz dist/morss.tar.gz - name: push image: appleboy/drone-scp settings: host: from_secret: ssh_host username: from_secret: ssh_user key: from_secret: ssh_key source: - dist/morss.tar.gz target: /home/ubuntu - name: deploy image: appleboy/drone-ssh settings: host: from_secret: ssh_host username: from_secret: ssh_user key: from_secret: ssh_key script_stop: true script: - sudo pip install --upgrade dist/morss.tar.gz[full] - sudo rm -r dist - sudo morss-helper reload trigger: branch: - master event: - push depends_on: - test --- kind: pipeline name: docker steps: - name: publish image: thegeeklab/drone-docker-buildx # NB. this requires qemu installed on host privileged: true settings: username: from_secret: docker_user password: from_secret: docker_pwd repo: from_secret: docker_repo tags: latest platforms: linux/amd64,linux/arm64,linux/arm/v7 trigger: branch: - master event: - push depends_on: - test