mirror of
https://github.com/msojocs/wechat-web-devtools-linux.git
synced 2025-07-22 00:00:04 +08:00
refactor: 构建流程
This commit is contained in:
parent
b9e7fc7381
commit
3e489139c0
115
.github/workflows/release.yml
vendored
115
.github/workflows/release.yml
vendored
@ -16,8 +16,8 @@ on:
|
|||||||
# workflow_dispatch:
|
# workflow_dispatch:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build-src:
|
||||||
name: Build tar.gz AppImage
|
name: Build Base Packages
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
strategy:
|
strategy:
|
||||||
@ -53,29 +53,94 @@ jobs:
|
|||||||
export NO_WINE=false
|
export NO_WINE=false
|
||||||
export DOCKER_UID=$UID
|
export DOCKER_UID=$UID
|
||||||
export DOCKER_GID=$GID
|
export DOCKER_GID=$GID
|
||||||
# tar.gz AppImage
|
|
||||||
ls -l
|
ls -l
|
||||||
|
export NO_WINE=false
|
||||||
docker-compose up
|
docker-compose up
|
||||||
mkdir -p tmp/build
|
|
||||||
tools/build-release.sh ${{ matrix.ARCH }} ${{ steps.tag.outputs.tag }}
|
- name: Compress Resources
|
||||||
|
run: |
|
||||||
|
ls -l
|
||||||
|
mkdir -p tmp/src
|
||||||
|
cp node/bin/node package.nw/node
|
||||||
|
cd package.nw && rm -rf node.exe node && ln -s node.exe node
|
||||||
|
cd ..
|
||||||
|
tar -zcf tmp/src/src-wine.tar.gz bin nwjs package.nw tools
|
||||||
|
export NO_WINE=true
|
||||||
|
"tools/fix-core.sh"
|
||||||
|
"tools/fix-other.sh"
|
||||||
|
tar -zcf tmp/src/src-no-wine.tar.gz bin nwjs package.nw tools
|
||||||
|
|
||||||
- name: Compress nodegit compiler
|
- name: Compress nodegit compiler
|
||||||
run: |
|
run: |
|
||||||
ls -l
|
ls -l
|
||||||
cp -r package.nw/node_modules/nodegit tmp/build/nodegit
|
mkdir -p tmp/build
|
||||||
cp -r compiler tmp/build/compiler
|
cp -r package.nw/node_modules/nodegit .
|
||||||
cd tmp/build
|
|
||||||
ls -l
|
|
||||||
sudo rm -rf compiler/test
|
sudo rm -rf compiler/test
|
||||||
tar -zcf compiler.tar.gz compiler
|
tar -zcf compiler.tar.gz compiler
|
||||||
tar -zcf nodegit.tar.gz nodegit
|
tar -zcf nodegit.tar.gz nodegit
|
||||||
rm -rf compiler nodegit
|
mv nodegit.tar.gz tmp/build
|
||||||
|
mv compiler.tar.gz tmp/build
|
||||||
|
cd tmp/build
|
||||||
ls -l
|
ls -l
|
||||||
|
|
||||||
- name: View Directory
|
- name: View Directory
|
||||||
run: |
|
run: |
|
||||||
ls -l
|
ls -l
|
||||||
|
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-artifact@v2.3.1
|
||||||
|
with:
|
||||||
|
# Artifact name
|
||||||
|
name: wechat-devtools-${{ matrix.ARCH }}.src
|
||||||
|
path: tmp/src
|
||||||
|
|
||||||
|
build-tar:
|
||||||
|
name: Build tar.gz AppImage
|
||||||
|
needs:
|
||||||
|
- build-src
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
ARCH: ['x86_64']
|
||||||
|
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Download artifacts
|
||||||
|
uses: actions/download-artifact@v2
|
||||||
|
|
||||||
|
- name: Test
|
||||||
|
run: |
|
||||||
|
echo "$UID, $GID"
|
||||||
|
|
||||||
|
- name: Generate TAG
|
||||||
|
id: Tag
|
||||||
|
run: |
|
||||||
|
tag='continuous'
|
||||||
|
name='Continuous Build'
|
||||||
|
if [ 'true' == ${{ startsWith(github.ref, 'refs/tags/') }} ];then
|
||||||
|
tag='${{ github.ref_name }}'
|
||||||
|
name='${{ github.ref_name }}'
|
||||||
|
fi
|
||||||
|
echo "tag result: $tag - $name"
|
||||||
|
echo "::set-output name=tag::$tag"
|
||||||
|
echo "::set-output name=name::$name"
|
||||||
|
|
||||||
|
- name: Build
|
||||||
|
run: |
|
||||||
|
export NO_WINE=false
|
||||||
|
export ACTION_MODE=true
|
||||||
|
# tar.gz AppImage
|
||||||
|
ls -l
|
||||||
|
mkdir -p tmp/build
|
||||||
|
tools/build-prepare.sh
|
||||||
|
tools/build-release.sh ${{ matrix.ARCH }} ${{ steps.tag.outputs.tag }}
|
||||||
|
|
||||||
|
- name: View Directory
|
||||||
|
run: |
|
||||||
|
ls -l
|
||||||
|
|
||||||
- name: Upload artifact
|
- name: Upload artifact
|
||||||
uses: actions/upload-artifact@v2.3.1
|
uses: actions/upload-artifact@v2.3.1
|
||||||
with:
|
with:
|
||||||
@ -85,6 +150,8 @@ jobs:
|
|||||||
|
|
||||||
build-deb:
|
build-deb:
|
||||||
name: Build Deb Package
|
name: Build Deb Package
|
||||||
|
needs:
|
||||||
|
- build-src
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-18.04
|
||||||
|
|
||||||
strategy:
|
strategy:
|
||||||
@ -94,8 +161,8 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Use Node.js ${{ matrix.node-version }}
|
- name: Download artifacts
|
||||||
uses: actions/setup-node@v2
|
uses: actions/download-artifact@v2
|
||||||
|
|
||||||
- name: Generate TAG
|
- name: Generate TAG
|
||||||
id: Tag
|
id: Tag
|
||||||
@ -113,12 +180,12 @@ jobs:
|
|||||||
- name: Build Deb Package
|
- name: Build Deb Package
|
||||||
run: |
|
run: |
|
||||||
export BUILD_VERSION=${{ steps.tag.outputs.tag }}
|
export BUILD_VERSION=${{ steps.tag.outputs.tag }}
|
||||||
export DOCKER_UID=$UID
|
|
||||||
export DOCKER_GID=$GID
|
|
||||||
export ACTION_MODE=true
|
|
||||||
docker-compose up
|
|
||||||
ls -l
|
ls -l
|
||||||
mkdir -p tmp/build
|
mkdir -p tmp/build
|
||||||
|
tools/build-prepare.sh
|
||||||
|
tools/build-deb.sh ${{ steps.tag.outputs.tag }}
|
||||||
|
export NO_WINE=true
|
||||||
|
tools/build-prepare.sh
|
||||||
tools/build-deb.sh ${{ steps.tag.outputs.tag }}
|
tools/build-deb.sh ${{ steps.tag.outputs.tag }}
|
||||||
|
|
||||||
- name: Upload artifact
|
- name: Upload artifact
|
||||||
@ -130,6 +197,8 @@ jobs:
|
|||||||
|
|
||||||
build-deepin:
|
build-deepin:
|
||||||
name: Build Deepin Package
|
name: Build Deepin Package
|
||||||
|
needs:
|
||||||
|
- build-src
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-18.04
|
||||||
|
|
||||||
strategy:
|
strategy:
|
||||||
@ -139,8 +208,8 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Use Node.js ${{ matrix.node-version }}
|
- name: Download artifacts
|
||||||
uses: actions/setup-node@v2
|
uses: actions/download-artifact@v2
|
||||||
|
|
||||||
- name: Generate TAG
|
- name: Generate TAG
|
||||||
id: Tag
|
id: Tag
|
||||||
@ -158,12 +227,12 @@ jobs:
|
|||||||
- name: Build Deepin Package
|
- name: Build Deepin Package
|
||||||
run: |
|
run: |
|
||||||
export BUILD_VERSION=${{ steps.tag.outputs.tag }}
|
export BUILD_VERSION=${{ steps.tag.outputs.tag }}
|
||||||
export DOCKER_UID=$UID
|
|
||||||
export DOCKER_GID=$GID
|
|
||||||
export ACTION_MODE=true
|
|
||||||
docker-compose up
|
|
||||||
ls -l
|
ls -l
|
||||||
mkdir -p tmp/build
|
mkdir -p tmp/build
|
||||||
|
tools/build-prepare.sh
|
||||||
|
tools/build-deepin.sh ${{ steps.tag.outputs.tag }}
|
||||||
|
export NO_WINE=true
|
||||||
|
tools/build-prepare.sh
|
||||||
tools/build-deepin.sh ${{ steps.tag.outputs.tag }}
|
tools/build-deepin.sh ${{ steps.tag.outputs.tag }}
|
||||||
|
|
||||||
- name: Upload artifact
|
- name: Upload artifact
|
||||||
@ -249,7 +318,7 @@ jobs:
|
|||||||
upload:
|
upload:
|
||||||
name: Create release and upload artifacts
|
name: Create release and upload artifacts
|
||||||
needs:
|
needs:
|
||||||
- build
|
- build-tar
|
||||||
- build-deb
|
- build-deb
|
||||||
- build-deepin
|
- build-deepin
|
||||||
- build-arch
|
- build-arch
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
[](https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html)
|
[](https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html)
|
||||||
[](https://nwjs.io/downloads/)
|
[](https://nwjs.io/downloads/)
|
||||||
[](https://nodejs.org/en/)
|
[](https://nodejs.org/en/)
|
||||||
|
[](https://aur.archlinux.org/packages/wechat-devtools)
|
||||||
|
|
||||||
这是微信开发者工具 Linux版
|
这是微信开发者工具 Linux版
|
||||||
|
|
||||||
|
@ -81,9 +81,11 @@ chmod +x "$app_dir/AppRun"
|
|||||||
|
|
||||||
cp -r "$root_dir/package.nw" "$app_dir/package.nw"
|
cp -r "$root_dir/package.nw" "$app_dir/package.nw"
|
||||||
cp -r "$root_dir/nwjs" "$app_dir/nwjs"
|
cp -r "$root_dir/nwjs" "$app_dir/nwjs"
|
||||||
rm -rf "$app_dir/nwjs/node" "$app_dir/nwjs/node.exe"
|
if [ -f $root_dir/node/bin/node ];then
|
||||||
cp -r "$root_dir/node/bin/node" "$app_dir/nwjs/node"
|
rm -rf "$app_dir/nwjs/node" "$app_dir/nwjs/node.exe"
|
||||||
cd "$app_dir/nwjs/" && ln -s "node" "node.exe"
|
cp "$root_dir/node/bin/node" "$app_dir/nwjs/node"
|
||||||
|
cd "$app_dir/nwjs/" && ln -s "node" "node.exe"
|
||||||
|
fi
|
||||||
cd "$app_dir"
|
cd "$app_dir"
|
||||||
|
|
||||||
# appimagetool $app_dir
|
# appimagetool $app_dir
|
||||||
|
@ -60,11 +60,19 @@ cp "$root_dir/res/icons/wechat-devtools.svg" "$app_dir/usr/share/icons/wechat-de
|
|||||||
cp -r "$root_dir/package.nw" "$app_dir/opt/wechat-devtools/package.nw"
|
cp -r "$root_dir/package.nw" "$app_dir/opt/wechat-devtools/package.nw"
|
||||||
cp -r "$root_dir/nwjs" "$app_dir/opt/wechat-devtools/nwjs"
|
cp -r "$root_dir/nwjs" "$app_dir/opt/wechat-devtools/nwjs"
|
||||||
rm -rf "$app_dir/opt/wechat-devtools/nwjs"/{node,node.exe}
|
rm -rf "$app_dir/opt/wechat-devtools/nwjs"/{node,node.exe}
|
||||||
cp "$root_dir/node/bin/node" "$app_dir/opt/wechat-devtools/nwjs/node"
|
if [ -f "$root_dir/node/bin/node" ];then
|
||||||
cd "$app_dir/opt/wechat-devtools/nwjs/" && ln -s "node" "node.exe"
|
cd "$app_dir/opt/wechat-devtools/nwjs" && rm -rf node node.exe
|
||||||
|
cp "$root_dir/node/bin/node" "$app_dir/opt/wechat-devtools/nwjs/node"
|
||||||
|
cd "$app_dir/opt/wechat-devtools/nwjs/" && ln -s "node" "node.exe"
|
||||||
|
fi
|
||||||
|
|
||||||
notice "BUILD DEB Package"
|
notice "BUILD DEB Package"
|
||||||
cd "$root_dir/tmp/deb"
|
cd "$root_dir/tmp/deb"
|
||||||
ls -l "$root_dir/tmp/deb"
|
ls -l "$root_dir/tmp/deb"
|
||||||
mkdir -p "$root_dir/tmp/build"
|
mkdir -p "$root_dir/tmp/build"
|
||||||
dpkg-deb -b . "$root_dir/tmp/build/WeChat_Dev_Tools_${BUILD_VERSION}_amd64.deb"
|
if [[ $NO_WINE == 'true' ]];then
|
||||||
|
BUILD_MARK='no_wine'
|
||||||
|
else
|
||||||
|
BUILD_MARK='wine'
|
||||||
|
fi
|
||||||
|
dpkg-deb -b . "$root_dir/tmp/build/WeChat_Dev_Tools_${BUILD_VERSION}_amd64_${BUILD_MARK}.deb"
|
||||||
|
@ -61,12 +61,20 @@ sed -i "s#dir#/opt/apps/$package_name/files/bin#" "$base_dir/entries/application
|
|||||||
|
|
||||||
cp -r "$root_dir/package.nw" "$base_dir/files/bin/package.nw"
|
cp -r "$root_dir/package.nw" "$base_dir/files/bin/package.nw"
|
||||||
cp -r "$root_dir/nwjs" "$base_dir/files/bin/nwjs"
|
cp -r "$root_dir/nwjs" "$base_dir/files/bin/nwjs"
|
||||||
rm -rf "$base_dir/files/bin/nwjs"/{node,node.exe}
|
if [ -f "$root_dir/node/bin/node" ];then
|
||||||
cp "$root_dir/node/bin/node" "$base_dir/files/bin/nwjs/node"
|
rm -rf "$base_dir/files/bin/nwjs"/{node,node.exe}
|
||||||
cd "$base_dir/files/bin/nwjs/" && ln -s "node" "node.exe"
|
cp "$root_dir/node/bin/node" "$base_dir/files/bin/nwjs/node"
|
||||||
|
cd "$base_dir/files/bin/nwjs/" && ln -s "node" "node.exe"
|
||||||
|
fi
|
||||||
|
|
||||||
notice "BUILD DEB Package"
|
notice "BUILD DEB Package"
|
||||||
cd "$build_dir"
|
cd "$build_dir"
|
||||||
ls -l "$build_dir"
|
ls -l "$build_dir"
|
||||||
mkdir -p "$root_dir/tmp/build"
|
mkdir -p "$root_dir/tmp/build"
|
||||||
dpkg-deb -b . "$root_dir/tmp/build/WeChat_Dev_Tools_${BUILD_VERSION}_deepin_amd64.deb"
|
|
||||||
|
if [[ $NO_WINE == 'true' ]];then
|
||||||
|
BUILD_MARK='no_wine'
|
||||||
|
else
|
||||||
|
BUILD_MARK='wine'
|
||||||
|
fi
|
||||||
|
dpkg-deb -b . "$root_dir/tmp/build/WeChat_Dev_Tools_${BUILD_VERSION}_amd64_${BUILD_MARK}_deepin.deb"
|
||||||
|
24
tools/build-prepare.sh
Executable file
24
tools/build-prepare.sh
Executable file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# 脚本执行前提,已完成支持wine的基本构建
|
||||||
|
set -e
|
||||||
|
success() {
|
||||||
|
echo -e "\033[42;37m 成功 \033[0m $1"
|
||||||
|
}
|
||||||
|
notice() {
|
||||||
|
echo -e "\033[36m $1 \033[0m "
|
||||||
|
}
|
||||||
|
fail() {
|
||||||
|
echo -e "\033[41;37m 失败 \033[0m $1"
|
||||||
|
}
|
||||||
|
|
||||||
|
root_dir=$(cd `dirname $0`/.. && pwd -P)
|
||||||
|
tmp_dir="$root_dir/tmp"
|
||||||
|
store_dir="$tmp_dir/build"
|
||||||
|
mkdir -p $store_dir
|
||||||
|
rm -rf nwjs package.nw
|
||||||
|
if [[ $NO_WINE == 'true' ]];then
|
||||||
|
tar -zxf wechat-devtools-*.src/src-no-wine.tar.gz -C .
|
||||||
|
else
|
||||||
|
tar -zxf wechat-devtools-*.src/src-wine.tar.gz -C .
|
||||||
|
fi
|
@ -58,8 +58,11 @@ notice "COPY bin"
|
|||||||
notice "COPY nwjs"
|
notice "COPY nwjs"
|
||||||
\cp -drf "$root_dir/nwjs" "$build_dir/nwjs"
|
\cp -drf "$root_dir/nwjs" "$build_dir/nwjs"
|
||||||
notice "COPY node"
|
notice "COPY node"
|
||||||
rm -rf "$build_dir/nwjs/node"
|
if [ -f "$root_dir/node/bin/node" ];then
|
||||||
\cp -rf "$root_dir/node/bin/node" "$build_dir/nwjs/node"
|
cd $build_dir/nwjs && rm -rf node node.exe
|
||||||
|
\cp -rf "$root_dir/node/bin/node" "$build_dir/nwjs/node"
|
||||||
|
cd "$build_dir/nwjs" && ln -s node.exe node
|
||||||
|
fi
|
||||||
notice "COPY package.nw"
|
notice "COPY package.nw"
|
||||||
\cp -rf "$root_dir/package.nw" "$build_dir/package.nw"
|
\cp -rf "$root_dir/package.nw" "$build_dir/package.nw"
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user