Armin Friedl
2b18120c0b
All checks were successful
continuous-integration/drone/push Build is passing
68 lines
1.6 KiB
YAML
68 lines
1.6 KiB
YAML
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
|