we-chat-ci/script/index.js
2026-03-04 13:25:48 +08:00

70 lines
1.9 KiB
JavaScript

const fs = require('fs')
const path = require('path')
const ci = require('miniprogram-ci')
//
const projectConfigPath = process.env.INPUT_PROJECT_CONFIG_PATH
console.log('projectConfigPath:', projectConfigPath)
//
const uploadSettingPath = process.env.INPUT_UPLOAD_SETTING_PATH
console.log('uploadSettingPath:', uploadSettingPath)
//
const uploadVersion = process.env.INPUT_UPLOAD_VERSION
console.log('uploadVersion:', uploadVersion)
//
const uploadDescription = process.env.INPUT_UPLOAD_DESCRIPTION
console.log('uploadDescription:', uploadDescription)
//
const uploadRobot = Number(process.env.INPUT_UPLOAD_ROBOT)
console.log('uploadRobot:', uploadRobot)
//
const workspace = String(process.env.GITHUB_WORKSPACE)
console.log('workspace:', workspace)
//
const projectConfigJson = fs.readFileSync(
path.join(workspace, projectConfigPath),
'utf8'
)
console.log('projectConfigJson:', projectConfigJson)
const projectConfig = JSON.parse(projectConfigJson)
console.log('deployConfig:', projectConfig)
//
const uploadSettingJson = fs.readFileSync(
path.join(workspace, uploadSettingPath),
'utf8'
)
console.log('uploadSettingJson:', uploadSettingJson)
const uploadSetting = JSON.parse(uploadSettingJson)
console.log('uploadSetting:', uploadSetting)
//
if (!projectConfig.projectPath) {
console.log('projectPath is required')
return
}
projectConfig.projectPath = path.join(workspace, projectConfig.projectPath)
console.log('projectConfig.projectPath:', projectConfig.projectPath)
//
if (!projectConfig.privateKeyPath) {
console.log('privateKeyPath is required')
return
}
projectConfig.privateKeyPath = path.join(
workspace,
projectConfig.privateKeyPath
)
const project = new ci.Project(projectConfig)
ci.upload({
project,
version: uploadVersion,
desc: uploadDescription,
setting: uploadSetting,
robot: uploadRobot,
onProgressUpdate: console.log
})
.then((res) => {
console.log('upload res:', res)
})
.catch((err) => {
console.log('upload err:', err)
})