Public open source repository for the OpenShift client tools and the 'rhc' gem.
Ruby Other
Latest commit 7ec098f Jul 19, 2016 @openshift-bot openshift-bot committed on GitHub Merge pull request #759 from thrasher-redhat/json
Merged by openshift-bot
Failed to load latest commit information.
autocomplete Fix rhc_bash for usage with Zsh's bashcompinit Nov 16, 2015
bin Readded support to option as array on commander, rhc env spec tests f… Sep 2, 2013
conf express.conf: Terminate last line with newline Oct 16, 2013
cucumber Merge pull request #720 from Miciah/cucumber-slash-README.md-fix-typo… Nov 9, 2015
features Fix create-app --from-app test timeout Sep 4, 2015
lib Merge pull request #743 from sallyom/bz1294401 Jan 29, 2016
man Allow an ssh executable to be specified globally Nov 9, 2015
rel-eng Automatic commit of package [rhc] release [1.38.4-1]. Oct 23, 2015
spec 'rhc app show <app> --gears quota' use 'quota' not 'du' Jan 23, 2016
tasks Origin UI 72 - Memberhip Sep 26, 2013
.gitignore Remove outdated rhc-1.37.1.gem, add *.gem to .gitignore Feb 3, 2016
.rspec Upgrade spec tests to passing, fix RSpec2 syntax errors, ensure rando… Mar 29, 2013
.travis.yml Fix typo Nov 8, 2015
.vimrc Added .vimrc for coding standards and updated README so people know h… Apr 27, 2012
COPYRIGHT Move everything in express/ into the root Jun 24, 2012
Gemfile Update Gemfile dependencies Jul 19, 2016
LICENSE Move everything in express/ into the root Jun 24, 2012
README.md Modifying rhc to focus on support for ruby1.8.7 Apr 22, 2016
Rakefile Move everything in express/ into the root Jun 24, 2012
build.sh Bug 994986 - Remove 'rhc cartridge' because it conflicts with other a… Aug 20, 2013
client.spec Automatic commit of package [rhc] release [1.38.4-1]. Oct 23, 2015
rhc.gemspec Modifying rhc to focus on support for ruby1.8.7 Apr 22, 2016

README.md

OpenShift Command Line Tools (RHC) Build Status

The OpenShift command line tools allow you to manage your OpenShift applications from the command line. The Getting Started guide has additional info on installing the tool on each supported operating system.

Please stop by #openshift on irc.freenode.net if you have any questions or comments. For more information about OpenShift, visit https://openshift.redhat.com or the OpenShift support page https://openshift.redhat.com/support.

RHC from rubygems.org is built on Ruby 1.8.7. RHC does have conditional dependencies during build time, so it can be built on multiple versions of Ruby.
If you are running into any dependency issues when using RHC, please try to build RHC locally using gem build rhc.gemspec to use the correct dependencies.

Using RHC to create an application

DEPENDENCIES:

  • git
  • openssh-clients
  • ruby (1.8.7 or later)
  • rubygems

Step 1: Run the setup command to configure your system:

$ rhc setup

Follow the instructions in setup to set your SSH keys and create a domain. The name you choose for your domain will form part of your application's public URL.

Step 2: Create an OpenShift application:

$ rhc app create -a appname -r /path/to/new/git/repo -t <framework Ex: php-5.3>

Once that's complete, follow the directions printed at the end of running rhc app create.

Making changes to your application

Once your site is created, updating it is as simple as making changes to your git repo. Commit them, then push. For example:

$ edit index.php
$ git commit -a -m "what I did"
$ git push

Then just reload your web page to see the changes.

OS X Notes:

git: OS X 10.6 comes w/ ssh and ruby, but not with git, unless you have Xcode 4.0.x installed.

If you do not have Xcode, you can obtain a pre-packaged version of git from:

http://code.google.com/p/git-osx-installer/

Installing git from MacPorts/HomeBrew/Fink/etc requires Xcode.

Now obtain the client code, either via 'git clone' as above or via the rhc gem.

Developing / Contributing

We expect code contributions to follow these standards:

  1. Ensure code matches the GitHub Ruby styleguide, except where the file establishes a different standard.
  2. We use RSpec for functional testing and Cucumber for our high level integration tests. Specs are in 'spec/' and can be run with bundle exec rake spec. Features are in 'features/' and can be run with bundle exec rake features (although these tests runs against the gem installed locally so you will need to gem install first). See README.md in the features dir for more info.
  3. We maintain 100% line coverage of all newly added code via spec testing. The build will fail if new code is added and it does not have full line coverage. Some old code is currently excluded until it can be refactored. Run bundle exec rake spec on Ruby 1.9+ to see your code coverage level.
  4. When writing a new Command please follow ADDING_COMMANDS.md

Once you've made your changes:

  1. Fork the code
  2. Create a topic branch - git checkout -b my_branch
  3. Push to your branch - git push origin my_branch
  4. Create a Pull Request from your branch
  5. That's it!

If you use vim, we've included a .vimrc in the root of this project. In order to use it, install https://github.com/MarcWeber/vim-addon-local-vimrc