ivandika3 commented on code in PR #10302:
URL: https://github.com/apache/ozone/pull/10302#discussion_r3263152494


##########
CLAUDE.md:
##########
@@ -0,0 +1,73 @@
+# CLAUDE.md
+
+This file provides guidance to Claude Code (claude.ai/code) when working with 
code in this repository.
+
+## Repository
+
+Apache Ozone — a scalable, distributed object/file store. This is a 
multi-module Maven project; root coordinates and current version are in 
[`pom.xml`](./pom.xml) (`groupId` / `artifactId` / `version`). Two top-level 
Maven aggregators:
+
+- `hadoop-hdds/` — Hadoop Distributed Data Store: the storage layer (SCM, 
datanode container service, RocksDB integration, common protocols, crypto, 
framework). Load-bearing submodules: `server-scm`, `container-service`, 
`framework`, `managed-rocksdb`, `interface-{admin,client,server}`. See 
`hadoop-hdds/pom.xml` for the full list.
+- `hadoop-ozone/` — Ozone services and clients on top of HDDS. Load-bearing 
submodules: `ozone-manager` (OM), `s3gateway`, `recon` (UI/monitoring), 
`datanode`, `dist` (binary tarball + Docker compose configs), 
`integration-test*` (Java mini-cluster tests), plus `ozonefs*` 
(Hadoop-compatible FS adapters). See `hadoop-ozone/pom.xml` for the full list.
+
+The big-picture component split: SCM manages containers/pipelines, OM manages 
namespace/keys, datanodes serve container data via Ratis (RAFT), Recon provides 
observability, and S3 Gateway / OzoneFS expose S3 and Hadoop FS APIs. Module 
boundaries follow this split — when changing a feature, expect edits across 
`hadoop-hdds/interface-*` (proto), an HDDS server module, and one of 
`ozone-manager` / `s3gateway` / `recon`. Integration tests for these flows live 
exclusively in `hadoop-ozone/integration-test*`.
+
+## Build
+
+```bash
+mvn clean install -DskipTests      # build + install to local repo (use this 
when iterating across modules; required before single-module rebuilds resolve 
correctly)
+mvn clean verify -DskipTests       # end-to-end compile/verify without 
installing — useful as a smoke check, not for iterative dev
+```
+
+Useful flags (composable):
+- `-DskipShade` — skip building the shaded Ozone FS jar (saves time; omit this 
flag if you need to run filesystem integration tests, which require the shaded 
jar)
+- `-DskipRecon` — skip Recon Web UI (~2 min faster)
+- `-DskipDocs` — skip Hugo docs build
+- `-Pdist` — build the binary tarball under `hadoop-ozone/dist/target/`

Review Comment:
   We can prompt the model to use these options when building locally.



##########
CLAUDE.md:
##########
@@ -0,0 +1,73 @@
+# CLAUDE.md

Review Comment:
   Let's create a AGENTS.md (https://agents.md/) instead and make CLAUDE.md 
symlink to it so that it can be used by other harness (e.g. Codex). See 
https://github.com/apache/airflow and other Apache projects. 



-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to