Packaging era split: 25.12 SDK cannot emit ipk — two pinned SDKs (format-selected), or drop ipk

オープン
#708 コメント 3 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 2 日以内に返信

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
35/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
go

調査の方向性

Start by reading packaging/build-inputs.json, build-sdk-package.sh, and the CI matrix, then compare the existing per-release Go handling in go_per_release and sdk-go-version.sh. The maintainer decision is whether ipk remains supported; if yes, done means format-selected, digest-pinned SDKs and matching arch × format CI rows, with each lane producing its expected package. If no, remove the ipk matrix rows and document the 25.12/apk-only choice.

索引モデルが issue の本文から書いたものです。

説明

The 24.x/25.x packaging split — analysis and proposal (from the rc1 build driver failures)

Observed: the ipk-lane driver failed on the 25.12.0 SDK with "no .ipk found" — because OpenWrt 25.12 is the apk-native era: its SDK emits .apk regardless of the CONFIG_USE_APK dance (scripts/build-sdk-package.sh appends CONFIG_USE_APK=y only for the apk branch; 25.12's default is already apk, so the ipk lane searches for an extension that era never produces). The rc1 build's apk lane succeeded (tollgate-wrt-0.6.0_rc1-r0.apk staged); the ipk lane cannot succeed on this SDK by construction.

Why ipk can't just be dropped: fork #93/#110's evidence — the installed base installs via opkg on feed-less 24.10-era systems (and orphan-removal semantics that #707 fail-louds). The ipk output is the format those devices consume.

Proposal — two pinned SDKs, format-selected:

  1. packaging/build-inputs.json: extend openwrt_sdk from a single release: 25.12.0 to per-format pins — apk: {release: 25.12.0, …} and ipk: {release: 24.10.x, …} — each with its own digest-pinned targets. The scaffolding already exists: go_per_release maps 24.10's toolchain today, and sdk-go-version.sh audits per release; the .go.version pin follows the apk (release) line as the shipped-binary truth, with the ipk SDK's older Go checked as ≥ directive floor (and if 24.10's feed Go < 1.26: the ipk lane pins GOTOOLCHAIN from the manifest tarball — the same single-source-of-truth rule #687 established).
  2. build-sdk-package.sh: PACKAGE_FORMAT selects its SDK; the driver's PACKAGE_EXTENSION check then matches what its era actually emits.
  3. CI matrix: arch × format → the right SDK per row.

Owner decision embedded: confirm ipk stays a supported output (recommend yes — the installed base needs it). If instead the answer is "25.12/apk only", the ipk matrix rows delete and this issue closes with the era note.

(From the orchestrator session; the release lane is fighting this exact mismatch in the rc1 driver right now — implementation can ride its current build work.)

主要言語
Go
スター
12
フォーク
14
平均マージ
4日 19時間
マージ済み PR(30日)
213

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

OpenTollGate/tollgate-module-basic-go のほかの issue

OpenTollGate/tollgate-module-basic-go の issue をすべて見る

似ている issue

Go の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。