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: |
|
||||
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
|
||||
run: |
|
||||
sudo apt-get install -y mkisofs > /dev/null
|
||||
@ -192,7 +193,6 @@ jobs:
|
||||
sudo cp ./efiboot/EFI/BOOT/BOOTAA64.EFI ./BOOTAA64.EFI
|
||||
sudo umount ./efiboot
|
||||
sudo rm -rf ./efiboot
|
||||
|
||||
sudo mkisofs -o mikrotik-$LATEST_VERSION$ARCH.iso \
|
||||
-V "MikroTik $LATEST_VERSION ${{ matrix.arch }}" \
|
||||
-sysid "" -preparer "MiKroTiK" \
|
||||
@ -276,6 +276,20 @@ jobs:
|
||||
sudo zip install-image-$LATEST_VERSION.zip ./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
|
||||
run: |
|
||||
@ -295,25 +309,32 @@ jobs:
|
||||
chr-$LATEST_VERSION$ARCH.img
|
||||
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
|
||||
|
||||
sudo qemu-nbd -c /dev/nbd0 -f raw chr-$LATEST_VERSION$ARCH.img
|
||||
sudo mkfs.vfat -n "Boot" /dev/nbd0p1
|
||||
sudo mkfs.ext4 -F -L "RouterOS" -m 0 /dev/nbd0p2
|
||||
sudo mkdir -p ./img/{boot,routeros}
|
||||
sudo mount /dev/nbd0p1 ./img/boot/
|
||||
sudo mkdir -p ./img/boot/{BOOT,EFI/BOOT}
|
||||
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 ./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
|
||||
sudo cp syslinux.cfg ./img/boot/BOOT/
|
||||
sudo rm syslinux.cfg
|
||||
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
|
||||
sudo umount /dev/nbd0p1
|
||||
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/routeros-$LATEST_VERSION$ARCH.npk ./img/routeros/var/pdb/system/image
|
||||
sudo umount /dev/nbd0p2
|
||||
|
Loading…
x
Reference in New Issue
Block a user