kind: pipeline
name: default

steps:
  - name: restore-cache
    image: drillster/drone-volume-cache
    volumes:
    - name: cache
      path: /cache
    settings:
      restore: true
      mount:
        - ./node_modules

  - name: build
    image: node:16.15
    commands:
      - npm config set registry http://nexus.fast-fun.cn:92/repository/npm-public/
      - git config --global http.sslverify "false"
      - git config --global url."https://".insteadOf ssh://git
      - npm install
      - npm run build:prod
  
  - name: rebuild-cache
    image: drillster/drone-volume-cache
    volumes:
    - name: cache
      path: /cache
    settings:
      rebuild: true
      mount:
        - ./node_modules

  - name: docker-web
    image: plugins/docker
    settings:
      tags:
        - latest
        - 2.0.${DRONE_BUILD_NUMBER}
      registry: nas.fast-fun.cn:5000
      insecure: true
      repo: nas.fast-fun.cn:5000/zk/station-control-frontend-v2

volumes:
  - name: cache
    host:
      path: /home/drone/cache