Git Product home page Git Product logo

rabbitmq-website's Introduction

This repository contains source code for rabbitmq.com content.

Branches

There are a few noteworthy and long-lived named branches in this repository:

Branch Description
live The current version of the website. This must represent whatever's deployed to www.rabbitmq.com.
stable Changes to the website that will correspond to the next point (maintenance) release of RabbitMQ. This gets merged into live when the release occurs.
master Changes to the website that will correspond to the next release of RabbitMQ. This gets merged into live when the release occurs. Normally this should represent whatever's deployed to next.rabbitmq.com.
stage The staging version of the website. Only relevant while a release is being prepared, it acts to snapshot master in case changes are made to that during the release process.

Development environment

Running a Local Copy

The site requires Python and Python XSLT support for development, and assumes Apache is used for deployment. For simple development on Debian-based systems, it is enough to run

sudo apt-get install python-lxml python-markdown python-pygments

to install required dependencies and then

./driver.py [www|next|previous]

from the base of the repository to run a local version of the site, with page regeneration on reload. The site will be available at http://localhost:8191. Note that using driver.py the site will not feature:

  • Any release artefacts (this includes the web versions of the man pages)
  • The blog

The script diagrams.py generates PNGs from graph descriptions embedded in files. Generally you don't need to run this, since we check the PNGs in, but if you do want to use it, you'll also need dot:

sudo apt-get install graphviz

If you want the site/news.atom feed generated, you can run the following command:

xsltproc --novalid site/feed-atom.xsl site/news.xml > site/news.atom

On OS X

Using Homebrew, you can install the necessary parts with:

brew install python
pip install lxml markdown

Using the system Python, you can install the necessary parts with:

sudo easy_install pip
sudo pip install lxml markdown

Modes

The website also has the concept of being deployed in modes. The three modes are:

Mode Description
www This is the "normal" mode. You would normally deploy from the live branch with this mode.
next This is the mode for next.rabbitmq.com. This mode has the home page and download page chopped down, no blog or search, and a watermark. You would normally deploy from the master branch with this mode.
previous For previous.rabbitmq.com. The website is reduced in the same way as "next", but this mode is meant for previous releases rather than future releases.

You determine which mode you are using with an argument to the driver or deploy scripts. Modes are implemented with the <x:modal/> tag and the $page-mode variable in XSLT.

Copyright and License

See NOTICE and LICENSE.

rabbitmq-website's People

Contributors

michaelklishin avatar acogoluegnes avatar dumbbell avatar camelpunch avatar priviterag avatar gerhard avatar videlalvaro avatar essen avatar asbjornu avatar kjnilsson avatar jeffweiss avatar gotthardp avatar hairyhum avatar dcorbacho avatar ayanda-d avatar larrylv avatar dastergon avatar jacksoncvm avatar binarin avatar livven avatar deadtrickster avatar chengweiv5 avatar mrbuk avatar monosoul avatar jdesilvio avatar dmitrymex avatar lukebakken avatar gustavodemari avatar eshizhan avatar cvtjnii avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.