modified: .github/workflows/mikrotik_patch.yml
This commit is contained in:
parent
93620101af
commit
146f99a7b6
31
.github/workflows/mikrotik_patch.yml
vendored
31
.github/workflows/mikrotik_patch.yml
vendored
@ -143,6 +143,7 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
sudo wget -nv -O mikrotik.iso https://download.mikrotik.com/routeros/$LATEST_VERSION/mikrotik-$LATEST_VERSION$ARCH.iso
|
sudo wget -nv -O mikrotik.iso https://download.mikrotik.com/routeros/$LATEST_VERSION/mikrotik-$LATEST_VERSION$ARCH.iso
|
||||||
|
|
||||||
|
|
||||||
- name: Patch mikrotik-${{ env.LATEST_VERSION }}${{ env.ARCH }}.iso
|
- name: Patch mikrotik-${{ env.LATEST_VERSION }}${{ env.ARCH }}.iso
|
||||||
run: |
|
run: |
|
||||||
sudo apt-get install -y mkisofs > /dev/null
|
sudo apt-get install -y mkisofs > /dev/null
|
||||||
@ -192,7 +193,6 @@ jobs:
|
|||||||
sudo cp ./efiboot/EFI/BOOT/BOOTAA64.EFI ./BOOTAA64.EFI
|
sudo cp ./efiboot/EFI/BOOT/BOOTAA64.EFI ./BOOTAA64.EFI
|
||||||
sudo umount ./efiboot
|
sudo umount ./efiboot
|
||||||
sudo rm -rf ./efiboot
|
sudo rm -rf ./efiboot
|
||||||
|
|
||||||
sudo mkisofs -o mikrotik-$LATEST_VERSION$ARCH.iso \
|
sudo mkisofs -o mikrotik-$LATEST_VERSION$ARCH.iso \
|
||||||
-V "MikroTik $LATEST_VERSION ${{ matrix.arch }}" \
|
-V "MikroTik $LATEST_VERSION ${{ matrix.arch }}" \
|
||||||
-sysid "" -preparer "MiKroTiK" \
|
-sysid "" -preparer "MiKroTiK" \
|
||||||
@ -276,6 +276,20 @@ jobs:
|
|||||||
sudo zip install-image-$LATEST_VERSION.zip ./install-image-$LATEST_VERSION.img
|
sudo zip install-image-$LATEST_VERSION.zip ./install-image-$LATEST_VERSION.img
|
||||||
sudo rm ./install-image-$LATEST_VERSION.img
|
sudo rm ./install-image-$LATEST_VERSION.img
|
||||||
|
|
||||||
|
- name: Cache chr-${{ env.LATEST_VERSION }}${{ env.ARCH }}.img.zip
|
||||||
|
if: matrix.arch == 'arm64'
|
||||||
|
id: cache-chr-img
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
chr.img
|
||||||
|
key: chr-${{ env.LATEST_VERSION }}-${{ matrix.arch }}.img
|
||||||
|
|
||||||
|
- name: Get mikrotik-${{ env.LATEST_VERSION }}${{ env.ARCH }}.iso
|
||||||
|
if: steps.cache-mikrotik.outputs.cache-hit != 'true' && matrix.arch == 'arm64'
|
||||||
|
run: |
|
||||||
|
sudo wget -nv -O chr.img https://download.mikrotik.com/routeros/$LATEST_VERSION/chr-$LATEST_VERSION$ARCH.img.zip
|
||||||
|
|
||||||
|
|
||||||
- name: Create chr-${{ env.LATEST_VERSION }}${{ env.ARCH }}.img
|
- name: Create chr-${{ env.LATEST_VERSION }}${{ env.ARCH }}.img
|
||||||
run: |
|
run: |
|
||||||
@ -295,25 +309,32 @@ jobs:
|
|||||||
chr-$LATEST_VERSION$ARCH.img
|
chr-$LATEST_VERSION$ARCH.img
|
||||||
dd if=mbr.bin of=chr-$LATEST_VERSION$ARCH.img bs=1 count=446 conv=notrunc
|
dd if=mbr.bin of=chr-$LATEST_VERSION$ARCH.img bs=1 count=446 conv=notrunc
|
||||||
dd if=pt.bin of=chr-$LATEST_VERSION$ARCH.img bs=1 count=66 seek=446 conv=notrunc
|
dd if=pt.bin of=chr-$LATEST_VERSION$ARCH.img bs=1 count=66 seek=446 conv=notrunc
|
||||||
|
|
||||||
sudo qemu-nbd -c /dev/nbd0 -f raw chr-$LATEST_VERSION$ARCH.img
|
sudo qemu-nbd -c /dev/nbd0 -f raw chr-$LATEST_VERSION$ARCH.img
|
||||||
sudo mkfs.vfat -n "Boot" /dev/nbd0p1
|
sudo mkfs.vfat -n "Boot" /dev/nbd0p1
|
||||||
sudo mkfs.ext4 -F -L "RouterOS" -m 0 /dev/nbd0p2
|
sudo mkfs.ext4 -F -L "RouterOS" -m 0 /dev/nbd0p2
|
||||||
sudo mkdir -p ./img/{boot,routeros}
|
sudo mkdir -p ./img/{boot,routeros}
|
||||||
sudo mount /dev/nbd0p1 ./img/boot/
|
sudo mount /dev/nbd0p1 ./img/boot/
|
||||||
sudo mkdir -p ./img/boot/{BOOT,EFI/BOOT}
|
|
||||||
if [ "${{ matrix.arch }}" == "x86_64" ]; then
|
if [ "${{ matrix.arch }}" == "x86_64" ]; then
|
||||||
|
sudo mkdir -p ./img/boot/{BOOT,EFI/BOOT}
|
||||||
sudo cp BOOTX64.EFI ./img/boot/EFI/BOOT/BOOTX64.EFI
|
sudo cp BOOTX64.EFI ./img/boot/EFI/BOOT/BOOTX64.EFI
|
||||||
sudo ./extlinux --install -H 64 -S 32 ./img/boot/BOOT
|
sudo ./extlinux --install -H 64 -S 32 ./img/boot/BOOT
|
||||||
echo -e "default system\nlabel system\n\tkernel /EFI/BOOT/BOOTX64.EFI\n\tappend load_ramdisk=1 root=/dev/ram0 quiet" > syslinux.cfg
|
echo -e "default system\nlabel system\n\tkernel /EFI/BOOT/BOOTX64.EFI\n\tappend load_ramdisk=1 root=/dev/ram0 quiet" > syslinux.cfg
|
||||||
sudo cp syslinux.cfg ./img/boot/BOOT/
|
sudo cp syslinux.cfg ./img/boot/BOOT/
|
||||||
sudo rm syslinux.cfg
|
sudo rm syslinux.cfg
|
||||||
elif [ "${{ matrix.arch }}" == "arm64" ]; then
|
elif [ "${{ matrix.arch }}" == "arm64" ]; then
|
||||||
sudo cp BOOTAA64.EFI ./img/boot/EFI/BOOT/BOOTAA64.EFI
|
sudo mkdir -p ./img/boot/EFI/BOOT
|
||||||
|
sudo qemu-nbd -c /dev/nbd1 -f raw chr.img
|
||||||
|
sudo mkdir -p ./chr/boot
|
||||||
|
sudo mount /dev/nbd1p1 ./chr/boot/
|
||||||
|
sudo -E python3 patch.py kernel ./chr/boot/EFI/BOOT/BOOTAA64.EFI
|
||||||
|
sudo cp ./chr/boot/EFI/BOOT/BOOTAA64.EFI ./img/boot/EFI/BOOT/BOOTAA64.EFI
|
||||||
|
sudo umount /dev/nbd1p1
|
||||||
|
sudo rm -rf ./chr
|
||||||
|
sudo qemu-nbd -d /dev/nbd1
|
||||||
fi
|
fi
|
||||||
sudo umount /dev/nbd0p1
|
sudo umount /dev/nbd0p1
|
||||||
sudo mount /dev/nbd0p2 ./img/routeros/
|
sudo mount /dev/nbd0p2 ./img/routeros/
|
||||||
sudo mkdir -p ./img/routeros/{var/pdb/{system,option},boot}
|
sudo mkdir -p ./img/routeros/{var/pdb/{system,option},boot,rw}
|
||||||
sudo cp ./all_packages/option-$LATEST_VERSION$ARCH.npk ./img/routeros/var/pdb/option/image
|
sudo cp ./all_packages/option-$LATEST_VERSION$ARCH.npk ./img/routeros/var/pdb/option/image
|
||||||
sudo cp ./all_packages/routeros-$LATEST_VERSION$ARCH.npk ./img/routeros/var/pdb/system/image
|
sudo cp ./all_packages/routeros-$LATEST_VERSION$ARCH.npk ./img/routeros/var/pdb/system/image
|
||||||
sudo umount /dev/nbd0p2
|
sudo umount /dev/nbd0p2
|
||||||
|
Loading…
x
Reference in New Issue
Block a user