简体中文
|
繁體中文
|
English
|
首页
软件分享
镜像难题,Docker用户必看
迷你主机厂商推荐
特别版Chrome浏览器
Search
1
OpenWrt可让宽带速度瞬间提升?broadbandacc完全揭秘
2,708 阅读
2
无缝转播IPTV,OpenWRT新手也能get udpxy
2,650 阅读
3
OpenWRT必看!安装iStore应用商店,扩展更丰富应用
2,636 阅读
4
OpenWrt轻松多拨,提升网速的必备神器
2,380 阅读
5
零泄漏,零污染,MosDNS让你的网络飞起来
2,207 阅读
简体中文
|
繁體中文
|
English
默认分类
网络赚米
OpenWrt
应用程序
AI
科技
VPS
数码
电脑
云服务
黄鱼
润学
PDD
登录
Search
标签搜索
性价比
OpenWrt
开户
eSIM
开源工具
VPS
香港
Mini PC
安装教程
docker
Docker 部署
迷你主机
银行
银行卡
美国
Docker部署
本地部署
跨平台
CN2 GIA
散热
Xiaopao
累计撰写
847
篇文章
累计收到
2
条评论
首页
栏目
默认分类
网络赚米
OpenWrt
应用程序
AI
科技
VPS
数码
电脑
云服务
黄鱼
润学
PDD
页面
软件分享
镜像难题,Docker用户必看
迷你主机厂商推荐
特别版Chrome浏览器
搜索:
搜索到
1
篇与
的结果
2024-07-21
GitHub Action帮你自动构建个人OpenWrt IPK包
嘿,小伙伴们👋,今天带来的是一篇非常给力的教程!这次我们要揭秘如何使用GitHub Action构建OpenWrt IPK包。小白也能轻松搞定,快来看看吧!准备工作:在Github上创建一个账号,并新建一个项目,然后打开Actions面板,创建一条新的工作流new workflow,命名为build-openwrt-ipk.yml。下面开始对里面的内容进行介绍。一、基础配置在GitHub Action中,先来看看我们的基础配置部分,从基本的name和on事件开始配置:name: Build OpenWrt IPK on: workflow_dispatch: inputs: architecture: description: 'Target architecture' required: true default: 'x86-64' package: description: 'Package to build' required: true default: 'luci-app-alwaysonline'这里,我们设置了一个手动触发的workflow,并且允许用户选择目标架构和要构建的包。二、构建工作流程接下来是构建的核心部分。我们在jobs下定义了一个名为build的工作流程:jobs: build: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v2 - name: Set up Docker uses: docker/setup-buildx-action@v1第一步是检查出代码库,第二步是设置Docker环境。Docker是我们构建OpenWrt IPK包的关键工具。三、构建IPK包下面是构建IPK包的具体步骤: - name: Build IPK run: | docker pull openwrt/sdk:${{ github.event.inputs.architecture }} docker run --name openwrtsdk -e FORCE_UNSAFE_CONFIGURE=1 -e TERM=xterm openwrt/sdk:${{ github.event.inputs.architecture }} /bin/bash -c " echo 'src-git kiddin9 https://github.com/kiddin9/openwrt-packages' >>feeds.conf.default && ./scripts/feeds update -a && ./scripts/feeds install ${{ github.event.inputs.package }} && make defconfig && make package/${{ github.event.inputs.package }}/{clean,compile} -j$(nproc) && find /builder/bin/packages -name '*${{ github.event.inputs.package }}*.ipk' " docker cp openwrtsdk:/builder/bin/packages ./packages这一部分代码解释起来很简单:我们先从Docker拉取OpenWrt的SDK镜像,然后运行一些脚本来更新feeds,安装指定的包,最后编译生成IPK包并复制到本地。备注:这里引用的包源为: github.com/kiddin9/openwrt-packages ,可以到此项目下查询有哪些可用的包哦,如有更好的包源也可用自行增加或替换哦。四、上传IPK包和生成Release构建完IPK包后,我们需要上传这些包作为artifact: - name: Upload IPK as artifact uses: actions/upload-artifact@v2 with: name: ipk-files path: packages/**/*.ipk然后,我们生成一个release tag,并创建一个新的GitHub Release: - name: Generate release tag id: tag run: | echo "::set-output name=release_tag::$(date +"%Y.%m.%d_%H-%M")_${{ github.event.inputs.architecture }}_${{ github.event.inputs.package }}" - name: Create Release and Upload Asset uses: softprops/action-gh-release@v1 with: files: ./packages/**/*${{ github.event.inputs.package }}*.ipk tag_name: ${{ steps.tag.outputs.release_tag }} name: Release ${{ steps.tag.outputs.release_tag }} draft: false prerelease: false env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}备注:如遇到GITHUB_TOKEN权限问题,请打开github项目Settings->Actions->General->Workflow permissions,圈选 Read and write permissions后Save。将所有内容合并配置到yml文件后,我们就可以run workflow,根据你的实际情况填入OpenWrt设备的架构和luci-app-xxx的包名,就可以开始运行了。完成后,我们的IPK包就被上传到了GitHub Release,方便进行下载和使用啦!看吧,是不是很简单?整个过程只需要配置几个步骤,就可以自动化地构建和发布OpenWrt IPK包。绝绝子,实在是太方便了!希望大家都能学会这个技能,赶快去试试吧!👨💻👩💻更多关注:www.9418666.xyz
2024年07月21日
1,564 阅读
0 评论
0 点赞