Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HMS Listener - update connector catalog / release process #717

Open
19 of 21 tasks
davidradl opened this issue Mar 16, 2023 · 2 comments
Open
19 of 21 tasks

HMS Listener - update connector catalog / release process #717

davidradl opened this issue Mar 16, 2023 · 2 comments
Assignees

Comments

@davidradl
Copy link
Member

davidradl commented Mar 16, 2023

Name

egeria-listener-hms

Owner

davidradl

Deliverable

Provides a Hive Metastore listener to feed HMS changes into an Egeria ecosystem

Build, test and CI-CD process

How will the deliverables identified above be created & distributed? - bau
Will maven, gradle (preferred for new repos) be used? Gradle
What languages are used - Python, Java, Go, .... are particular versions needed? Java
will a container image be required? probably with HMS
What should be checked before a PR can be merged? usual
How about after merging, on main? usual
Are additional tests needed? no - junits

Dependencies

To be decided - there maybe Egeria dependancies if there are then they will be brought in by gradle if possible. I suspect that if we want to depend on Egeria code for example EntityDetails - this currently resides in a module in Egeria core with executable java as well as beans like EntityDetails - and the Egeria module is java 17.

We may therefore:

  • manually copy code in the project from the Egeria project.
  • copy code from Egeria project during the build into generated code.
  • separate out the Egeria beans into their own project - so we can depend on them.

Justification

This was discussed in the Egeria community. We think that this should have its own repository as it runs in a different context to the other HMS repository which is a connector that runs in a OMAG Platform. The HMS listener runs in the HMS process at Java 8. So it will have different dependancies from anything running in the OMAG Platform

Assumptions

Yes - all true

Additional Information

No response

Work Plan

Before creating the repo

  • [ x] review overall request & get clarifications
  • [ x] get approval on developer/TSC call from maintainers

Creating the repo

  • Create the repo under the odpi organization (default gitignore, license, readme)
  • Setup branch protection rules
  • Set pull request options (allow merge, squash, rebase, suggest updating, allow automerge, do not delete head)
  • Update security settings in repo (policy, advisories, alerts)
  • set up permissions

First steps

  • Initial code-drop (author)

Getting CI/CD started & refining settings

  • Add initial build script for PR (including gradle wrapper if required)
  • Add initial build script for merge

Further Refinement

Release

  • Add release pipeline
@davidradl davidradl changed the title [REPOSITORY] Egeria HMs [REPOSITORY] Egeria HMS listener Mar 16, 2023
@planetf1
Copy link
Member

@davidradl

I've implemented this now, with a few caveats

  • The template etc is all setup for Java 17 - you'll need to make changes as required to co-erce for Java 8/11
  • LFX Security isn't working yet (it is in the list), but this isn't repo specific -- I think it only refreshed every 1 month or more
  • release pipeline is untested
  • no docker image (but that's a whole other game here, as it's about building on top of a good HMS container image, not egeria)
  • codeQL isn't quiet setup right -- currently working through some codeql issues. It may mostly work...

Will xfer to docs to update the list of repos etc

@planetf1 planetf1 transferred this issue from odpi/egeria Mar 20, 2023
@davidradl
Copy link
Member Author

thanks for setting this up Nigel @planetf1

@planetf1 planetf1 changed the title [REPOSITORY] Egeria HMS listener HMS Listener - update connector catalog / release process Mar 28, 2023
@planetf1 planetf1 removed their assignment Mar 28, 2023
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

No branches or pull requests

3 participants