kind: pipeline type: docker name: default steps: - name: build-service image: maven:3.6-jdk-11 volumes: - name: m2-cache path: /root/.m2 environment: NEXUS_USER: from_secret: nexus_user NEXUS_PASSWORD: from_secret: nexus_password commands: - mkdir -p /root/.m2 - cp service/settings.xml /root/.m2/settings.xml - cd service/fling - mvn -Pprod clean deploy - name: build-web image: node:latest volumes: - name: node-cache path: /drone/src/web/fling/node_modules environment: NEXUS_USER: from_secret: nexus_user NEXUS_PASSWORD: from_secret: nexus_password commands: - ls -al - cd web/fling - npm install && npm run build - tar czf fling-web-latest.tar.gz build/ - curl --user "$NEXUS_USER:$NEXUS_PASSWORD" --upload-file ./fling-web-latest.tar.gz https://nexus.friedl.net/repository/build-artifacts/fling-web-latest.tar.gz - name: publish image: plugins/docker settings: username: from_secret: docker_username password: from_secret: docker_password dockerfile: container/Dockerfile context: ./container repo: arminfriedl/fling tags: dev - name: runservice image: arminfriedl/fling:dev pull: always detach: true - name: generate-clients image: openapitools/openapi-generator-cli commands: - sleep 35 - java -jar /opt/openapi-generator/modules/openapi-generator-cli/target/openapi-generator-cli.jar generate -i http://runservice:3000/v3/api-docs -g python -o flingclient volumes: - name: m2-cache host: path: /var/services/drone/cache/fling/m2 - name: node-cache host: path: /var/services/drone/cache/fling/node