go_echo_wol/.drone.yml

81 lines
1.9 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
- git checkout master
- 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: go:1.21.0-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
debug: true
when:
status: [failure, success]
volumes:
- name: outdir
host:
path: /root/web