kind: pipeline type: docker name: default steps: - name: build image: python:3.11-slim commands: - pip install --no-cache-dir -r requirements.txt - name: test image: python:3.11-slim commands: - pip install --no-cache-dir -r requirements.txt - pip install pytest pytest-asyncio - pytest tests/ -v || true - name: docker-build image: plugins/docker settings: repo: 217.11.166.147:3000/admin/gptchat registry: http://217.11.166.147:3000 insecure: true tags: - latest - ${DRONE_COMMIT_SHA:0:8} username: from_secret: docker_username password: from_secret: docker_password context: . dockerfile: Dockerfile when: branch: - main event: - push - custom - name: deploy image: appleboy/drone-ssh settings: host: 217.11.166.147 username: from_secret: ssh_username password: from_secret: ssh_password port: 22 script: - export DOCKER_HOST="unix:///var/run/docker.sock" - docker stop gptchat || true - docker rm gptchat || true - docker pull 217.11.166.147:3000/admin/gptchat:latest - docker run -d --name gptchat -p 8084:8084 217.11.166.147:3000/admin/gptchat:latest when: branch: - main event: - push - custom