ivandika3 commented on code in PR #10302:
URL: https://github.com/apache/ozone/pull/10302#discussion_r3263142340
##########
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*`.
Review Comment:
We can add the tech stack for Ozone such as Java version (Java 8 with JDK21
compatibility), build systems (maven), communication protocol (Hadoop RPC &
gRPC on protobuf), testing library (JUnit 5).
##########
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.
Review Comment:
Remove this specific Claude-specific instruction
##########
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 this when building locally.
##########
CLAUDE.md:
##########
@@ -0,0 +1,73 @@
+# CLAUDE.md
Review Comment:
Let's create a AGENTS.md instead and make CLAUDE.md symlink to it. See
https://github.com/apache/airflow
--
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]