cocos开发微信小游戏ci机器人实践

news2025/1/8 5:51:45

1.cocos使用命令行发布微信小游戏项目

1.1 先编辑微信小游戏构建发布配置,然后导出配置,会生成一个buildConfig_wechatgame.json的配置文件

cocos

1.2 使用命令行构建微信小游戏项目

D:\CocosDashboard\resources.editors\Creator\3.4.2\CocosCreator.exe --project D:\cocos_workspace\wx_mini_game\develop --build configPath=D:\cocos_workspace\wx_mini_game\develop\ci\buildConfig_wechatgame_dev.json

D:\CocosDashboard\resources.editors\Creator\3.4.2\CocosCreator.exe —— cocos工具路径
D:\cocos_workspace\wx_mini_game\develop —— cocos项目路径
D:\cocos_workspace\wx_mini_game\develop\ci\buildConfig_wechatgame_dev.json —— 构建配置文件路径

D:\CocosDashboard\resources\.editors\Creator\3.4.2\CocosCreator.exe  --project D:\cocos_workspace\wx_mini_game\develop --build configPath=D:\cocos_workspace\wx_mini_game\develop\ci\buildConfig_wechatgame_dev.json

参考文档:creator3d | 命令行发布项目

2.miniprogram-ci 小程序/小游戏项目代码上传

2.1 密钥及 IP 白名单配置(需要管理员扫码才能操作)

weixin

2.2 安装 miniprogram-ci npm包依赖

npm install miniprogram-ci --save

npm install miniprogram-ci --save

2.3 编写 upload.js 上传脚本

const ci = require('miniprogram-ci');
 
const project = new ci.Project({
    appid: 'xxxx',
    type: 'miniGame',
    projectPath: '/home/shanmai/wx_minigame/mj_wx_minigame/develop/package/wechatgame',
    privateKeyPath: '/home/shanmai/wx_minigame/mj_wx_minigame/develop/package/private.xxxx.key',
    ignores: ['node_modules/**/*'],
});
 
const uploadResult = ci.upload({
    project,
    version: 'test',
    desc: 'xxxx测试版本',
    setting: {
      es6: true,
    },
    onProgressUpdate: console.log,
    robot:1
});

console.log(uploadResult);

参考文档:概述 | 微信开放文档

3.ssh免密登录

SSH 免密码登录 Linux 一般不能使用管理员root账号免密登录
参考文档:Windows10 CMD 下 SSH 免密码登录 Linux
使用ssh连接windows(构建机器是用的window)
参考文档:如何使用ssh连接windows?
window使用ssh免密登录
参考文档:window的ssh免密登录

4.免密连接ssh后执行命令

&:前后命令不管是否运行成功都会运行下去
&&:前面的命令运行成功才运行后面的命令

参考文档:cmd同时执行多条命令

5.完整构建脚本实例

cmd窗口下执行 build_dev.bat 构建
bat

@echo off
chcp 65001
echo ============ xxxx小游戏测试版本自动构建脚本 ============
echo ============ connect build start ============
ssh Administrator@172.17.xxx.37 "echo ============ connect build success ============ && d: && cd D:\cocos_workspace\wx_mini_game\develop && D:\git\Git\bin\git reset --hard && D:\git\Git\bin\git pull && echo ============ build start ============ && D:\CocosDashboard\resources\.editors\Creator\3.4.2\CocosCreator.exe  --project D:\cocos_workspace\wx_mini_game\develop --build configPath=D:\cocos_workspace\wx_mini_game\develop\ci\buildConfig_wechatgame_dev.json & echo ============ build success ============ & echo ============ remote update start ============ & cd D:\cocos_workspace\wx_mini_game_remote\remote_develop && D:\git\Git\bin\git checkout develop && D:\git\Git\bin\git pull && rd /s/q test & md test && move D:\cocos_workspace\wx_mini_game\develop\build\wechatgame\remote test && D:\git\Git\bin\git add . && D:\git\Git\bin\git commit -m xxxx小游戏remote测试版本 && D:\git\Git\bin\git fetch && D:\git\Git\bin\git rebase && D:\git\Git\bin\git push & cd D:\cocos_workspace\mj_wx_minigame_package\develop && D:\git\Git\bin\git pull && rd /s/q D:\cocos_workspace\wx_mini_game\develop\build\wechatgame\remote & rd /s/q package & md package && move D:\cocos_workspace\wx_mini_game\develop\build\wechatgame package && copy D:\cocos_workspace\wx_mini_game\develop\ci\private.wx02c98bda18652bf0.key package && copy D:\cocos_workspace\wx_mini_game\develop\ci\upload_dev.js package && D:\git\Git\bin\git add . && D:\git\Git\bin\git commit -m xxxx小游戏package测试版本 && D:\git\Git\bin\git fetch && D:\git\Git\bin\git rebase && D:\git\Git\bin\git push && echo ============ remote update success ============"
echo ============ connect remote start ============
ssh shanmai@47.xxx.xx.17 "echo ============ connect remote success ============ && cd remote/ && git pull"
echo ============ connect update start ============
ssh shanmai@47.xxx.xx.132 "echo ============ connect update success ============ && echo ============ minigame update start  ============ && cd wx_minigame/mj_wx_minigame/develop && git pull && node ./package/upload_dev.js && echo ============ minigame update done ============"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/189735.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

硅烷试剂1873-77-4_Tris(trimethylsilyl)silane_三(三甲基硅基)硅烷

●中文名:三(三甲基硅基)硅烷,三(三甲硅基)硅烷●英文名:TRIS(TRIMETHYLSILYL)SILANE,Tris(trimethylsilyl)Silane,Tris(trimethylsilyl)silaneTris(trimethylsilyl)silane中含有硅烷基&#xf…

JavaScript 中清空数组的几种方法

目录 Array.prototype.splice() 将 length 设置为 0 分配新的空数组 length 0和 Array [] 之间的差异? JavaScript 中清空数组的几种方法多少人都想走出浪浪山 🧨🧨🧨 Array.prototype.splice() let course [HTML, CSS, Java…

第四章.神经网络—线性神经网络,Delta学习规则

第四章.神经网络 4.2 线性神经网络与Delta学习规则 线性神经网络在结构上与感知器非常相似,只是激活函数不同。在模型训练时把原来的sign函数改成purelin函数:y x 1.激活函数 2.线性神经网络示例 1).题目: 假设平面坐标系上有四个点,(3,3)…

基于python的二手房数据分析,思路+代码范例

本篇博客将基于 Python ,梳理二手房数据分析的整体过程。 文章目录思路整理数据分析步骤的示例代码基于 Python 的二手房分析 | 另一种代码思路整理 数据收集:从网站或其他数据源收集二手房数据,并将其存储在 CSV 或其他数据格式中。数据清洗…

Python连接Liunx中mysql数据库-多表查询【10个经典案例】

关于Python连接liunx中mysql数据库的方式在这一篇文章 Python连接Liunx中mysql数据库-保姆级教程 关于Python针对liunx中的mysql数据库进行增删改查操作的文章在这一篇可以看一下 Python连接Liunx中mysql数据库-增删改查 对于单表查询的学习可以看这一篇文章 Python对liunx中my…

帆软FineReport 实现省市区树形联动

在项目数据展示中,涉及到行政区划,省市区三级联动,运用帆软FineReport该如何实现,记录下来,方便备查。 第一步、树形数据准备 行政区划主要分为三级,即省市区,特殊的包含四个直辖市&#xff0…

【人机交互】COMP5517 HCI 课程笔记

人机交互Class 1: Overview of Human Computer Interaction人机交互的目标What does HCI involveClass 1 ContentImportance of HCISteps of HCISome HCI ProductsClass 1: Overview of Human Computer Interaction 人机交互的目标 Methods for grounding the design in real…

Windows 11 22H2 中文版、英文版 (x64、ARM64) 下载 (updated Jan 2023)

Windows 11, version 22H2,2023 年 1 月 更新,持续更新中… 请访问原文链接:https://sysin.org/blog/windows-11/,查看最新版。原创作品,转载请保留出处。 作者主页:www.sysin.org 最新发布 &#x1f449…

分布式session

目录 1.什么是session 2.session共享问题 2.1.session复制同步 2.2.存在客户端 2.3.一致性hash 2.4.统一存储 1.什么是session HTTP是无状态的,session是一种会话保持技术,目的就是以一种方式来记录http请求之间需要传递、交互的数据。 不是每次…

vite配置CDN和文件压缩

例子,vue3导入element-plus 打包大小 1.加载插件cdn-import yarn add vite-plugin-cdn-import -D 2.配置vite vite.config.js import { defineConfig } from "vite"; import vue from "vitejs/plugin-vue"; import { autoComplete, Plugin as importTo…

PPI数据集示例项目学习图神经网络

目录PPI数据集:算法原理:代码实现:训练过程PPI数据集: 参考:https://blog.csdn.net/weixin_43580130/article/details/116449062 PPI(生物化学结构) 网络是蛋白质相互作用(Protein-Protein Interaction,P…

若依配置教程(四)代码生成

文章目录一、在数据库中新建表(代码生成的数据表)二、打开若依系统,进入代码生成界面三、编辑字段和基本信息四、解压文件夹,放到相关目录一、在数据库中新建表(代码生成的数据表) 建议在表中必须加的字段…

通信原理笔记—脉冲编码调制(PCM)

目录 脉冲编码调制(PCM): PCM概念: A、μ律的PCM编码: A律对数压缩特性的十三折线法近似: A律正输入值编码表: A、μ率的PCM编码方法: A 率的PCM译码方法: 脉冲编码调制(PCM):…

VUE 中项目启动没有问题,代码中 script 标签有蓝色波浪线标注

项目场景: VUE 中项目启动没有问题,代码中 script 标签有蓝色波浪线标注: 并且有相关的 提示信息 Virtual script not found, may missing <script lang“ts“> / “allowJs“: true / jsconfig.json.volar 问题描述…

ESP32设备驱动-Si7021温度传感器驱动

Si7021温度传感器驱动 文章目录 Si7021温度传感器驱动1、Si7021介绍2、硬件准备3、软件准备4、驱动实现1、Si7021介绍 Si7021 I2C 湿度和温度传感器是一款集成了湿度和温度传感器元件、模数转换器、信号处理、校准数据和 I2C 接口的单片 CMOS IC。 Si7021 提供精确、低功耗、工…

Springboot美容院管理系统 java idea mysql

config:主要用来存储配置文件,以及其他不怎么动用的信息 controller:项目的主要控制文件 dao: 主要用来操作数据库 entity: 实体,用来放与数据库表里对应的实体类,表中的字段对应类中的属性值,并…

【10w字】超详细【百分百拿offer】的面试教程,集合5000多家软件测试公司面试题。

一、引言 1.1 文档目的 【百分百解决在面试中遇到的些问题】 1.2 背景 此文档历经1年的时间,基本概括了深圳与广州,上干家公司的面试问题并结合基本盖了,95%以上的面试问题,文章内容比较多耐心看完必能拿下心仪的offer。在这里…

webpack 配置时包与包版本不对应导致无法启动项目

经常在配置 webpack 时因不指定具体版本导致 npm 下载下来的依赖之间互相不对应。 (简述:webpack 配置时包与包的版本对应问题,报错了去 npm 找包,链接到 github 上查看 package.json 的 peerDependencies 依赖) 例如&…

VAE算法

参考博客: From Autoencoder to Beta-VAE | LilLog 链接:https://zhuanlan.zhihu.com/p/34998569 参考视频: https://www.youtube.com/watch?vYNUek8ioAJk&ab_channelHung-yiLee 为了使模型具有生成能力,VAE 要求每个 p(Z…

健身大神都戴什么耳机、健身大佬都在用的运动耳机推荐

很多朋友在户外健身的时候喜欢戴上耳机,在音乐的节奏中去运动,现在市面上的运动耳机选择也特别丰富,不乏出现一些明明不适合运动却偏打着运动耳机的名号在售卖,这也就导致许多消费者不慎踩坑,为了能让大家选择到一款专…