| = Apache Shiro Website Overview |
| |
| The Apache Shiro website is a static content website accessible at https://shiro.apache.org/. |
| |
| Site content is authored as Markdown, Asciidoc and HTML files. |
| These files are parsed by the tool `jbake` and renders the content files using freemarker templates to static `.html` files. |
| |
| To publish the site commit changes to the `asf-site` branch of this repository. |
| ASF infrastructure will see the commit and automatically push the changes to the ASF͘'s production webservers. |
| |
| == Generating and Publishing |
| |
| The tool used to generate the static content is https://jbake.org/[JBake]. |
| JBake is used as a maven plugin, i.e. you do not need to have it in your `${PATH}`. |
| Generating and publishing the site on the command only takes a few maven and git commands. |
| Please carefully check the requirements outlined in link:CONTRIBUTING.adoc[]. |
| |
| The following example assumes you have commit permissions to the `apache/shiro-site` repository, typically because you are an Apache Shiro project committer: |
| |
| [source,bash] |
| ---- |
| # clone both repo branches `asf-site` and `main` |
| git clone https://github.com/apache/shiro-site -b asf-site shiro-site-publish |
| git clone https://github.com/apache/shiro-site |
| |
| # build the site |
| cd shiro-site |
| mvn clean process-classes |
| # Open up the local ../shiro-site-publish/index.html file in your web browser. |
| # Ensure the changes reflect what you want. |
| |
| # These next commands will publish changes to live ASF web servers. |
| # Be confident the changes are what you want: |
| rsync -avP --delete --exclude .git target/website/. ../shiro-site-publish |
| cd ../shiro-site-publish |
| # Please check that you did not modify any of the following files: |
| # .asf.yaml |
| # .htaccess |
| # robots.txt |
| git add . |
| git commit -am "my change description" |
| git push origin asf-site |
| ---- |
| |
| It should only take a few moments until the changes are live. |