Skip to content

adds bundle merge functionality - #46

Merged
wdeconinck merged 8 commits into
ecmwf:mainfrom
pardallio:feature/bundle-merge
Jul 10, 2026
Merged

adds bundle merge functionality#46
wdeconinck merged 8 commits into
ecmwf:mainfrom
pardallio:feature/bundle-merge

Conversation

@pardallio

Copy link
Copy Markdown
Contributor

Description

Contributor Declaration

By opening this pull request, I affirm the following:

  • All authors agree to the Contributor License Agreement.
  • The code follows the project's coding standards.
  • I have performed self-review and added comments where needed.
  • I have added or updated tests to verify that my changes are effective and functional.
  • I have run all existing tests and confirmed they pass.

@wdeconinck

Copy link
Copy Markdown
Member

Thanks @pardallio for this, this fell off my radar.
I think this is a good idea.
I was wondering if we should not have the options --bundle <bundle.yml> and --bundle-update <bundle-update.yml>
be just positional arguments:
ecbundle-merge bundle.yml bundle-update.yml -o bundle-output.yml
Then you can use globbing, and merge more than two. The first being the original, and the later ones in sequence as updates.

Also please if you can add some tests would be great!

@pardallio

Copy link
Copy Markdown
Contributor Author

Seems like a great idea! I'll do that.

Maybe in the future we could even think of applying the same logic to ecbundle create with
ecbundle create <list of bundles> --other-args

@codecov-commenter

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 98.57820% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 49.12%. Comparing base (76f6ddb) to head (9d3c4a2).

Files with missing lines Patch % Lines
ecbundle/merge.py 98.48% 1 Missing ⚠️
ecbundle/project.py 50.00% 1 Missing ⚠️
tests/bundle_merge/test_merge.py 99.29% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #46      +/-   ##
==========================================
+ Coverage   40.66%   49.12%   +8.46%     
==========================================
  Files          49       51       +2     
  Lines       10156    10367     +211     
==========================================
+ Hits         4130     5093     +963     
+ Misses       6026     5274     -752     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@wdeconinck wdeconinck left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Nice work @pardallio !

@wdeconinck
wdeconinck merged commit 28d4d49 into ecmwf:main Jul 10, 2026
4 checks passed
@dhaumont

dhaumont commented Jul 14, 2026

Copy link
Copy Markdown

Would it be useful to add a warning message at the begining to warn that it is generated by a tool ?
Something like this (with the instructions line generated in the appropriate way)

# File generated by ial-bundle merge. Do not update by hand !
# To re-generate: 
#     ./ec-bundle merge bundle.yml deode-bundle.yml -o merged-bundle.yml

wdeconinck pushed a commit that referenced this pull request Jul 28, 2026
wdeconinck added a commit that referenced this pull request Jul 28, 2026
* release/2.5.0:
  Version 2.5.0
  ci: migrate ecmwf-actions references to ecmwf (#42)
  Updates to ecbundle-merge (#47)
  Add "ecbundle merge" functionality (#46)
  Add --arch-dir argument to point to specific architecture directories (#43)
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.

4 participants