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

Need some help on debugging this project #174

Open
Thevakumar-Luheerathan opened this issue Feb 5, 2025 · 2 comments
Open

Need some help on debugging this project #174

Thevakumar-Luheerathan opened this issue Feb 5, 2025 · 2 comments

Comments

@Thevakumar-Luheerathan
Copy link

I'm trying to implement a similar plugin for the Ballerina language(https://ballerina.io/). So, I built this plugin and deployed it. To study the internal details of the implementation. I want to debug this plugin. Is there any way to debug this plugin?

@stklcode
Copy link
Contributor

stklcode commented Feb 5, 2025

If you want to debug in a live Nexus intance or container, just enable JDWP and connect to the configured port, e.g.

INSTALL4J_ADD_VM_PARAMS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005" 

@Thevakumar-Luheerathan
Copy link
Author

Thevakumar-Luheerathan commented Feb 7, 2025

If you want to debug in a live Nexus intance or container, just enable JDWP and connect to the configured port, e.g.

INSTALL4J_ADD_VM_PARAMS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005" 

Thanks @stklcode , I'm not sure this is the right place to ask for help. But, It may be helpful to understand this repo more clearly. I went through a few implementations (nexus-public/plugins/nexus-repository-maven at main · sonatype/nexus-public · GitHub, GitHub - sonatype-nexus-community/nexus-repository-composer: Composer support for the Nexus Repository Manager (work in progress!)). I understand that we need to implement Recipe classes for each type (hosted, proxy, group). In each of the Recipes, we need to attach a set of facets and a set of handlers through ViewFacet. However, I still couldn’t get the complete picture. I have a set of questions to clarify:

  1. Do we have a detailed guide on developing a new format, both backend and frontend?
  2. Which classes/interfaces (Facets, Handlers) should be implemented to run a basic prototype format?
  3. A Recipe is called when a repository is created and it attaches all the facets. Similarly, when is a Facet class or handler class called?
  4. Which classes/interfaces (Facets, Handlers) should be implemented to ensure security?
  5. I see a set of implementations related to the frontend here (nexus-repository-composer/nexus-repository-composer/src/main/resources/static/rapture at master · sonatype-nexus-community/nexus-repository-composer · GitHub). How does it work?
  6. Is there a specific folder structure to follow to organize the class/interface files?

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

2 participants