To add a blog post, create a new markdown file in the
_posts directory, following the model of existing posts. In the front matter, you should specify an “author”. This should be your Apache ID if you have one, or it can just be your name. To add additional metadata about yourself (GitHub ID, website), add yourself to
_data/contributors.yml. This object is keyed by
apacheId, so use that as the
author in your post. (It doesn't matter if the ID actually exists in the ASF; all metadata is local to this project.)
gem install bundler bundle install
Run the following and open http://localhost:4000/ to preview generated site locally:
bundle exec rake
On commits to the
master branch of
apache/arrow-site, the rendered static site will be published to the
asf-site branch using GitHub Actions. On a fork, it will deploy to your
gh-pages branch for deployment via GitHub Pages; this is useful for previewing changes you're proposing.
FYI: We can also generate the site for https://arrow.apache.org/ to
_site/ locally by the following command line:
JEKYLL_ENV=production bundle exec rake generate
To update the documentation, you can run the script
./dev/gen_apidocs.sh in the
apache/arrow repository. This script will run the code documentation tools in a fixed environment.
First, build Apache Arrow C++ and Apache Arrow GLib. This assumes that you have checkouts your forks of
arrow-site alongside each other in your file system.
mkdir -p ../cpp/build cd ../cpp/build cmake .. -DCMAKE_BUILD_TYPE=debug make cd ../../c_glib ./autogen.sh ./configure \ --with-arrow-cpp-build-dir=$PWD/../cpp/build \ --with-arrow-cpp-build-type=debug \ --enable-gtk-doc LD_LIBRARY_PATH=$PWD/../cpp/build/debug make GTK_DOC_V_XREF=": " rsync -r doc/reference/html/ ../../arrow-site/asf-site/docs/c_glib/
cd ../js npm run doc rsync -r doc/ ../../arrow-site/asf-site/docs/js
Then add/commit/push from the
asf-site/ git checkout.