kind: pipeline type: kubernetes name: back-end # This pipeline tests the back-end using the integration tests. trigger: event: [ push, pull_request ] workspace: path: /drone/src steps: - name: install dependencies image: sandervocke/postgres_node:12 commands: - echo "hi!" # - npm install # - cd /drone/src/server && npm install # - name: back-end test (SQLite3) # image: sandervocke/postgres_node:12 # commands: # - cd /drone/src/server && ./test/test.sh --sqlite # - name: back-end test (PostgreSQL) # image: sandervocke/postgres_node:12 # commands: # - cd /drone/src/server && ./test/test.sh --postgres --start-postgres-testcontainer --- kind: pipeline type: kubernetes name: front-end # This pipeline tests the front-end by running it through a TypeScript compiler. trigger: event: [ push, pull_request ] workspace: path: /drone/src steps: - name: install dependencies image: node commands: - echo "hi!" # - cd /drone/src && npm install # - cd /drone/src/client && npm install # - name: front-end compile # image: node # commands: # - cd /drone/src/client && ./node_modules/.bin/tsc; cd .. --- kind: pipeline type: kubernetes name: dockerhub # This pipeline builds the docker container and publishes it # to DockerHub. The promotion target is "dockerhub". trigger: event: [ promote ] steps: - name: prepare image: alpine/git commands: - "echo \"dev-$(git rev-parse HEAD),latest\" > .tags" - name: publish image: plugins/docker settings: repo: sandervocke/mudbase username: from_secret: docker_username password: from_secret: docker_password dockerfile: deploy/Dockerfile