Skip to content

refactor: Add config file writers to v2#1217

Merged
adwk67 merged 6 commits into
smooth-operatorfrom
refactor/add-config-file-writers
Jun 5, 2026
Merged

refactor: Add config file writers to v2#1217
adwk67 merged 6 commits into
smooth-operatorfrom
refactor/add-config-file-writers

Conversation

@adwk67
Copy link
Copy Markdown
Member

@adwk67 adwk67 commented Jun 5, 2026

Moves writers to the framework for later use by operator PRs.

Definition of Done Checklist

  • Not all of these items are applicable to all PRs, the author should update this template to only leave the boxes in that are relevant
  • Please make sure all these things are done and tick the boxes

Author

  • Changes are OpenShift compatible
  • CRD changes approved
  • CRD documentation for all fields, following the style guide.
  • Integration tests passed (for non trivial changes)
  • Changes need to be "offline" compatible

Reviewer

  • Code contains useful comments
  • Code contains useful logging statements
  • (Integration-)Test cases added
  • Documentation added or updated. Follows the style guide.
  • Changelog updated
  • Cargo.toml only contains references to git tags (not specific commits or branches)

Acceptance

  • Feature Tracker has been updated
  • Proper release label has been added

adwk67 and others added 2 commits June 5, 2026 12:03
…+ Flask)

Adds v2::config_file_writer (to_java_properties_string + to_hadoop_xml, backed
by the java-properties and xml crates) and v2::flask_config_writer (the Flask
App Builder Python config writer), both originally from the product-config
crate's writer modules and until now vendored separately into the operators
(hdfs/hbase/hive byte-identical full copies; kafka/nifi/zookeeper java-only
subsets; airflow/superset identical Flask copies). Unit tests moved along with
the code; minor lint-driven cleanups only (use_self, format_push_string,
identical match arms, no unwrap in Result-returning tests) — rendered output is
unchanged and pinned by the tests.

Operators will migrate to these in follow-up commits, deleting their vendored
copies.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
stackable-operator: intra-doc links within the crate must use `crate::`
rather than the package name `stackable_operator::`, which is not in
scope and produced `broken_intra_doc_links` warnings. Also wrap two bare
URLs in the scaler docs in angle brackets so rustdoc renders them as
hyperlinks.

stackable-telemetry: `SettingsBuilder` is not imported in
`tracing/mod.rs` (only `Settings` is), so the four doc links to it did
not resolve. Point them at `settings::SettingsBuilder` via the child
module, keeping the rendered link text unchanged.

`cargo doc --document-private-items` is now warning-free across the
workspace.
@adwk67 adwk67 self-assigned this Jun 5, 2026
Comment thread crates/stackable-operator/src/v2/config_file_writer.rs Outdated
Comment thread crates/stackable-operator/src/v2/flask_config_writer.rs Outdated
Comment thread crates/stackable-operator/src/v2/flask_config_writer.rs Outdated
Comment thread crates/stackable-operator/src/v2/flask_config_writer.rs Outdated
adwk67 and others added 4 commits June 5, 2026 13:03
Co-authored-by: maltesander <malte.sander.it@gmail.com>
Co-authored-by: maltesander <malte.sander.it@gmail.com>
…dd-config-file-writers

# Conflicts:
#	crates/stackable-operator/src/v2/mod.rs
Copy link
Copy Markdown
Member

@maltesander maltesander left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@adwk67 adwk67 merged commit 46cd3f9 into smooth-operator Jun 5, 2026
4 of 5 checks passed
@adwk67 adwk67 deleted the refactor/add-config-file-writers branch June 5, 2026 11:27
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.

2 participants