commit | 7b90e3553380fae132dec1ae06fcc3e42157c3d4 | [log] [tgz] |
---|---|---|
author | Neal Richardson <neal.p.richardson@gmail.com> | Wed Jul 31 10:55:38 2019 -0500 |
committer | Wes McKinney <wesm+git@apache.org> | Wed Jul 31 10:55:38 2019 -0500 |
tree | d3a962c0d6141e9b3db3643f09a97f636c008ffa | |
parent | b2d681a59b5c9f30c3b79cc2b4dbf10fd3806365 [diff] |
ARROW-6066: [Website] Fix blog post author header This fixes the author metadata logic in a few ways: 1. If the author isn't listed in contributors.yml, it is printed verbatim with no href 2. To make this work in the /blog/ page, the partial template has to null out the author_name variable so that the previous pass in the for loop doesn't spill over 3. The author link is either "homepage" if given, else a link to their GitHub page if "githubId" is given, else a link to the Apache phonebook 4. Logic for this header was consolidated in a single _include partial and used in both the main blog page and the individual permalinked pages Before: ![image](https://user-images.githubusercontent.com/2975928/62084720-c7a0c800-b20e-11e9-9b31-f8fb48833a29.png) ![image](https://user-images.githubusercontent.com/2975928/62084745-dab39800-b20e-11e9-9ec1-21e35b30afa2.png) After: ![image](https://user-images.githubusercontent.com/2975928/62084789-f5860c80-b20e-11e9-8303-7db0ad1e0643.png) ![image](https://user-images.githubusercontent.com/2975928/62084801-ff0f7480-b20e-11e9-912e-d9a0a6422a53.png) This is also now documented in the README. While I was in there, I also deleted some unused templates. Closes #4964 from nealrichardson/jekyll-cleanup and squashes the following commits: a5b971c2a <Neal Richardson> Fix blog post author metadata and document it; remove some unused templates Authored-by: Neal Richardson <neal.p.richardson@gmail.com> Signed-off-by: Wes McKinney <wesm+git@apache.org>
Site content is maintained in the main Arrow repository, mostly in markdown format. Jekyll is used to generate HTML files that can then be committed to the arrow-site repository.
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.)
With Ruby >= 2.1 installed, run the following commands to install Jekyll.
gem install jekyll bundler
bundle install
On some platforms, the Ruby nokogiri
library may fail to build, in such cases the following configuration option may help:
bundle config build.nokogiri --use-system-libraries
If you are planning to publish the website, you must clone the arrow-site git repository. Run this command from the site
directory so that asf-site
is a subdirectory of site
.
git clone --branch=asf-site https://github.com/apache/arrow-site.git asf-site
From the site
directory, run the following to generate HTML files and run the web site locally.
bundle exec jekyll serve
After following the above instructions, run the following commands from the site
directory:
JEKYLL_ENV=production bundle exec jekyll build rsync -r build/ asf-site/ cd asf-site git status
Now git add
any new files, then commit everything, and push:
git push
To update the documentation, run the script ./dev/gen_apidocs.sh
. This script will run the code documentation tools in a fixed environment.
First, build Apache Arrow C++ and Apache Arrow GLib.
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/ ../site/asf-site/docs/c_glib/
cd ../js npm run doc rsync -r doc/ ../site/asf-site/docs/js
Then add/commit/push from the site/asf-site git checkout.