Only publish site updates from the master branch

We currently enable the publish action when commits are made directly to
the apache/daffodil-site repo. This prevents publishing pull requests
until they are merged. However, if we push a branch directly to
apache/daffodil-site for a pull request rather than a fork, then this
action is still triggered, and we will publish from the branch. We don't
want that. We only want to ever publish commits made to the master
branch of the apache/daffodil repo. This fixes that.
1 file changed
tree: 5144065334a4349638a84588afa97b7e3e8964b4
  1. .github/
  2. site/
  3. .asf.yaml
  4. .gitignore
  5. .project
  6. Gemfile
  7. LICENSE
  8. NOTICE
  9. README.md
README.md

Apache Daffodil Website

The Apache Daffodil website is based off of the Apache Website Template.

The website is generated using Jekyll and some plug-ins for it.

How to deploy this web site

Install Ruby Bundler

Some Linux distributions provide the Ruby Bundler via their package managers, for example, for Fedora:

$ dnf install rubygem-bundler

Install or Update Site Dependencies

$ gem install

or

$ gem update

Install Jekyll Plug-ins for AsciiDoc and Diagram Rendering

Some content is developed using the AsciiDoc Markdown variant, which supports embedded diagrams created from diagram-specifying text formats.

(You probably want to install these as super-user using sudo.)

$ apt install python-pip
$ pip install blockdiag
$ pip install seqdiag
$ pip install actdiag
$ pip install nwdiag

NOTE: nwdiag actually supports more than one diagram type. It supports nwdiag, packetdiag, rackdiag, etc.

Running Locally

Before opening a pull request, you can preview your contributions by running from within the directory:

$ jekyll serve --watch --source site

If that fails to work due to missing jekyll plugin versions, try:

$ bundle exec jekyll serve --watch --source site

Open http://localhost:4000 to view the site served by Jekyll.

Once satisfied, create a branch and open a pull request using the Daffodil project Code Conttributor Workflow but using the website repo instead of the code repo.

Pushing to the Live Site

Daffodil uses gitpubsub for publishing to the website. The static content served via apache must be served in the content directory on the asf-site orphan branch. When the changes are merged into the master branch on GitHub, a GitHub action will automatically be triggered and it will perform the necessary steps to publish the site.