Wednesday, June 18, 2014

Comparison of the methods of Binary deployment to OpenShift

This is the last writeup in the 4 part series on binary deployments to OpenShift. You can find previous posts with detailed discussion on each approach at

Part 1 - Binary deployment to OpenShift
Part 2 - Binary deployment to OpenShift using rsync
Part 3 - Binary deployment to OpenShift Using GIT

Comparison


Approach
Openshift as Jenkins slave
Behavior
Advantages
Limitations
Deploy using rsync
No
Generated war is directly deployed to Openshift application’s runtime.
1. It is simple unix command.
2. Only working solution currently, approach suggested by Redhat support.

1. It requires an openshift application pre-created. Tooling required to configure the UUID of the application to be copied to Jenkins job.
2. No rollback support will be provided since we are copying the war manually.
Openshift’s rhc commands
No
Generated war is packaged in .zip/.gz and same can be deployed to pre-created application.
1. Rollback support provided by Openshift.
2. It could also ensure to sync the war to other openshift gears of the same application
3. Openshift supported command.
1. Need tooling/gradle task to create the openshift typical structure.
Using GIT to deploy binary

Commit the war file to GIT repository associated with application
Use Git push to deploy
1. Take full advantage of OpenShift GIT application deployment lifecycle
2. Rollback support
3. Deployment to scaled application supported out of the box
1. Some traces of GIT in development lifecycle
2. Extra overhead of cloning and committing binary artifact in GIT repository
3. Overhead in automating and maintaining this process

No comments:

Post a Comment