go_echo_wol/.drone.yml

94 lines
2.2 KiB
YAML

# .drone.yml
kind: pipeline
name: default
workspace:
base: /go
path: src/github.com/octocat/hello-world
steps:
- name: test
image: golang
commands:
- export GOPROXY=https://mirrors.aliyun.com/goproxy/
- go test
- name: clone_web
image: alpine/git
commands:
- mkdir /go/web
- ls /go/web
- git clone https://git.shagain.club/lingling/go_echo_wol_web.git /go/web
- name: build_web
image: node
commands:
- cd /go/web/
- npm install yarn
- yarn config set registry https://registry.npm.taobao.org --global
- yarn
- sed -i 's?(dev_ws_url)?(wsurl)?g' ./src/api/websocket.js
- yarn build
- name: build
image: golang:bullseye
volumes:
- name: outdir
path: /root/web
commands:
- rm -rf /root/web/*
- rm -rf ./app/*
- cp -r /go/web/build/* ./app/
- sed -i 's?/static?/static/static?g' ./app/index.html
- sed -i 's?/favicon.ico?/static/favicon.ico?g' ./app/index.html
- sed -i 's?/logo192.png?/static/logo192.png?g' ./app/index.html
- sed -i 's?/manifest.json?/static/manifest.json?g' ./app/index.html
- apt update -y && apt install build-essential -y
- bash bulid.sh
- name: 打包Docker镜像并推送
image: plugins/docker
settings:
repo: linglingking/go_wol_web
use_cache: true
username:
from_secret: docker_name
password:
from_secret: docker_password
auto_tag: true # 自动打tag
# 也可以用下面这个手动指定
# tags:
# - latest
# - 0.0.1
when:
event: push
branch: master
# - name: 钉钉通知
# image: lddsb/drone-dingtalk-message
# settings:
# token: e53b19defd95a6f27ca766051b3ba047328760b0bbcd7c9fb6e74bc33635eb07
# type: markdown
# secret: SECad13514bd7dee3fa73eeec19c32cfa2495a0f94976162f8534af956be30870e4
# message_pic: true
# message_color: true
# debug: false
# when:
# status: [failure, success]
- name: 钉钉通知
image: guoxudongdocker/drone-dingtalk
settings:
token: e53b19defd95a6f27ca766051b3ba047328760b0bbcd7c9fb6e74bc33635eb07
type: markdown
message_color: true
message_pic: true
sha_link: true
when:
status: [ failure, success ]
volumes:
- name: outdir
host:
path: /root/web