We've also moved a few quickstart repositories. No action is needed, but you can get more information here.

Moving Upstream

A number of our quickstarts were started by the OpenShift team, but are now being maintained by the community. This is a great thing and shows the growth of our community.

In order to prevent any confusion, we will be removing some quickstarts from our OpenShift GitHub repository, and directing any future development work to the upstream community repository. This change has been happening over the last few weeks; if you used a quickstart from our web interface during this time period, then you're using the community version. In this post, we'll tell you what quickstarts we'll be "retiring", how you can check your repository, and how you can make sure you stay up to date with the community version.

Affected Quickstarts

Community Maintained

The following quickstarts are now being maintained by the community. Any future changes will be made in the community upstream, and our OpenShift repository will be deleted shortly.

Quickstart Old Upstream New Upstream
IronMQ openshift/ironmq-openshift-quickstart iron-io/ironmq-openshift-quickstart
MongoLab openshift/mongolab-openshift-quickstart mongolab/mongolab-openshift-quickstart
NodeFly openshift/nodefly-openshift-quickstart NodeFly/nodefly-openshift-quickstart
Nodetime openshift/nodetime-openshift-quickstart nodetime/nodetime-openshift-quickstart
PubNub openshift/pubnub-openshift-quickstart pubnub/pubnub-openshift-quickstart
TreasureData openshift/treasure-data-openshift-quickstart treasure-data/treasure-data-openshift-quickstart
SendGrid openshift/sendgrid-openshift-quickstart 1 sendgrid/openshift-sendgrid-php

Retired Quickstarts

These quickstarts are based on older versions of a project and will no longer be maintained. We recommend you upgrade to a quickstart based on the newer version, but this may require much more work. While the steps will be similar, since these are version changes in the software, not all changes will be directly applicable to the new version.

Quickstart Old Upstream New Upstream
Drupal openshift/drupal-example openshift/drupal-quickstart 2
Redmine openshift/redmine-openshift-quickstart openshift/redmine-2.0-openshift-quickstart
web.py openshift/openshift-webpy-example openshift-quickstart/openshiftwebpy

Process

Checking Initial Git URL

First, you will want to check the initial Git URL for your application. If its already using the new upstream, you're all set!

Web Console

Sign in to the Web Console and open the page for your application. On the right hand side, it will show the initial Git repository for your application. You may have to mouseover or click on the link to see the whole thing.
Web Console

CLI

Run rhc app. Under your application, it will list the "Initial Git URL".

> rhc apps
ironmq @ http://ironmq-fotios.rhcloud.com/ (uuid: XXXXXXXXXX)
---------------------------------------------------------------------------
Domain: fotios
Created: 4:45 PM
Gears: 1 (defaults to small)
Git URL: ssh://XXXXXXXXXX@ironmq-fotios.rhcloud.com/~/git/ironmq.git/
Initial Git URL: git://github.com/openshift/ironmq-openshift-quickstart.git
SSH: XXXXXXXXXX@ironmq-fotios.rhcloud.com

Using the New Upstream

I'll outline two approaches for using the new upstream and updating your quickstart code.
Depending on how much you've diverged from the original quickstart, you may want to just edit those files in the new code (for instance if you've just added credentials). If you've made significant changes, you will want to cherry-pick your changes onto a new branch. All of these commands will take place from within a Git checkout of your application.

  1. Make Sure Your Git Repositories Are Synced
    First things first, make sure you've pushed any local changes to your OpenShift repository and that it still works as expected. By the end of this process, we will have overwritten your local master branch with the master branch from the new upstream (with any of your changes added to it).

  2. Add New Upstream

    git remote add upstream http://<path to new upstream>
    git remote update
  3. Create New Branch
    We will do this so we can try out our changes without being destructive to our master branch. From this point forward, you will be working on your new_master branch.

    git checkout --track -b new_master upstream/master
  4. Make/Cherry-Pick Changes
    You can see what changes you've made by running git whatchanged master 3 (you can also add the -p flag to show the actual code changes or git show <SHA> to show a specific commit ID).
    At this point, if you just want to manually make your changes, just update the files accordingly, commit your changes, and skip to the next step.
    If you want to cherry-pick your commits, the simplest way is to run the following command for each commit you want to rebase. Depending on your version of Git, you may be able to include a range of commits to cherry-pick.

    git cherry-pick &lt;SHA&gt;
  5. Push Changes to OpenShift
    Now we'll make sure your new changes are successful. If this step fails, you may need to fix some files you've changed.

    git push origin new_master:master -f
  6. Change Your Local Master Branch
    Once everything is working, you want to make sure you update your local branches to work with the new code.

    git remote update
    git checkout master
    git reset --hard origin/master
    git branch -D new_master

Wrap Up

At this point, you should have all of your changes replayed on top of the new quickstart code. If you have any problems, please post comments here and we can help you through them.


  1. SendGrid may also have been from openshift-quickstart/sendgrid-openshift-quickstart?

  2. For Drupal 8, see phase2/drupal-quickstart ?

  3. To further filter this, add --author <your email> which will only show your commits after deploying the quickstart (unless you submitted commits to the upstream quickstart, in which case you probably don't need this guide) ?


Categories

News

< Back to the blog