mattcasters opened a new pull request, #7577:
URL: https://github.com/apache/hop/pull/7577

   ## Summary
   
   Implements [apache/hop#7547](https://github.com/apache/hop/issues/7547): 
optional Wave 1 plugins out of the fat client, a bundled marketplace (CLI + 
GUI) that installs Maven GAV plugin zips into the client `plugins/` tree, 
declarative `hop-env.yaml`, and local Nexus tooling for SNAPSHOT development.
   
   - Lean hop-client (~590 MB measured; under ~850 MB ASF limit); Wave 1 
plugins optional (Spark, Beam plugin only, script, Cassandra, Tika, Drools, 
Parquet, Stanford NLP, Arrow, Dropbox, edi2xml). `lib/beam` stays in the core 
client.
   - Marketplace plugin: install/uninstall/list, repository management (ASF 
`repository.apache.org` primary + Maven Central fallback chain), GUI Tools → 
Marketplace with Manage repositories.
   - `hop-env.yaml` apply/validate and optional hop-run drift enforcement.
   - Local Sonatype Nexus OSS stack (`docker/marketplace-nexus/`) + smoke test; 
IT path re-injects Wave 1 via `tools/install-wave1-plugins.sh`.
   - Docs: user-manual marketplace page; release notes for deploying optional 
plugin zips; assembly size check guidance.
   
   ## Done in this PR
   
   - [x] Marketplace as bundled core plugin
   - [x] CLI install / uninstall / list / apply / validate / `repo *`
   - [x] GUI catalog + Manage repositories
   - [x] ASF primary + Central fallback; multi-repo install chain
   - [x] Install into client `plugins/` (launcher cwd; no `HOP_HOME` required)
   - [x] hop-env + hop-run `enforceOnRun`
   - [x] Wave 1 optional packaging + beam plugin/lib split
   - [x] Local Nexus + publish + smoke
   - [x] IT offline install-wave1 hook; disabled projects report as skipped 
(not fake docker failure)
   - [x] Size gate (`tools/check-assembly-size.sh`) and packaging docs
   
   ## Intentionally out of scope / follow-up
   
   - [ ] Maven Central search-driven catalog (GUI still uses curated Wave 1 
list; `searchApiUrl` reserved)
   - [ ] True stage-before-plugin-scan on startup (install activates then 
restart for classloaders)
   - [ ] Re-enable Cassandra IT (`disabled.txt` left in place)
   - [ ] Full third-party plugin signing / hot-reload
   
   ## Test plan
   
   - [x] `./mvnw -pl plugins/misc/marketplace test` (28 tests)
   - [x] `./tools/check-assembly-size.sh` — hop-client ~590 MB
   - [x] Local Nexus: start / publish / `smoke-test.sh` and/or `./hop 
marketplace install hop-tech-parquet`
   - [ ] Reviewer: rebuild client, `./hop marketplace repo list`, install a 
Wave 1 plugin, restart, confirm plugin loads
   - [ ] Reviewer: `./hop marketplace apply -f` sample hop-env against local or 
ASF repo when available


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to