更新ci以适配新的版本信息文件 (#214)
* 修改updateConfVersion.py * 添加更新conf.lua时修改存档目录的步骤 * Add files via upload * 更改ci脚本以适配新版版本信息 * 修正问题 * 打包时添加version.lua * 更新updateVersion.py以适配新版版本信息 * 删除被替换的py文件 Co-authored-by: MrZ_26 <1046101471@qq.com>
This commit is contained in:
44
.github/workflows/build.yml
vendored
44
.github/workflows/build.yml
vendored
@@ -9,13 +9,20 @@ jobs:
|
|||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
- name: Download lua
|
||||||
|
run: |
|
||||||
|
curl -OL https://nchc.dl.sourceforge.net/project/luabinaries/5.4.2/Tools%20Executables/lua-5.4.2_Win64_bin.zip
|
||||||
|
- name: Unpack lua
|
||||||
|
run: |
|
||||||
|
7z x lua-5.4.2_Win64_bin.zip -olua
|
||||||
|
rename-Item '.\lua\lua54.exe' -NewName 'lua.exe'
|
||||||
- name: Get CommitID
|
- name: Get CommitID
|
||||||
run: |
|
run: |
|
||||||
$CommitID=git rev-parse --short "${{ GITHUB.SHA }}"
|
$CommitID=git rev-parse --short "${{ GITHUB.SHA }}"
|
||||||
echo "CommitID=${CommitID}" >> $env:GITHUB_ENV
|
echo "CommitID=${CommitID}" >> $env:GITHUB_ENV
|
||||||
- name: Get Version
|
- name: Get Version
|
||||||
run: |
|
run: |
|
||||||
$Version=python .github/workflows/getVersion.py
|
$Version=.\lua\lua.exe .\.github\workflows\getVersion.lua -string
|
||||||
echo "Version=${Version}" >> $env:GITHUB_ENV
|
echo "Version=${Version}" >> $env:GITHUB_ENV
|
||||||
- name: Update Conf Version
|
- name: Update Conf Version
|
||||||
run: |
|
run: |
|
||||||
@@ -33,7 +40,7 @@ jobs:
|
|||||||
- name: Pack Techmino
|
- name: Pack Techmino
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
7z a -tzip game.love document media parts Zframework conf.lua font.ttf main.lua
|
7z a -tzip game.love document media parts Zframework conf.lua font.ttf main.lua version.lua
|
||||||
copy /b love-11.3-win64\love.exe + game.love love-11.3-win64\Techmino.exe
|
copy /b love-11.3-win64\love.exe + game.love love-11.3-win64\Techmino.exe
|
||||||
del love-11.3-win64\love.exe
|
del love-11.3-win64\love.exe
|
||||||
del love-11.3-win64\lovec.exe
|
del love-11.3-win64\lovec.exe
|
||||||
@@ -47,13 +54,18 @@ jobs:
|
|||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
- name: Install lua
|
||||||
|
run: |
|
||||||
|
sudo apt-get update -y
|
||||||
|
sudo apt-get upgrade -y
|
||||||
|
sudo apt-get install lua5.3 -y
|
||||||
- name: Get CommitID
|
- name: Get CommitID
|
||||||
run: |
|
run: |
|
||||||
CommitID=$(git rev-parse --short "${{ GITHUB.SHA }}")
|
CommitID=$(git rev-parse --short "${{ GITHUB.SHA }}")
|
||||||
echo "CommitID=${CommitID}" >> $GITHUB_ENV
|
echo "CommitID=${CommitID}" >> $GITHUB_ENV
|
||||||
- name: Get Version
|
- name: Get Version
|
||||||
run: |
|
run: |
|
||||||
Version=$(python3 .github/workflows/getVersion.py)
|
Version=$(lua ./.github/workflows/getVersion.lua -string)
|
||||||
echo "Version=${Version}" >> $GITHUB_ENV
|
echo "Version=${Version}" >> $GITHUB_ENV
|
||||||
- name: Update Conf Version
|
- name: Update Conf Version
|
||||||
run: |
|
run: |
|
||||||
@@ -69,7 +81,7 @@ jobs:
|
|||||||
cd squashfs-root/usr/share/Techmino
|
cd squashfs-root/usr/share/Techmino
|
||||||
rm -rf document media parts Zframework conf.lua font.ttf main.lua
|
rm -rf document media parts Zframework conf.lua font.ttf main.lua
|
||||||
cd ../../../..
|
cd ../../../..
|
||||||
cp -r document media parts Zframework conf.lua font.ttf main.lua squashfs-root/usr/share/Techmino
|
cp -r document media parts Zframework conf.lua font.ttf main.lua version.lua squashfs-root/usr/share/Techmino
|
||||||
./appimagetool-x86_64.AppImage squashfs-root Techmino.AppImage
|
./appimagetool-x86_64.AppImage squashfs-root Techmino.AppImage
|
||||||
- name: Upload
|
- name: Upload
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v2
|
||||||
@@ -81,13 +93,18 @@ jobs:
|
|||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
- name: Install lua
|
||||||
|
run: |
|
||||||
|
sudo apt-get update -y
|
||||||
|
sudo apt-get upgrade -y
|
||||||
|
sudo apt-get install lua5.3 -y
|
||||||
- name: Get CommitID
|
- name: Get CommitID
|
||||||
run: |
|
run: |
|
||||||
CommitID=$(git rev-parse --short "${{ GITHUB.SHA }}")
|
CommitID=$(git rev-parse --short "${{ GITHUB.SHA }}")
|
||||||
echo "CommitID=${CommitID}" >> $GITHUB_ENV
|
echo "CommitID=${CommitID}" >> $GITHUB_ENV
|
||||||
- name: Get Version
|
- name: Get Version
|
||||||
run: |
|
run: |
|
||||||
Version=$(python3 .github/workflows/getVersion.py)
|
Version=$(lua ./.github/workflows/getVersion.lua -string)
|
||||||
echo "Version=${Version}" >> $GITHUB_ENV
|
echo "Version=${Version}" >> $GITHUB_ENV
|
||||||
- name: Update Conf Version
|
- name: Update Conf Version
|
||||||
run: |
|
run: |
|
||||||
@@ -100,8 +117,8 @@ jobs:
|
|||||||
java -jar apktool_2.5.0.jar d -s -o apk Techmino.apk
|
java -jar apktool_2.5.0.jar d -s -o apk Techmino.apk
|
||||||
7z x -o. apk/assets/game.love libAndroid
|
7z x -o. apk/assets/game.love libAndroid
|
||||||
rm apk/assets/game.love Techmino.apk
|
rm apk/assets/game.love Techmino.apk
|
||||||
7z a -tzip apk/assets/game.love document libAndroid media parts Zframework conf.lua font.ttf main.lua
|
7z a -tzip apk/assets/game.love document libAndroid media parts Zframework conf.lua font.ttf main.lua version.lua
|
||||||
python3 .github/workflows/updateAndroidVersion.py
|
python3 .github/workflows/updateAndroidVersion.py -C $(lua ./.github/workflows/getVersion.lua -code) -N $(lua ./.github/workflows/getVersion.lua -string)
|
||||||
java -jar apktool_2.5.0.jar b -o Techmino.apk apk
|
java -jar apktool_2.5.0.jar b -o Techmino.apk apk
|
||||||
- uses: 26F-Studio/sign-android-release@master
|
- uses: 26F-Studio/sign-android-release@master
|
||||||
name: Sign APK
|
name: Sign APK
|
||||||
@@ -124,27 +141,34 @@ jobs:
|
|||||||
runs-on: macos-10.15
|
runs-on: macos-10.15
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
- name: Install lua
|
||||||
|
run: |
|
||||||
|
curl -OL http://www.lua.org/ftp/lua-5.4.3.tar.gz
|
||||||
|
tar zxf lua-5.4.3.tar.gz
|
||||||
|
cd lua-5.4.3
|
||||||
|
make macosx
|
||||||
|
sudo make install
|
||||||
- name: Get CommitID
|
- name: Get CommitID
|
||||||
run: |
|
run: |
|
||||||
CommitID=$(git rev-parse --short "${{ GITHUB.SHA }}")
|
CommitID=$(git rev-parse --short "${{ GITHUB.SHA }}")
|
||||||
echo "CommitID=${CommitID}" >> $GITHUB_ENV
|
echo "CommitID=${CommitID}" >> $GITHUB_ENV
|
||||||
- name: Get Version
|
- name: Get Version
|
||||||
run: |
|
run: |
|
||||||
Version=$(python3 .github/workflows/getVersion.py)
|
Version=$(lua ./.github/workflows/getVersion.lua -string)
|
||||||
echo "Version=${Version}" >> $GITHUB_ENV
|
echo "Version=${Version}" >> $GITHUB_ENV
|
||||||
- name: Update Conf Version
|
- name: Update Conf Version
|
||||||
run: |
|
run: |
|
||||||
python3 .github/workflows/updateConfVersion.py -H ${{ env.CommitID }}
|
python3 .github/workflows/updateConfVersion.py -H ${{ env.CommitID }}
|
||||||
- name: Pack love
|
- name: Pack love
|
||||||
run: |
|
run: |
|
||||||
zip -r Techmino.love document media parts Zframework conf.lua font.ttf main.lua
|
zip -r Techmino.love document media parts Zframework conf.lua font.ttf main.lua version.lua
|
||||||
- name: Download template
|
- name: Download template
|
||||||
run: |
|
run: |
|
||||||
curl -OL https://github.com/26F-Studio/Techmino/releases/download/v0.15.1/Techmino.app.zip
|
curl -OL https://github.com/26F-Studio/Techmino/releases/download/v0.15.1/Techmino.app.zip
|
||||||
unzip Techmino.app.zip
|
unzip Techmino.app.zip
|
||||||
- name: Modify template
|
- name: Modify template
|
||||||
run: |
|
run: |
|
||||||
python3 .github/workflows/updateOSXVersion.py
|
python3 .github/workflows/updateOSXVersion.py -N $(lua ./.github/workflows/getVersion.lua -string)
|
||||||
mv Techmino.love Techmino.app/Contents/Resources
|
mv Techmino.love Techmino.app/Contents/Resources
|
||||||
- name: Codesign executable
|
- name: Codesign executable
|
||||||
# In secrets:
|
# In secrets:
|
||||||
|
|||||||
12
.github/workflows/getVersion.lua
vendored
Normal file
12
.github/workflows/getVersion.lua
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
if arg[1]=="-code"then
|
||||||
|
print (require"version".apkCode)
|
||||||
|
elseif arg[1]=="-string"then
|
||||||
|
print ((require"version".string:gsub("@DEV","")))
|
||||||
|
elseif arg[1]=="-updateNote"then
|
||||||
|
local note=require"parts.updateLog"
|
||||||
|
local p1=note:find("\n%d")
|
||||||
|
local p2=note:find("\n%d",p1+1)
|
||||||
|
note=note:sub(p1,p2-2)
|
||||||
|
note=note:gsub("\t","")
|
||||||
|
print (note)
|
||||||
|
end
|
||||||
11
.github/workflows/getVersion.py
vendored
11
.github/workflows/getVersion.py
vendored
@@ -1,11 +0,0 @@
|
|||||||
import re
|
|
||||||
def getVersion():
|
|
||||||
with open("conf.lua", "r", encoding="utf-8") as file:
|
|
||||||
data = file.read()
|
|
||||||
versionCode = re.search("build=(\\d+)", data).group(1)
|
|
||||||
versionName = re.search('(?<=string=").*(?=@)', data).group()
|
|
||||||
return versionCode, versionName
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
versionCode, versionName = getVersion()
|
|
||||||
print (versionName)
|
|
||||||
24
.github/workflows/updateAndroidVersion.py
vendored
24
.github/workflows/updateAndroidVersion.py
vendored
@@ -1,12 +1,14 @@
|
|||||||
import re
|
import re, argparse
|
||||||
import getVersion
|
|
||||||
|
|
||||||
versionCode, versionName = getVersion.getVersion()
|
if __name__ == '__main__':
|
||||||
|
parser = argparse.ArgumentParser(description="用于CI更新Android版本号")
|
||||||
with open("apk/apktool.yml", "r+") as file:
|
parser.add_argument("-C", "--Code", type=str, help = "versionCode")
|
||||||
data = file.read()
|
parser.add_argument("-N", "--Name", type=str, help = "versionName")
|
||||||
data = re.sub("versionCode:.+", f"versionCode: '{versionCode}'", data)
|
args = parser.parse_args()
|
||||||
data = re.sub("versionName:.+", f"versionName: {versionName}", data)
|
with open("apk/apktool.yml", "r+") as file:
|
||||||
file.seek(0)
|
data = file.read()
|
||||||
file.truncate()
|
data = re.sub("versionCode:.+", f"versionCode: '{args.Code}'", data)
|
||||||
file.write(data)
|
data = re.sub("versionName:.+", f"versionName: '{args.Name}'", data)
|
||||||
|
file.seek(0)
|
||||||
|
file.truncate()
|
||||||
|
file.write(data)
|
||||||
13
.github/workflows/updateConfVersion.py
vendored
13
.github/workflows/updateConfVersion.py
vendored
@@ -1,14 +1,23 @@
|
|||||||
import argparse
|
import argparse
|
||||||
|
|
||||||
|
def updateConf():
|
||||||
|
with open("conf.lua", "r+", encoding="utf-8") as file:
|
||||||
|
data = file.read()
|
||||||
|
data = data.replace("t.identity='Techmino'--Saving folder", "t.identity='Techmino_Snapshot'--Saving folder")
|
||||||
|
file.seek(0)
|
||||||
|
file.truncate()
|
||||||
|
file.flush()
|
||||||
|
file.write(data)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
parser = argparse.ArgumentParser(description="用于更新conf.lua")
|
parser = argparse.ArgumentParser(description="用于更新conf.lua")
|
||||||
parser.add_argument("-H", "--Hash", type=str, default = False, help = "Github提交Hash")
|
parser.add_argument("-H", "--Hash", type=str, default = False, help = "Github提交Hash")
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
with open("conf.lua", "r+", encoding="utf-8") as file:
|
with open("version.lua", "r+", encoding="utf-8") as file:
|
||||||
data = file.read()
|
data = file.read()
|
||||||
if args.Hash != False:
|
if args.Hash != False:
|
||||||
data = data.replace('@DEV', f'@{args.Hash[0:4]}')
|
data = data.replace('@DEV', f'@{args.Hash[0:4]}')
|
||||||
data = data.replace("t.identity='Techmino'--Saving folder", "t.identity='Techmino_Snapshot'--Saving folder")
|
updateConf()
|
||||||
else:
|
else:
|
||||||
data = data.replace('@DEV', '')
|
data = data.replace('@DEV', '')
|
||||||
file.seek(0)
|
file.seek(0)
|
||||||
|
|||||||
15
.github/workflows/updateOSXVersion.py
vendored
15
.github/workflows/updateOSXVersion.py
vendored
@@ -1,5 +1,5 @@
|
|||||||
import datetime
|
import argparse, datetime
|
||||||
import getVersion
|
|
||||||
info = r"""<?xml version="1.0" encoding="UTF-8"?>
|
info = r"""<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
<plist version="1.0">
|
<plist version="1.0">
|
||||||
@@ -58,8 +58,9 @@ info = r"""<?xml version="1.0" encoding="UTF-8"?>
|
|||||||
</plist>
|
</plist>
|
||||||
"""
|
"""
|
||||||
|
|
||||||
versionCode, versionName = getVersion.getVersion()
|
if __name__ == '__main__':
|
||||||
|
parser = argparse.ArgumentParser(description="用于CI更新macOS版本号")
|
||||||
print("Updating to", versionName)
|
parser.add_argument("-N", "--Name", type=str, help = "versionName")
|
||||||
with open("Techmino.app/Contents/info.plist", "w") as file:
|
args = parser.parse_args()
|
||||||
file.write(info % (versionName, datetime.datetime.today().year))
|
with open("Techmino.app/Contents/info.plist", "w") as file:
|
||||||
|
file.write(info % (args.Name, datetime.datetime.today().year))
|
||||||
Reference in New Issue
Block a user