release: correct OBS harness for ZUPT 5.2.5
This commit is contained in:
parent
c27e3d5528
commit
fcce1b5a4a
29 changed files with 301 additions and 153 deletions
|
|
@ -1,4 +1,4 @@
|
|||
# ZUPT 5.2.4 for openSUSE Build Service
|
||||
# ZUPT 5.2.5 for openSUSE Build Service
|
||||
|
||||
This directory is the upstream, source-only OBS recipe for ZUPT. It is a
|
||||
handoff for the downstream maintainer; its presence does not mean that the
|
||||
|
|
@ -10,13 +10,14 @@ changes in this handoff. Alessandro de Oliveira Faria (Cabelo) is credited only
|
|||
as the openSUSE collaborator and downstream OBS package maintainer: he reviews
|
||||
the handoff, commits it through the portal/project he maintains, and may make
|
||||
the openSUSE-side adjustments he considers necessary. This role does not
|
||||
attribute upstream code or the 5.2.2/5.2.3/5.2.4 upstream changes to Cabelo.
|
||||
attribute upstream code or the 5.2.2/5.2.3/5.2.4/5.2.5 upstream changes to
|
||||
Cabelo.
|
||||
|
||||
## Files and source policy
|
||||
|
||||
| File | Purpose |
|
||||
|---|---|
|
||||
| `_service` | Fetch the immutable `v5.2.4` tag and create `Source0` at build time. |
|
||||
| `_service` | Fetch the immutable `v5.2.5` tag and create `Source0` at build time. |
|
||||
| `zupt.spec` | Build and test the CLI with optional external system integrations disabled. |
|
||||
| `zupt.changes` | openSUSE-format package history. |
|
||||
| `source-audit.sh` | Handoff wrapper for the repository scanner; run it from the complete handoff tree. |
|
||||
|
|
@ -29,11 +30,11 @@ https://github.com/cristiancmoises/zupt.git
|
|||
```
|
||||
|
||||
`obs_scm` stores an `.obscpio` plus `.obsinfo`. The `tar` and `recompress`
|
||||
services reconstruct `zupt-5.2.4.tar.gz` inside the build environment, which
|
||||
services reconstruct `zupt-5.2.5.tar.gz` inside the build environment, which
|
||||
matches `Source0` in the spec.
|
||||
|
||||
This source policy does not prohibit separately built release-page packages.
|
||||
The upstream 5.2.4 gates may publish the CLI source tarball, DEB, binary RPM,
|
||||
The upstream 5.2.5 gates may publish the CLI source tarball, DEB, binary RPM,
|
||||
SRPM, notice-bearing Linux tar.xz, Windows ZIP, and macOS DMG, together with a
|
||||
GUI DEB, noarch RPM, GUI SRPM, and source-only portable GUI ZIP after each
|
||||
format-specific test succeeds. None of those files is an OBS `Source0` input
|
||||
|
|
@ -138,7 +139,7 @@ reconstructed by the build-time services. Neither `%build` nor `%check` may
|
|||
access the network.
|
||||
|
||||
For a source RPM check outside OBS, place the service-produced
|
||||
`zupt-5.2.4.tar.gz` next to the spec and use a disposable RPM build tree:
|
||||
`zupt-5.2.5.tar.gz` next to the spec and use a disposable RPM build tree:
|
||||
|
||||
```sh
|
||||
rpm_top=$(mktemp -d)
|
||||
|
|
@ -166,12 +167,36 @@ unavailable rather than passing it. Earlier off-screen GUI smoke evidence is
|
|||
supporting evidence, not an exact-commit package result.
|
||||
|
||||
Post-tag CI integration failures prevented 5.2.2 promotion. These historical
|
||||
local results do not establish 5.2.4, native Windows or macOS success, hosted
|
||||
local results do not establish 5.2.5, native Windows or macOS success, hosted
|
||||
GitHub CI/release promotion, authenticated OBS acceptance, or resolution of the
|
||||
automatic openSUSE `debugsource` rpmlint `no-binary` finding. The immutable
|
||||
5.2.3 candidate was not promoted because its source-policy test assumed LF for
|
||||
a Windows `.bat` file checked out as CRLF. The exact 5.2.4 candidate must repeat
|
||||
every applicable gate; those gates remain pending until recorded otherwise.
|
||||
a Windows `.bat` file checked out as CRLF.
|
||||
|
||||
## Prior 5.2.4 exact-tag source-service evidence
|
||||
|
||||
The immutable v5.2.4 candidate was not promoted. Exact-tag GitHub Actions run
|
||||
`33431386002` recorded 12 successful jobs and one failed openSUSE job. That job's
|
||||
standalone `Serviceinfo` harness passed the service directory to the executor
|
||||
but did not make it the process working directory; dependent native Windows and
|
||||
macOS jobs were skipped.
|
||||
|
||||
A disposable local openSUSE Tumbleweed reproduction independently resolved
|
||||
`refs/tags/v5.2.4` to the tagged commit. With `osc` 1.27.3,
|
||||
`obs-service-obs_scm` 0.12.4, `obs-service-tar` 0.12.4, and
|
||||
`obs-service-recompress` 0.5.2 installed, the same executor completed
|
||||
`obs_scm`, `tar`, and `recompress` after `os.chdir(service_dir)`. It produced
|
||||
exactly one `zupt-5.2.4.tar.gz`; its SHA-256 was
|
||||
`aa68a58fc2e88ee92296542de1f189e2b8a803154d832fb04d5296b25acaef8f`, and the
|
||||
source scanner reported `PASS source-only: 204 files, 1 archives`.
|
||||
|
||||
This result establishes that the explicit tag revision works and isolates a
|
||||
release/test harness defect. It does not change the product, archive format,
|
||||
cryptography, codec, or SDK ABI; it does not make skipped native jobs pass or
|
||||
establish authenticated OBS/Factory acceptance. No v5.2.4 evidence transfers
|
||||
automatically to v5.2.5. The exact v5.2.5 candidate must repeat every applicable
|
||||
gate, and the automatic openSUSE `debugsource` rpmlint `no-binary` finding
|
||||
remains unresolved and unsuppressed.
|
||||
|
||||
## Prior openSUSE packaging validation
|
||||
|
||||
|
|
@ -210,11 +235,11 @@ gate.
|
|||
## Handoff procedure for Alessandro/Cabelo
|
||||
|
||||
1. Upstream completes every applicable pre-tag source and local audit gate,
|
||||
then creates and verifies the annotated `v5.2.4` tag. Exact-tag hosted,
|
||||
then creates and verifies the annotated `v5.2.5` tag. Exact-tag hosted,
|
||||
native-platform, package, and promotion gates must pass before release or
|
||||
downstream handoff; the tag itself is never moved to repair a failure.
|
||||
2. With Git, `file`, bsdtar, tar, zip, unzip and SHA-256 tools installed, run
|
||||
`scripts/export-opensuse-package.sh v5.2.4`. Verify the reported ZIP and
|
||||
`scripts/export-opensuse-package.sh v5.2.5`. Verify the reported ZIP and
|
||||
SHA-256 outside the Git index. The handoff includes both
|
||||
`packaging/opensuse/source-audit.sh` and its required
|
||||
`scripts/check-source-only.sh`; keep that relative layout while auditing.
|
||||
|
|
@ -226,7 +251,7 @@ gate.
|
|||
```
|
||||
|
||||
4. From the extracted handoff root, run
|
||||
`packaging/opensuse/source-audit.sh --archive /path/to/zupt-5.2.4.tar.gz`.
|
||||
`packaging/opensuse/source-audit.sh --archive /path/to/zupt-5.2.5.tar.gz`.
|
||||
Then copy `_service`, `zupt.spec`, `zupt.changes` and `README.md`
|
||||
into the flat OBS package checkout. The audit wrapper is not an OBS build
|
||||
source and must not be copied without its companion `scripts/` directory.
|
||||
|
|
|
|||
Loading…
Reference in a new issue