
- Add mkdir command to create dist directory before build process - Ensure required directory structure exists for build artifacts - Add Chinese comments explaining directory creation purpose
94 lines
2.4 KiB
YAML
94 lines
2.4 KiB
YAML
version: 2.1
|
|
executors:
|
|
node-executor:
|
|
docker:
|
|
- image: cimg/node:20.2.0
|
|
jobs:
|
|
build:
|
|
executor: node-executor
|
|
steps:
|
|
- checkout
|
|
- run: git submodule sync
|
|
- run: git submodule update --init --recursive
|
|
# 创建必要的目录
|
|
- run: mkdir -p dist
|
|
# 首先在根目录安装依赖
|
|
- run: yarn install
|
|
# 然后进入 gui 目录安装依赖并构建
|
|
- run: |
|
|
cd gui
|
|
yarn install
|
|
yarn vscode
|
|
cd ..
|
|
# 最后执行打包
|
|
- run: yarn package
|
|
- persist_to_workspace:
|
|
root: .
|
|
paths:
|
|
- .
|
|
test:
|
|
executor: node-executor
|
|
steps:
|
|
- attach_workspace:
|
|
at: .
|
|
- run:
|
|
name: Install Python
|
|
command: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y python3 python3-pip
|
|
- run:
|
|
name: update workflows
|
|
command: |
|
|
export PYTHONPATH="$PYTHONPATH:$(pwd)/tools/site-packages"
|
|
mkdir -p ~/.chat/workflows
|
|
git clone https://github.com/devchat-ai/workflows.git ~/.chat/workflows/sys
|
|
cd ~/.chat/workflows/sys
|
|
- run:
|
|
name: Run workflow tests
|
|
command: |
|
|
export PYTHONPATH="$PYTHONPATH:$(pwd)/tools/site-packages"
|
|
git config --global user.email "tester@merico.dev"
|
|
git config --global user.name "tester"
|
|
python3 test/workflows/workflow_test.py
|
|
- persist_to_workspace:
|
|
root: .
|
|
paths:
|
|
- .
|
|
publish:
|
|
executor: node-executor
|
|
steps:
|
|
- attach_workspace:
|
|
at: .
|
|
- run:
|
|
name: "Update version in package.json"
|
|
command: |
|
|
sed -i "s/\"version\": \".*\",/\"version\": \"${CIRCLE_TAG:1}\",/" package.json
|
|
- run:
|
|
name: "Publish to Marketplace"
|
|
command: npx vsce publish -p $VSCE_TOKEN --allow-star-activation --pre-release
|
|
workflows:
|
|
version: 2
|
|
build-and-publish:
|
|
jobs:
|
|
- build:
|
|
filters:
|
|
tags:
|
|
only: /.*/
|
|
branches:
|
|
ignore: []
|
|
- test:
|
|
requires:
|
|
- build
|
|
filters:
|
|
tags:
|
|
only: /.*/
|
|
branches:
|
|
ignore: /.*/
|
|
- publish:
|
|
requires:
|
|
- build
|
|
filters:
|
|
tags:
|
|
only: /.*/
|
|
branches:
|
|
ignore: /.*/ |