Skip to content

Conversation

nullccxsy
Copy link
Contributor

  • Add MkDocs-based documentation website with Material theme
  • Include basic pages: Home, Configuration, Examples, Contributing, Releases
  • Add API documentation structure for Table, Catalog, Schema, Types, and Table Scan
  • Add build script for local documentation generation
  • Add GitHub Actions workflow for automatic deployment to GitHub Pages
  • Configure custom domain cpp.iceberg.apache.org

Note: This is a demo version with placeholder content that needs further refinement.

nullccxsy added 4 commits September 19, 2025 10:29
- Replace Doxygen with MkDocs and Material theme
- Add documentation pages (home, installation, quickstart, config, examples)
- Set up GitHub Actions for automatic deployment
- Note: This is a demo website with placeholder content
- Add MkDocs-based documentation website with Material theme
- Include basic pages: Home, Configuration, Examples, Contributing, Releases
- Add API documentation structure for Table, Catalog, Schema, Types, and Table Scan
- Add build script for local documentation generation
- Add GitHub Actions workflow for automatic deployment to GitHub Pages
- Configure custom domain cpp.iceberg.apache.org

Note: This is a demo version with placeholder content that needs further refinement.
@nullccxsy
Copy link
Contributor Author

截屏2025-09-19 18 00 42

- Added Doxygen configuration file for API documentation generation.
- Introduced a build script for MkDocs documentation.
- Removed outdated documentation files and replaced them with a structured MkDocs setup.
@nullccxsy
Copy link
Contributor Author

截屏2025-09-23 18 08 17

@nullccxsy
Copy link
Contributor Author

截屏2025-09-23 18 07 35

@nullccxsy
Copy link
Contributor Author

截屏2025-09-23 18 08 33

@nullccxsy
Copy link
Contributor Author

@Fokko, could you please take a look at this?

Copy link
Contributor

@Fokko Fokko left a comment

Choose a reason for hiding this comment

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

Left some small comments, but I think this looks great for a first version! Very comprehensive, thanks @nullccxsy for working on this 🙌

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install mkdocs-material
Copy link
Contributor

Choose a reason for hiding this comment

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

Maybe move this to a requirements.txt and slap a version on it. Otherwise, the workflow might break in case of a new version of mkdocs-material that introduces a breaking change.

- name: Build with MkDocs
run: |
cd mkdocs
mkdocs build --clean
Copy link
Contributor

Choose a reason for hiding this comment

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

How about moving these commands into a Makefile so it can be both invoked by the workflow, but also locally in case you want to iterate quickly.

@wgtmac
Copy link
Member

wgtmac commented Sep 24, 2025

We still see the CI error: https://github.com/apache/iceberg-cpp/actions/runs/17964469116/job/51094065180?pr=237 @Fokko Do you have any idea?

~ under the License.
-->

# Documentation
Copy link
Member

Choose a reason for hiding this comment

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

Please revert changes on this file

@Fokko
Copy link
Contributor

Fokko commented Sep 24, 2025

@wgtmac I'm not sure, maybe the action is not allowed by the ASF. I would take a look at how we do it at PyIceberg: https://github.com/apache/iceberg-python/blob/main/.github/workflows/python-release-docs.yml

Here we just copy the output to the pages branch and set the CNAME

We aim for high test coverage. Run tests with coverage:

```bash
cmake -S . -B build -DICEBERG_BUILD_COVERAGE=ON
Copy link
Member

Choose a reason for hiding this comment

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

We don't have this yet. Perhaps an AI illusion?

@wgtmac
Copy link
Member

wgtmac commented Sep 24, 2025

remote: {"auth_status":"access_denied_to_user","body":"Permission to apache/iceberg-cpp.git denied to github-actions[bot]."}
fatal: unable to access 'https://github.com/apache/iceberg-cpp/': The requested URL returned error: 403

with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./mkdocs/site
publish_branch: gh-pages
Copy link
Member

Choose a reason for hiding this comment

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

@Fokko Do we need to manually create gh-pages branch?

Copy link
Contributor

Choose a reason for hiding this comment

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

@wgtmac I've just created it!

Copy link
Contributor

Choose a reason for hiding this comment

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

I think it needs to be created by hand indeed

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

Successfully merging this pull request may close these issues.

3 participants