使用 GitHub Actions 云编译 OpenWrt

1 篇文章 0 订阅
1 篇文章 0 订阅

使用 GitHub Actions 云编译 OpenWrt

原文链接 https://p3terx.com/archives/build-openwrt-with-github-actions.html

项目地址 https://github.com/P3TERX/Actions-OpenWrt

自定义 feeds 配置文件

把 feeds.conf.default 文件放入仓库根目录即可,它会覆盖 Open­Wrt 源码目录下的相关文件。

#src-git helloworld https://github.com/fw876/helloworld

去掉注释符“#”解锁特殊package

src-git helloworld https://github.com/fw876/helloworld

自定义源码

默认引用的是 Lean 的源码,如果你有编译其它源码的需求可以进行替换。

编辑 work­flow 文件(.github/workflows/build-openwrt.yml),修改下面的相关环境变量字段。

REPO_URL: https://github.com/coolsnowwolf/lede
REPO_BRANCH: master

比如修改为 Open­Wrt 官方源码 19.07 分支

REPO_URL: https://github.com/openwrt/openwrt
REPO_BRANCH: openwrt-19.07

SSH 连接到 Actions

通过 tmate 连接到 GitHub Ac­tions 虚拟服务器环境,可直接进行 make menuconfig 操作生成编译配置,或者任意的客制化操作。也就是说,你不需要再自己搭建编译环境了。这可能改变之前所有使用 GitHub Ac­tions 的编译 Open­Wrt 方式。

点击查看
在Run Workflow时把SSH connection to Actions的值改为true(或者也可以不修改,而是通过 webhook 方式发送带有ssh触发关键词的请求。)
在触发工作流程后,在 Actions 日志页面等待执行到SSH connection to Actions步骤,会出现类似下面的信息:

To connect to this session copy-n-paste the following into a terminal or browser:

ssh Y26QeagDtsPXp2mT6me5cnMRd@nyc1.tmate.io

https://tmate.io/t/Y26QeagDtsPXp2mT6me5cnMRd
  • 复制 SSH 连接命令粘贴到终端内执行,或者复制链接在浏览器中打开使用网页终端。(网页终端可能会遇到黑屏的情况,按 Ctrl+C 即可)
  • cd openwrt && make menuconfig
  • 完成后按Ctrl+D组合键或执行exit命令退出,后续编译工作将自动进行。

TIPS: 固件目录下有个config.seed文件,如果你需要再次编译可以使用它。
你好! 这是你第一次

上传固件到 WeTransfer

WeTransfer 是荷兰的一款临时文件传输分享服务网盘,前面提到的奶牛快传实际上师从自它,二者的网站都非常相似。We­Trans­fer 使用的是 Ama­zon S3 存储并通过 Ama­zon Cloud­Front CDN 全球加速,它在中国大陆的下载体验完全不输奶牛快传,甚至某些情况下要更好。

点击查看
编辑 workflow 文件(.github/workflows/build-openwrt.yml),将环境变量UPLOAD_WERANSFER的值修改为true:

UPLOAD_WERANSFER: true

编译完成后你可以在相关的 workflow 页面或者Upload firmware to WeTransfer步骤的日志中找到下载链接。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值