GithubHelp home page GithubHelp logo

ywdonga / app-archive-script Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 9.16 MB

打包脚本

HTML 11.32% Dockerfile 1.35% Swift 19.75% Vue 17.57% JavaScript 3.21% SCSS 8.32% Ruby 2.39% Lua 0.12% TypeScript 0.59% Makefile 1.30% Shell 34.08%

app-archive-script's Introduction

项目说明

项目结构

  • app-center-index.html app-center首页,部署地址:https://test-pm3.kfang.com
  • build_archive_83.sh 10.210.12.83机器用的打包脚本(2022年不再使用, 缺点:ipa包占用硬盘内存、不具备ipa上传功能、与运维沟通成本高, 学习地址:https://docs.qq.com/doc/DSWtid3RJU09pUHJI?groupUin=Nna4umWbPJIRvUEI0cmzGA%3D%3D&tdsourcetag=s_macqq_aiomsg&jumpuin=611161512)
  • build_archive.sh 现用打包脚本 (2022年不再使用,优化了上个版本的缺点:ipa包占用硬盘内存、与运维沟通成本高)
  • build_with_fastlane.sh 新增基于fastlane打包脚本 (此版本优化上述版本的缺点:ipa包占用硬盘内存、不具备ipa上传功能、与运维沟通成本高; 增加上传appstore流程, 增加飞书通知,增加packjson的内容哈希值的缓存策略。)
  • gen-package-json.swift app-center生成数据的代码
  • fangkebao-update-json.swift 房客宝生成升级文件的代码
  • app-release-pip app store审核流程状态监视程序项目
  • fastlane-template fastlane配置模版
  • Makefile 一键快速安装指令集 (方便使用者一键部署打包环境)

注意

  • 10.210.10.184 原生打包机器地址
  • jenkins需要免密登录到原生打包的机器,配置jenkens的id_rsa.pub公钥复制到原生打包机器的的authorized_keys文件上(cat id_rsa.pub >> /.ssh/authorized_keys ), 然后jenkins的机子拿自己的私钥去ssh登录 (/.ssh/authorized_keys是SSH协议中用来验证用户身份的文件,存储了公钥认证用的公钥信息。当用户使用SSH登录远程服务器时,会自动生成一对公私钥并将公钥存放在本地的~/.ssh/id_rsa.pub中。为了能够无密码登录远程服务器,可以将本地的公钥内容追加到~/.ssh/authorized_keys文件中。远程服务器使用本地用户的公钥,加密一个随机数并将其发送回来。如果本地用户能够使用对应的私钥解密该随机数,则说明该用户拥有对应的私钥和公钥组合,能够被认证成功,并允许登录远程服务器。学习地址:https://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html)
  • jenkins配置任务的时候,注意访问Git仓库的git账号需要切换
  • jenkins配置ssh执行命令,注意切换访问登录的用户名称、执行build_with_fastlane.sh的绝对路径的用户名称
  • 被远程登录的机子,需要安装fastlane的环境
  • web文件目录被拷贝,需要修改nginx.config中root路径的用户名称

子项目说明

app-release-pipe

固定占用端口 8080

安装docker客户端(官网也支持下载 https://docs.docker.com/desktop/install/mac-install/) brew install --cask --appdir=Applications docker

构建docker image (需要cd到app-archive-script/app-release-pipe目录下) cd /Users/xxx/app-archive-script/app-release-pipe/
docker build . -t app-release-pipe:lastest

启动docker容器服务(-d防止进程意外终止、-p 8080:8080 指定机器的端口和docker的端口进行映射) docker run -d -p 8080:8080 app-release-pipe:lastest

这里你会疑问app-release-pipe目录下的文件是怎么配置出来的?这里采用了Vapor框架,自动生成该目录下的文件 brew install vapor vapor new app-release-pipe

打包机启用了域名test3.kfang.com, 端口数据转发还依赖nginx服务,需要启动nginx

fastlane-template

见fastlane-template/README.md

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.