This site is deprecated. For up-to-date docs and a better experience, please go to semaphoreapp.com/docs.

Supported application stack

Semaphore supports Ruby applications and provides UI for configuring version of Ruby. It also generates database.yml for your Ruby application based on selected database engine.

Apart from Ruby the following languages are also available: JavaScript (Node.js), Java, Python, C/C++ and Perl. For those languages application has to be configured manually in your project’s custom build commands. If you would like another language to be included out of the box, send us email or install it manually.

Below you can find information about installed software.

Ruby versions

  • 2.1.0
  • 2.0.0-p353
  • 1.9.3-p484
  • 1.9.2-p320
  • ree-1.8.7-2012.02
  • JRuby 1.7.9
  • Bundler 1.3.5
  • RubyGems 2.1.11

Ruby versions are available via rbenv. If you need to install an additional version, please check this guide.

Database engines

  • PostgreSQL (9.3.1)
  • MySQL (5.5.34)
  • SQLite (3.7.9)
  • Redis (2.8.1)
  • MongoDB (2.4.8)
  • Memcached (1.4.13)

Test frameworks and backends

  • test/unit
  • RSpec
  • Cucumber
  • Steak
  • Capybara with Selenium
  • Capybara Webkit
  • Poltergeist and PhantomJS
  • Jasmine
  • Minitest

Other languages & platforms

  • Node.js (0.10.22)
  • Java (openjdk7 – 7u25-2.3.10)
  • Python (2.7.3)
  • C/C++ (gcc 4.6)
  • Perl (5.14.2)

Builds on Semaphore run on Ubuntu 12.04 Precise LTS.

We have a number of open source test apps in various flavors that we use for verification. If your setup is different or you’re having problems making your build pass, we encourage you to contact us – we’d be happy to get your app building on Semaphore as quickly as possible.

Other important system packages installed by default include:

Name Version
Firefox 26.0
Chrome 31.0.1650
chromedriver 2.4
Elasticsearch 0.90.9
Sphinx 2.0.4
PhantomJS 1.9.2
libqtwebkit4 2.2.1
imagemagick 6.6.9.7
Linux kernel 3.2.0
wkhtmltopdf 0.9.6

Note: this is a partial list. You can upgrade or add additional packages for your builds with apt-get – either from Ubuntu’s official distribution channels or third-party PPAs.

The Semaphore platform

Customizing your build

Managing dependencies

Build troubleshooting

Deployment

Collaboration

Notifications

Accounts & Billing

Integrations

API