تغییر ایپی tftp سرور به متغیر
flash-aminpa-V1.5.yml / Hardware flashing - Amin Pardaz Asia v1.5 (push) Successful in 7m25s
flash-aminpa-V1.5.yml / Hardware flashing - Amin Pardaz Asia v1.5 (push) Successful in 7m25s
This commit is contained in:
@@ -41,7 +41,11 @@ jobs:
|
||||
run: /usr/bin/python3 scripts/serial_command.py check
|
||||
|
||||
- name: Configure and verify network
|
||||
run: /usr/bin/python3 scripts/serial_command.py configure
|
||||
env:
|
||||
UBOOT_DEVICE_IP: ${{ vars.UBOOT_DEVICE_IP || '192.168.75.100' }}
|
||||
TFTP_SERVER_IP: ${{ vars.TFTP_SERVER_IP || '192.168.75.247' }}
|
||||
run: |
|
||||
/usr/bin/python3 scripts/serial_command.py configure --device-ip "$UBOOT_DEVICE_IP" --tftp-server-ip "$TFTP_SERVER_IP"
|
||||
|
||||
- name: Check all firmware sizes against detected flash layout
|
||||
run: /usr/bin/python3 scripts/serial_command.py preflight
|
||||
|
||||
@@ -12,5 +12,8 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Configure network and verify U-Boot commands
|
||||
env:
|
||||
UBOOT_DEVICE_IP: ${{ vars.UBOOT_DEVICE_IP || '192.168.75.100' }}
|
||||
TFTP_SERVER_IP: ${{ vars.TFTP_SERVER_IP || '192.168.75.247' }}
|
||||
run: |
|
||||
/usr/bin/python3 scripts/serial_command.py configure
|
||||
/usr/bin/python3 scripts/serial_command.py configure --device-ip "$UBOOT_DEVICE_IP" --tftp-server-ip "$TFTP_SERVER_IP"
|
||||
|
||||
@@ -3,6 +3,29 @@
|
||||
workflow اصلی `flash-aminpa-V1.5.yml` با push به شاخهٔ `main` اجرا میشود.
|
||||
workflow تست نرمافزاری برای اجرا پس از موفقیت آن و همچنین اجرای دستی تعریف شده است.
|
||||
|
||||
## متغیرهای Gitea برای شبکهٔ U-Boot و TFTP
|
||||
|
||||
این متغیرها را در تنظیمات مخزن، بخش **Actions → Variables** تعریف کنید.
|
||||
workflow تنظیم شبکه و workflow اصلی فلش از آنها استفاده میکنند.
|
||||
|
||||
| نام متغیر | کاربرد | پیشفرض |
|
||||
| --- | --- | --- |
|
||||
| `UBOOT_DEVICE_IP` | IP دستگاه در U-Boot؛ مقدار `ipaddr` | `192.168.75.100` |
|
||||
| `TFTP_SERVER_IP` | IP سرور TFTP؛ مقدار `serverip` و مقصد ping بررسی شبکه | `192.168.75.247` |
|
||||
|
||||
هر دو مقدار باید IPv4 معتبر و بدون CIDR باشند. اگر متغیر تعریف نشود،
|
||||
مقدار پیشفرض استفاده میشود. مقدار تنظیمشده روی برد بازخوانی و بررسی میشود.
|
||||
`UBOOT_DEVICE_IP` مربوط به مرحلهٔ فلش است؛ `TEST_DEVICE_IP` مربوط به دستگاه
|
||||
پس از بوت سیستمعامل است و میتواند متفاوت باشد.
|
||||
|
||||
نمونهٔ اجرای مستقیم:
|
||||
|
||||
```bash
|
||||
/usr/bin/python3 scripts/serial_command.py configure \
|
||||
--device-ip 192.168.75.100 \
|
||||
--tftp-server-ip 192.168.75.247
|
||||
```
|
||||
|
||||
## متغیرهای Gitea برای تست نرمافزاری
|
||||
|
||||
متغیرها را در تنظیمات مخزن Gitea، بخش **Actions → Variables** تعریف کنید.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
"""Check an existing U-Boot prompt or configure its volatile environment."""
|
||||
import argparse
|
||||
import ipaddress
|
||||
import fcntl
|
||||
import re
|
||||
import sys
|
||||
@@ -218,6 +219,8 @@ def main():
|
||||
parser.add_argument("--firmware", type=Path, default=None)
|
||||
parser.add_argument("--rootfs-size", type=lambda value: int(value, 0), help="Actual RootFS partition size in bytes (decimal or 0x-prefixed hex)")
|
||||
parser.add_argument("--confirm-squashfs-mtdblock3", action="store_true", help="Confirm actual RootFS is SquashFS on mtdblock3 and set bootargs")
|
||||
parser.add_argument("--device-ip", type=ipaddress.IPv4Address, default="192.168.75.100")
|
||||
parser.add_argument("--tftp-server-ip", type=ipaddress.IPv4Address, default="192.168.75.247")
|
||||
args = parser.parse_args()
|
||||
if args.firmware is None:
|
||||
filename = "rootfs.squashfs" if args.mode == "transfer-rootfs" else "zImage" if args.mode == "transfer-kernel" else ("sun8i-v3s-licheepi-zero-dock.dtb" if args.mode == "transfer-dtb" else "u-boot-sunxi-with-spl.bin")
|
||||
@@ -271,11 +274,11 @@ def main():
|
||||
"printenv ipaddr serverip ethaddr bootcmd bootargs",
|
||||
allow_missing=("ipaddr", "serverip", "ethaddr", "bootcmd", "bootargs"),
|
||||
)
|
||||
cli.command("setenv ipaddr 192.168.75.100")
|
||||
cli.command("printenv ipaddr", r"^ipaddr=192\.168\.75\.100$")
|
||||
cli.command("setenv serverip 192.168.75.247")
|
||||
cli.command("printenv serverip", r"^serverip=192\.168\.75\.247$")
|
||||
cli.command("ping 192.168.75.247", r"^host 192\.168\.75\.247 is alive$", timeout=30)
|
||||
cli.command(f"setenv ipaddr {args.device_ip}")
|
||||
cli.command("printenv ipaddr", r"^ipaddr=" + re.escape(str(args.device_ip)) + r"$")
|
||||
cli.command(f"setenv serverip {args.tftp_server_ip}")
|
||||
cli.command("printenv serverip", r"^serverip=" + re.escape(str(args.tftp_server_ip)) + r"$")
|
||||
cli.command(f"ping {args.tftp_server_ip}", r"^host " + re.escape(str(args.tftp_server_ip)) + r" is alive$", timeout=30)
|
||||
cli.command("sf probe 0:0", r"^SF: Detected .+", timeout=20)
|
||||
print("\nAll commands verified; environment changes were not saved to flash.")
|
||||
|
||||
|
||||
مرجع در شماره جدید
مسدود کردن کاربر