Skip to content

feat(tools/follow-upstream): follow OpenSearch releases - #519

Merged
NavidSassan merged 2 commits into
mainfrom
feat/opensearch-follow-upstream
Oct 27, 2026
Merged

NavidSassan merged 2 commits into
mainfrom
feat/opensearch-follow-upstream

Conversation

@NavidSassan

Copy link
Copy Markdown
Member

Adds OpenSearch (2.x and 3.x) to tools/follow-upstream.yml, plus the tool extensions it needs:

  • series_suffix: the series is named 3.x in the template header and in __opensearch__supported_versions, {series} in paths and URLs stays 3.
  • series_gpg_key: 2.x is signed with the old key (opensearch.pgp). Its SHA-1 binding signature makes rpmkeys --import fail on Rocky 9 ("Hash algorithm SHA1 not available"), so with sha1: true the RPM check switches the fetch container to DEFAULT:SHA1. gpgv (APT check) accepts the key as is.
  • ignore entries ending in / ignore a whole directory (about 2300 Security Analytics rules below /etc/opensearch).
  • The RPM/DEB comparison skips templates based on a later release. The sysconfig template follows 3.x only, and the 2.x DEB ships a different environment file, which would otherwise be a finding on every 2.x release.

The install scripts of 2.19.7 and 3.9.0 (RPM and DEB) are recorded above the entry: the demo security configuration runs on every install and upgrade, but quits once opensearch.yml sets a plugins.security key, which the template always does (SecuritySettingsConfigurer.java).

Tested on Rocky 9 (podman):

  • --check opensearch: no new release, 2.19.7 and 3.9.0 are current.
  • Dry runs of 2.19.7 and 3.9.0: no packaging findings.
  • Template set back to 2.19.6, run for 2.19.7: identical file, only the Based on line updated.
  • 3.x template and 3.x removed, run for 3.9.0: 3.x created from 2.x, 3.x re-added to supported_versions, header # 3.x, one expected conflict at the LFOps block.
  • 2.19.6 with sha1: false: the key import fails as expected.

… and directory ignores

`series_suffix` names a series `3.x` in the template header and in
`supported_versions`. `series_gpg_key` sets another key for one series;
with `sha1: true` the RPM check switches the container to DEFAULT:SHA1,
as rpm on Rocky 9 rejects a key bound with a SHA-1 signature. An
`ignore` entry ending in `/` ignores a whole directory. The RPM/DEB
comparison skips templates based on a later release, e.g. one without
`{series}` that follows the newest series only.
@NavidSassan
NavidSassan enabled auto-merge October 27, 2026 15:55
@NavidSassan
NavidSassan merged commit 9f69b79 into main Oct 27, 2026
13 checks passed
@NavidSassan
NavidSassan deleted the feat/opensearch-follow-upstream branch October 27, 2026 15:58
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