You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Current »

This page collects information about the https://netbeans.apache.org website.

The source repository

The sources of the https://netbeans.apache.org website live in in the master branch of https://github.com/apache/incubator-netbeans-website/, inside the 
netbeans.apache.org directory. This is a direct link: https://github.com/apache/incubator-netbeans-website/tree/master/netbeans.apache.org

Content

This is a gradle project, that uses https://jbake.org/ to transform the content inside src/content to HTML.

The content is mainly written in https://asciidoctor.org/docs/asciidoctorj/ but markdown or html content is possible too.

Building

To build the project you need to clone it, and then run the command

./gradlew buildSite

to build it.

Running

You can run the project locally, so that you can visualize it in a web browser, issuing the command:

./gradlew run

Structure

The project has the following structure:

  • src/content This contains the content in asciidoc/markdown/html.
  • src/templates This contains gsp templates for the pages. Templates can include other templates. Templates must always close all the html tags that are opened in the template. See https://github.com/apache/incubator-netbeans-website/tree/master/netbeans.apache.org/src/content/templates for details on the templates.
  • src/content This contains the content in asciidoc/markdown/html.
  • src/content/scss This SCSS sources that are compiled into css. This is based in Foundation.
  • src/content/js Some JavaScript utilities common to all pages (includes Foundation js, jquery js, colorbox for images, etc.).

Publishing

Apache infra has set up a web hook that runs a Jenkins job whenever content is merged to master. The Jenkins job is at https://builds.apache.org/view/Incubator%20Projects/job/incubator-netbeans-website/

The Jenkins job performs these operations:

  • Clones therepository from github.
  • Checks out the master branch and builds it.
  • Checks out the "asf-site" branch and copies the result of the build into it. Then commits it.
  • There is another hook that detects changes to the "asf-site" branch and publishes the web in an Apache Server.

Synchronization failures

Sometimes the commit to the "asf-site" branch does not publish the website. In these cases you need to manually resynchronize this using this tool: https://gitbox.apache.org/setup/resync.cgi


  • No labels