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

HDDS-11630. Add Build from Maven guide #100

Merged

Conversation

ptlrs
Copy link

@ptlrs ptlrs commented Oct 31, 2024

What changes were proposed in this pull request?

Added content for the developer guide to build ozone sources using maven

Please describe your PR in detail:

  • Updated the content for building ozone sources using maven
  • Added new words to the dictionary to fix the spelling linter

What is the link to the Apache Jira?

https://issues.apache.org/jira/browse/HDDS-11630

How was this patch tested?

CI:
https://github.com/ptlrs/ozone-site/actions/runs/11606635045
https://github.com/ptlrs/ozone-site/actions/runs/11811331336
https://github.com/ptlrs/ozone-site/actions/runs/11823796643
https://github.com/ptlrs/ozone-site/actions/runs/11842696659
https://github.com/ptlrs/ozone-site/actions/runs/11842732645
https://github.com/ptlrs/ozone-site/actions/runs/12627619493
https://github.com/ptlrs/ozone-site/actions/runs/12703203099
https://github.com/ptlrs/ozone-site/actions/runs/12757136988

Ran the website locally via docker-compose:
Screenshot 2025-01-05 at 10 19 36 PM

@github-actions github-actions bot added the website-v2 Tasks for the new ozone website targeting the HDDS-9225-website-v2 branch label Oct 31, 2024
@errose28 errose28 self-requested a review November 1, 2024 17:31
@errose28 errose28 added the docs Changes updating documentation on the website label Nov 1, 2024
Copy link
Contributor

@errose28 errose28 left a comment

Choose a reason for hiding this comment

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

Thanks for working on this @ptlrs. There's a fair amount of maven options hidden in Ozone that would be good to document here too. We can probably collect input from other devs on what they are using. Some that I have saved:

  • Skip pnpm build of Recon front-end: -Dskip.npx=true
  • Skip shading Hadoop client jars: -DskipShade

These options greatly speed up the build if you are a developer and know you do not need either of these components.


## Prerequisites

**TODO** : [HDDS-11625](https://issues.apache.org/jira/browse/HDDS-11625) Finalize the version numbers of prerequisite packages
Copy link
Contributor

Choose a reason for hiding this comment

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

Let's see if we can finalize this as part of this change as well. The only thing I'm not sure about is the maven version. Really Ozone should define this in its pom probably using something like the Maven enforcer plugin. Maybe we should raise a PR to add this to the main Ozone repo and then update the docs.

Copy link
Author

Choose a reason for hiding this comment

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

That's a good point we should take advantage of the enforcer plugin to have reproducible builds.

However, what should be considered the minimum version for Maven and Git? We depend on Hadoop and I can see if they have a minimum version specified for Maven.

On that note, it is also not clear what the minimum version of Java should be. We do build with versions 8, 11, 17. Some of the pom files specify the compiler source and target versions to Java 8. Some of the tests fail when run from the IDE with a newer JDK and need extra JVM parameters to allow Java lang and util modules and the security manager.

@ptlrs ptlrs requested a review from errose28 November 14, 2024 17:53
@ptlrs ptlrs marked this pull request as ready for review November 14, 2024 17:53
@errose28
Copy link
Contributor

See also some updates to the way we skip Recon frontend build in apache/ozone#7454

Copy link
Contributor

@errose28 errose28 left a comment

Choose a reason for hiding this comment

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

Thanks for the updates @ptlrs. I left a few more comments but overall flow and content looks pretty good.

@ptlrs ptlrs requested review from smengcl and adoroszlai January 6, 2025 06:21
@ptlrs ptlrs requested review from jojochuang and errose28 January 6, 2025 06:21
Copy link
Contributor

@errose28 errose28 left a comment

Choose a reason for hiding this comment

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

Thanks for the updates, just a few comments left

@ptlrs ptlrs requested a review from errose28 January 10, 2025 04:18
Copy link
Contributor

@errose28 errose28 left a comment

Choose a reason for hiding this comment

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

Looks great, thanks for the updates! Just a few minor comments

@ptlrs ptlrs requested a review from errose28 January 13, 2025 22:19
@ptlrs
Copy link
Author

ptlrs commented Jan 13, 2025

Thank you @errose28 @adoroszlai @jojochuang @smengcl for the reviews.I have made the requested changes.
Could you please take a final look and let me know if there are any changes needed. Thank you.

Copy link
Contributor

@adoroszlai adoroszlai left a comment

Choose a reason for hiding this comment

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

Thanks for the update.

BTW, you don't need to update the PR description with link to new CI runs from your fork. That link is only important initially, to show that you have a clean run before creating the PR. Once created, the PR triggers its own CI run every time you push new changes.

@ptlrs
Copy link
Author

ptlrs commented Jan 14, 2025

BTW, you don't need to update the PR description with link to new CI runs from your fork. That link is only important initially, to show that you have a clean run before creating the PR. Once created, the PR triggers its own CI run every time you push new changes.

Thanks @adoroszlai. Good to know.

Copy link
Contributor

@errose28 errose28 left a comment

Choose a reason for hiding this comment

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

Thanks for the continuous updates @ptlrs LGTM

@ptlrs ptlrs requested a review from adoroszlai January 21, 2025 19:14
@adoroszlai adoroszlai merged commit 7a13fcd into apache:HDDS-9225-website-v2 Jan 21, 2025
12 checks passed
@adoroszlai
Copy link
Contributor

Thanks @ptlrs for the doc, @errose28, @jojochuang, @smengcl for the reviews.

@ptlrs
Copy link
Author

ptlrs commented Jan 21, 2025

Thank you for the detailed reviews @adoroszlai, @errose28, @jojochuang and @smengcl.

@ptlrs ptlrs deleted the HDDS-11630-build-from-maven-guide branch January 21, 2025 19:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Changes updating documentation on the website website-v2 Tasks for the new ozone website targeting the HDDS-9225-website-v2 branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants