Skip to content

T023: the release's 15 species, the Jenkinsfile's command, the xml:base check - #86

Merged
adamjohnwright merged 1 commit into
mainfrom
t023/release-step-2
Oct 29, 2026
Merged

adamjohnwright merged 1 commit into
mainfrom
t023/release-step-2

Conversation

@adamjohnwright

@adamjohnwright adamjohnwright commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Replaces #85, with its review's findings fixed.

Spec 001, T023.

  • The species: -s now takes a list of species ids, each written to its own file (one id still works). The Jenkinsfile passes the 15 species of release 98's published biopax.zip, read from those files' own xml:base. Whether to add Mycobacterium tuberculosis, which has events of its own but has never been published, is Should the release's BioPAX files include Mycobacterium tuberculosis? #84. If yes, it is one more id in the Jenkinsfile.
  • The Jenkinsfile: the stray quote that ended its docker run line, which would have stopped the shell, is gone. The jar is the image's entry point, and -o ./output lands in the mounted folder.
  • The release's check is the DownloadDirectory step's grep (release-download-directory's Jenkinsfile): every .owl in biopax.zip must hold xml:base="http://www.reactome.org/biopax/{release}. CI's fixture job now runs the same check. It passes for the fixture's release (98) and fails for another (97).
  • Run as written, as far as this host allows:
    • an image built from this branch;
    • the command's own shape (--network=host, the mount, -o ./output, -s with the two species the fixture graph holds) against the private fixture graph;
    • then the Jenkinsfile's zip -r, and the release's check on the unzipped files: two files, both with the release's base.
      The release server's own run is the release's, and its timing is T024.
  • Checked: the fixture's output is unchanged with -s 48887,170928. A bad species id exits 1. 93 tests pass, and actionlint is clean.
  • From T023: the release's 15 species, the Jenkinsfile's command, the xml:base check #85's review:
    • Empty species: a species named with -s that has no events now ends the run with exit 1. The release's check counts files, so it wouldn't notice one missing. Shown with a species added to the private fixture graph for the run and removed after.
    • CI: the fixture job's second run uses the list form, and its byte comparison holds it to the one-by-one run.
    • Credentials: the Jenkinsfile's credentials reach the shell as $user/$pass instead of being filled in by Groovy.
    • Noted, not changed: the release's own pattern has no / after the release number, so release 9 would match 98's files. The list of 15 is kept in step by hand.

🤖 Generated with Claude Code

…se check

-s now takes a list of species ids, each written to its own file, and a
species named there with no events ends the run with exit 1. The
Jenkinsfile passes the 15 species of release 98's published zip; whether to
add Mycobacterium tuberculosis is issue #84. The stray quote that ended its
docker run line is gone, and the credentials reach the shell as variables.
CI's fixture job runs the release's own xml:base check (the DownloadDirectory
step's grep), which passes for the fixture's release and fails for another,
and its second run uses the list form. The command's shape was run from an
image built from this branch against the private fixture graph, zipped as
the Jenkinsfile does, and checked as the release checks.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@adamjohnwright
adamjohnwright merged commit 21b004d into main Oct 29, 2026
6 checks passed
@adamjohnwright
adamjohnwright deleted the t023/release-step-2 branch October 29, 2026 12:45
adamjohnwright added a commit that referenced this pull request Oct 29, 2026
From #86's review: the Jenkinsfile's credentials quoted, what a bad id writes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant