[整理]CI 持续集成 - 基于 Github Action
大家好,我是小鑫同学。一位从事过 Android 开发、混合开发,现在长期从事前端开发的编程爱好者,我觉得在编程之路上最重要的是知识的分享,所谓三人行必有我师。所以我开始在社区持续输出我所了解到、学习到、工作中遇到的各种编程知识,欢迎有想法、有同感的伙伴加我fe-xiaoxin微信交流~
参考一: 持续集成是什么? 参考二: 部署GitHub Pages 参考三: Github Actions
1. 基本概念说明
2. Workflow
范例一
对 Github 仓库中 XX 项目的 master 分支的代码进行打包并部署到阿里云服务器
范例二:
对 Github 仓库中 XX 项目的 master 分支的代码进行打包并部署到 github-pages
3. 简易流程图
扩展内容
扩展一、创建 SSH 公 &私钥
查看文件中的内容可以使用命令: cat xxx
进入当前用户的.ssh 目录,没有则创建后进入
进入.ssh 目录
cd ~/.ssh/
创建.ssh 目录
mkdir ~/.ssh
执行生成命令:
ssh-keygen -t rsa -C "建议邮箱地址"
可以通过
ls
命令查看当前目录找到新生成的公钥:id_rsa.pub
私钥:id_rsa
可以通过
cat .\id_rsa.pub
命令打印公钥信息或直接打开文件查看
扩展二、配置本地公钥信息到服务器
可实现免密登录服务器
手动操作
登录阿里云服务器 ssh root@xxx.xxx.xxx.xxx
进入.ssh 目录 cd .ssh/
执行命令 vi authorized_keys
粘贴公钥信息
按 ECS&输出:wq 保存退出
简化操作
执行命令:
ssh-copy-id root@xxx.xxx.xxx.xxx
扩展三、Github 配置 SSH and GPG keys
可实现通过 ssh 操作 Git
菜单位置: settings/SSH and GPG keys/New SSH key
添加命名并粘贴本地生成的公钥信息
通过
ssh -T git@github.com
验证得到结果如:Hi OSpoon! You've successfully authenticated, but GitHub does not provide shell access.
扩展四、Github 的项目中配置 Secrets
可充当登录服务器的私钥信息,IP,端口,用户名,密码,Token 等信息的变量配置
配置服务器生成的私钥信息到 Github
菜单位置: 项目/Settings/Secrets/New repository secret
建议命名为 PRIVATE_KEY,并粘贴秘钥保存
扩展五、Github 生成个人访问令牌
github-pages-deploy-action 扩展需要配置令牌到项目的 Secrets 被使用
菜单位置: Setting/Developer settings/Personal access tokens
Generate new token: 添加令牌名称并选择需要的权限
生成令牌并自行保存,遗忘令牌需要重新生成
版权声明: 本文为 InfoQ 作者【小鑫同学】的原创文章。
原文链接:【http://xie.infoq.cn/article/7482383bd780b6a11bfd806d7】。文章转载请联系作者。
评论