Compare commits

...

11 Commits

Author SHA1 Message Date
elseif
18fd42ae68
Rename jobs for V7 in GitHub Actions workflow
Signed-off-by: elseif <elseif@live.cn>
2026-07-16 01:16:56 +08:00
elseif
2e1198189c
Fix duplicate routeros*.npk entry in patch workflow
Removed duplicate entry for routeros*.npk in file upload section.

Signed-off-by: elseif <elseif@live.cn>
2026-07-16 00:48:44 +08:00
elseif
b8f382bc34
Update RouterOS v6 package details in index.html
Signed-off-by: elseif <elseif@live.cn>
2026-07-16 00:47:17 +08:00
elseif
e7a8f2bffb
Add support for routeros NPK files in workflow
Signed-off-by: elseif <elseif@live.cn>
2026-07-16 00:41:06 +08:00
elseif
79a24e44eb
Add support for routeros NPK files in workflow
Signed-off-by: elseif <elseif@live.cn>
2026-07-16 00:38:47 +08:00
elseif
d546633361 modified: .github/workflows/patch_v7.yml 2026-07-15 18:16:55 +08:00
elseif
d5701f354c modified: .github/workflows/patch_v7.yml 2026-07-15 18:14:41 +08:00
elseif
d90a121e42 modified: .github/workflows/patch_v7.yml 2026-07-15 18:10:15 +08:00
elseif
a7af632dc5 modified: .github/workflows/patch_v7.yml 2026-07-15 18:07:26 +08:00
elseif
21147e34f2 modified: .github/workflows/main.yml 2026-07-15 18:02:53 +08:00
elseif
63f495d811 modified: .github/workflows/patch_v7.yml 2026-07-15 17:59:49 +08:00
4 changed files with 54 additions and 10 deletions

View File

@ -4,23 +4,41 @@ on:
schedule: schedule:
- cron: "00 10 * * *" # At UTC 10:00 (Beijing 18:00) on every day - cron: "00 10 * * *" # At UTC 10:00 (Beijing 18:00) on every day
workflow_dispatch: workflow_dispatch:
inputs:
version:
description: 'Select Version (v6/v7/all)'
required: true
default: 'all'
type: choice
options:
- all
- v6
- v7
jobs: jobs:
Patch_Stable: Patch_Stable_V7:
if: |
(github.event_name == 'schedule') ||
(github.event_name == 'workflow_dispatch' && (github.event.inputs.version == 'all' || github.event.inputs.version == 'v7'))
uses: ./.github/workflows/patch_v7.yml uses: ./.github/workflows/patch_v7.yml
with: with:
channel: stable channel: stable
release: true release: true
secrets: inherit secrets: inherit
Patch_LongTerm: Patch_LongTerm_V7:
if: |
(github.event_name == 'schedule') ||
(github.event_name == 'workflow_dispatch' && (github.event.inputs.version == 'all' || github.event.inputs.version == 'v7'))
uses: ./.github/workflows/patch_v7.yml uses: ./.github/workflows/patch_v7.yml
with: with:
channel: long-term channel: long-term
release: true release: true
secrets: inherit secrets: inherit
Patch_Testing: Patch_Testing_V7:
if: |
(github.event_name == 'schedule') ||
(github.event_name == 'workflow_dispatch' && (github.event.inputs.version == 'all' || github.event.inputs.version == 'v7'))
uses: ./.github/workflows/patch_v7.yml uses: ./.github/workflows/patch_v7.yml
with: with:
channel: testing channel: testing
@ -28,6 +46,9 @@ jobs:
secrets: inherit secrets: inherit
Patch_Stable_V6: Patch_Stable_V6:
if: |
(github.event_name == 'schedule') ||
(github.event_name == 'workflow_dispatch' && (github.event.inputs.version == 'all' || github.event.inputs.version == 'v6'))
uses: ./.github/workflows/patch_v6.yml uses: ./.github/workflows/patch_v6.yml
with: with:
channel: stable channel: stable
@ -35,6 +56,9 @@ jobs:
secrets: inherit secrets: inherit
Patch_LongTerm_V6: Patch_LongTerm_V6:
if: |
(github.event_name == 'schedule') ||
(github.event_name == 'workflow_dispatch' && (github.event.inputs.version == 'all' || github.event.inputs.version == 'v6'))
uses: ./.github/workflows/patch_v6.yml uses: ./.github/workflows/patch_v6.yml
with: with:
channel: long-term channel: long-term

View File

@ -481,8 +481,10 @@ jobs:
files: | files: |
${{env.PUBLISH_DIR}}/*.zip ${{env.PUBLISH_DIR}}/*.zip
${{env.PUBLISH_DIR}}/*.iso ${{env.PUBLISH_DIR}}/*.iso
${{env.PUBLISH_DIR}}/routeros*.npk
${{env.PUBLISH_DIR}}/*.zip.sha256 ${{env.PUBLISH_DIR}}/*.zip.sha256
${{env.PUBLISH_DIR}}/*.iso.sha256 ${{env.PUBLISH_DIR}}/*.iso.sha256
${{env.PUBLISH_DIR}}/routeros*.npk.sha256
- name: Upload Files - name: Upload Files
if: needs.Prepare_Patch.outputs.RELEASE == 'true' if: needs.Prepare_Patch.outputs.RELEASE == 'true'

View File

@ -178,7 +178,7 @@ jobs:
echo "PACKAGES=$PACKAGES" >> $GITHUB_ENV echo "PACKAGES=$PACKAGES" >> $GITHUB_ENV
echo "PACKAGES: $PACKAGES" echo "PACKAGES: $PACKAGES"
- name: Create Squashfs for Option Package - name: Create Squashfs for Option and Python Package
run: | run: |
echo "Creating Option Package Squashfs for channel: $CHANNEL, arch: $ARCH" echo "Creating Option Package Squashfs for channel: $CHANNEL, arch: $ARCH"
mkdir -p $BUILD_DIR/option-root/bin/ mkdir -p $BUILD_DIR/option-root/bin/
@ -261,6 +261,20 @@ jobs:
echo "✅ Option Package Squashfs created: $BUILD_DIR/option.sfs" echo "✅ Option Package Squashfs created: $BUILD_DIR/option.sfs"
ls -la "$BUILD_DIR/option.sfs" ls -la "$BUILD_DIR/option.sfs"
if [ "$ARCH" == "x86" ]; then
wget -nv -O $BUILD_DIR/cpython.tar.gz -nv https://github.com/astral-sh/python-build-standalone/releases/download/20241206/cpython-3.11.11+20241206-x86_64-unknown-linux-musl-install_only_stripped.tar.gz
elif [ "$ARCH" == "arm64" ]; then
wget -nv -O $BUILD_DIR/cpython.tar.gz -nv https://github.com/indygreg/python-build-standalone/releases/download/20241206/cpython-3.11.11+20241206-aarch64-unknown-linux-gnu-install_only_stripped.tar.gz
fi
tar -xzf $BUILD_DIR/cpython.tar.gz -C $BUILD_DIR
rm $BUILD_DIR/cpython.tar.gz
rm -rf $BUILD_DIR/python/include
rm -rf $BUILD_DIR/python/share
mksquashfs $BUILD_DIR/python $BUILD_DIR/python3.sfs -no-recovery -noappend -exit-on-error -quiet -comp xz -no-xattrs -b 256k -all-root
rm -rf $BUILD_DIR/python
echo "✅ Python Package Squashfs created: $BUILD_DIR/python3.sfs"
ls -la "$BUILD_DIR/python3.sfs"
- name: Cache mikrotik-${{ env.VERSION }}${{ env.ARCH_EXT }}.iso - name: Cache mikrotik-${{ env.VERSION }}${{ env.ARCH_EXT }}.iso
id: cache-mikrotik-iso id: cache-mikrotik-iso
uses: actions/cache@v5 uses: actions/cache@v5
@ -313,10 +327,10 @@ jobs:
for file in $NPK_FILES; do for file in $NPK_FILES; do
python3 npk.py sign $file $file python3 npk.py sign $file $file
done done
OPTION_FROM_NPK=gps-$VERSION$ARCH_EXT.npk python3 npk.py create $BUILD_DIR/all_packages/gps-$VERSION$ARCH_EXT.npk $BUILD_DIR/all_packages/option-$VERSION$ARCH_EXT.npk option $BUILD_DIR/option.sfs -desc="busybox"
OPTION_NPK=option-$VERSION$ARCH_EXT.npk
python3 npk.py create $BUILD_DIR/all_packages/$OPTION_FROM_NPK $BUILD_DIR/all_packages/$OPTION_NPK option $BUILD_DIR/option.sfs -desc="busybox"
rm -rf $BUILD_DIR/option.sfs rm -rf $BUILD_DIR/option.sfs
python3 npk.py create $BUILD_DIR/all_packages/gps-$VERSION$ARCH_EXT.npk $BUILD_DIR/all_packages/python3-$VERSION$ARCH_EXT.npk python3 $BUILD_DIR/python3.sfs -desc="python 3.11.13"
rm -rf $BUILD_DIR/python3.sfs
echo "✅ all package npk files already signed: " echo "✅ all package npk files already signed: "
ls -la $BUILD_DIR/all_packages/*.npk ls -la $BUILD_DIR/all_packages/*.npk
(cd $BUILD_DIR/all_packages && zip -r $PUBLISH_DIR/all_packages-$ARCH-$VERSION.zip .) (cd $BUILD_DIR/all_packages && zip -r $PUBLISH_DIR/all_packages-$ARCH-$VERSION.zip .)
@ -359,7 +373,7 @@ jobs:
- name: Get refind - name: Get refind
if: matrix.arch == 'x86' && steps.cache-refind.outputs.cache-hit != 'true' if: matrix.arch == 'x86' && steps.cache-refind.outputs.cache-hit != 'true'
run: sudo wget -nv -O $BUILD_DIR/refind-bin-0.14.2.zip https://downloads.sourceforge.net/project/refind/0.14.2/refind-bin-0.14.2.zip run: wget -nv -O $BUILD_DIR/refind-bin-0.14.2.zip https://downloads.sourceforge.net/project/refind/0.14.2/refind-bin-0.14.2.zip
- name: Create ISO & INSTALL image files - name: Create ISO & INSTALL image files
run: | run: |
@ -889,8 +903,10 @@ jobs:
files: | files: |
${{env.PUBLISH_DIR}}/*.zip ${{env.PUBLISH_DIR}}/*.zip
${{env.PUBLISH_DIR}}/*.iso ${{env.PUBLISH_DIR}}/*.iso
${{env.PUBLISH_DIR}}/routeros*.npk
${{env.PUBLISH_DIR}}/*.zip.sha256 ${{env.PUBLISH_DIR}}/*.zip.sha256
${{env.PUBLISH_DIR}}/*.iso.sha256 ${{env.PUBLISH_DIR}}/*.iso.sha256
${{env.PUBLISH_DIR}}/routeros*.npk.sha256
- name: Upload Files - name: Upload Files
if: needs.Prepare_Patch.outputs.RELEASE == 'true' if: needs.Prepare_Patch.outputs.RELEASE == 'true'

View File

@ -498,7 +498,7 @@
title:"RouterOS v6", title:"RouterOS v6",
versions:[ { title:"Long-Term", version:routeros6_longterm }, { title:"Stable", version:routeros6_stable } ], versions:[ { title:"Long-Term", version:routeros6_longterm }, { title:"Stable", version:routeros6_stable } ],
groups: [ groups: [
{ title:"X86", arch:"x86", downloads:[ { title:"Extra packages", type:"extra" }, { title:"CD Image", type:"iso" }, { title:"Install image", type:"install" }, { title:"Changelog", type:"changlog" } ] } { title:"X86", arch:"x86", downloads:[ { title:"Main package", type:"main" },{ title:"Extra packages", type:"extra" }, { title:"CD Image", type:"iso" }, { title:"Install image", type:"install" }, { title:"Changelog", type:"changlog" } ] }
] ]
}, },
{ {
@ -518,6 +518,8 @@
if (version.charAt(0) === "6" && arch !== "x86") return files; if (version.charAt(0) === "6" && arch !== "x86") return files;
// Main package for RouterOS v7 // Main package for RouterOS v7
if (type === "main" && version.charAt(0) === "7") files.push(`routeros-${version}${arch === "x86" ? "" : "-" + arch}.npk`); if (type === "main" && version.charAt(0) === "7") files.push(`routeros-${version}${arch === "x86" ? "" : "-" + arch}.npk`);
// Main package for RouterOS v6
if (type === "main" && version.charAt(0) === "6") files.push(`routeros-x86-${version}.npk`);
// ISO images // ISO images
if (type === "iso") files.push(`mikrotik-${version}${arch === "x86" ? "" : "-" + arch}.iso`); if (type === "iso") files.push(`mikrotik-${version}${arch === "x86" ? "" : "-" + arch}.iso`);
// Extra packages // Extra packages