Replies: 2 comments 2 replies
-
armbian-onecloud/.github/workflows/ci.yml Lines 187 to 228 in 85702a7 |
Beta Was this translation helpful? Give feedback.
2 replies
-
- name: Install Dependents
run: |
sudo apt install img2simg
# 下载并赋予执行权限AmlImg工具
ver="v0.3.1"
curl -L -o ./AmlImg https://github.com/hzyitc/AmlImg/releases/download/$ver/AmlImg_${ver}_linux_amd64
chmod +x ./AmlImg
- name: Download and unpack the latest u-boot
run: |
echo "::group::Download"
# 下载最新的u-boot镜像
curl -L -o ./uboot.img https://github.com/${UBOOT_REPO}/releases/download/${UBOOT_TAG}/${UBOOT_BURNIMG}
echo "::endgroup::"
echo "::group::Unpack"
# 使用AmlImg工具解压缩u-boot镜像
./AmlImg unpack ./uboot.img burn/
echo "::endgroup::"
- name: Extract boot and rootfs partitions
run: |
diskimg=$(ls output/images/*.img)
loop=$(sudo losetup --find --show --partscan $diskimg)
# 提取boot和rootfs分区并转换为.simg格式
sudo img2simg ${loop}p1 burn/boot.simg
sudo img2simg ${loop}p2 burn/rootfs.simg
sudo losetup -d $loop
sudo chown $(id -u):$(id -g) -R burn/
- name: Generate burn image
run: |
# 计算boot和rootfs分区的SHA1校验和并生成烧录镜像
echo -n "sha1sum $(sha1sum burn/boot.simg | awk '{print $1}')" >burn/boot.VERIFY
echo -n "sha1sum $(sha1sum burn/rootfs.simg | awk '{print $1}')" >burn/rootfs.VERIFY
cat <<EOF >>burn/commands.txt
PARTITION:boot:sparse:boot.simg
VERIFY:boot:normal:boot.VERIFY
PARTITION:rootfs:sparse:rootfs.simg
VERIFY:rootfs:normal:rootfs.VERIFY
EOF
prefix=$(ls output/images/*.img | sed 's/\.img$//')
burnimg=${prefix}.burn.img
./AmlImg pack $burnimg burn/
```这段代码是一个CI/CD流程,用于在GitHub Actions中执行一些操作。具体来说,它包括安装依赖、下载和解压缩u-boot、提取boot和rootfs分区以及生成烧录镜像等步骤。
在第一部分中,它安装了`img2simg`工具,并使用`curl`命令下载了`AmlImg`工具,并赋予了执行权限。
在第二部分中,它使用`curl`命令下载了u-boot镜像,并使用`AmlImg`工具解压缩了该镜像。
在第三部分中,它提取了boot和rootfs分区,并将其转换为`.simg`格式,并进行了一些文件权限的调整。
最后一部分是生成烧录镜像,它计算了boot和rootfs分区的SHA1校验和,并将其写入了`.VERIFY`文件中,然后生成了最终的烧录镜像文件。
这段代码的作用是自动化执行这些操作,以便在CI/CD流程中使用。 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
用官方仓库直接编译出来文件名是不带brun的,不懂这个,请教一下各位大神。
Beta Was this translation helpful? Give feedback.
All reactions