To contribute to the jdf-site, fork the jdf-site repository to your own Git, clone your fork, commit your work on topic branches, and make pull requests.
If you don't have the Git client (git
), get it from: http://git-scm.com/
Here are the steps in detail:
-
Fork the project. This creates a the project in your own Git.
-
Clone your fork. This creates a directory in your local file system.
git clone [email protected]:<your-username>/jdf-site.git
-
Add the remote
upstream
repository.git remote add upstream [email protected]:jboss-jdf/jdf-site.git
-
Get the latest files from the
upstream
repository.git fetch upstream
-
Import the
examples/ticket-monster
,migrations/seam2
,quickstarts/jboss-as-quickstart
,quickstarts/qstools
,stack/plugin-jdf
, andstack/stacks-client
submodules.git submodule update --init --recursive
-
Create a new topic branch to contain your features, changes, or fixes.
git checkout -b <topic-branch-name> upstream/master
-
Contribute new code or make changes to existing files.
-
Test your changes to the site. See Running the site locally or Running the site on Sandbox below for instructions.
-
Commit your changes to your local topic branch. You must use
git add filename
for every file you create or change.git add <changed-filename> git commit -m `Description of change...`
-
Push your local topic branch to your github forked repository. This will create a branch on your Git fork repository with the same name as your local topic branch name.
git push origin HEAD
-
Browse to the branch on your forked Git repository and open a Pull Request. Give it a clear title and description.
The JDF site is built using awestruct, and requires a number of gems and eggs, as well as AsciiDoc (8.6.x).
To setup the environment you need to follow these steps. Certify to use the correct versions.
-
Install Ruby 1.9.X
For RHEL you can use this spec
-
Install Ruby GEMs. If the version is noted, you must use that version.
gem install rake bundle rake setup
-
JDF site uses Github API to obtain some data. Due to Github Rate Limiting, it's required that you create a file
$HOME/.github-auth
containingusername:password
on one line.
Having got your environment correctly set up, on jdf-site root, run:
rake
to run awestruct in development mode, and serve the site at http://localhost:4242.
-
Contact the project lead, and ask for access to the jdf account on OpenShift. Add your ssh key.
-
Run
./publish.sh -d
-
The site will be available at http://site-jdf.rhcloud.com, which we use as sandbox, for developing new features and sections for the site.
-
Contact the project lead, and ask for access to
filemgmt.jboss.org
. -
Run
./publish.sh -s
-
The site will be available at http://jboss.org/jdf/stage, which use for staging changes to the site. Stage is normally reserved for verifying minor updates to the site, or for final verification before a major update.
- Make sure you have
Sendmail
installed and running. Sendmail will be used to send mail notifications.
On Linux you can install sendmail running: sudo yum install sendmail
.
-
Contact the project lead, and ask for access to
filemgmt.jboss.org
. -
Update the site version on `_config/site.yml' -
-
Run
./publish.sh -p
-
The site will be available at http://jboss.org/jdf, the production site.
NOTE: You can also run:
./release.sh -s <old snapshot version> -r <release version>
This will update the version number (step 3), commit and tag and publish the site to http://jboss.org/jdf (step 4). Then it will reset the version number back to the snapshot version number.