How to configure jenkins with rails to perform deployment - deployment

I using Ubuntu 12.04 LTS and i want to configure Jenkins with rails to do deployment process.
Actually i configured with
Github plugin, Ant Plugin, Brakeman Plugin, Cloudbees Deployer Plugin, conditional-buildstep, Credentials Plugin, Deploy to container Plugin, External Monitor Job Type Plugin, Git server plugin, GitHub API Plugin, Github Authentication plugin, GitHub plugin, Github Pull Request Builder, GitHub SQS Build Trigger Plugin, Hudson SCP publisher plugin, Javadoc Plugin, Jenkins CVS Plug-in, Jenkins GIT client plugin, Jenkins GIT plugin, Jenkins Grails plugin, Jenkins Mailer Plugin, Jenkins Parameterized Trigger plugin, Jenkins Rake plugin, Jenkins ruby metrics plugin, Jenkins SSH Slaves plugin, Jenkins Subversion Plug-in, Jenkins Translation Assistance plugin, Job Generator, LDAP Plugin, Maven Integration plugin, PAM Authentication plugin, project Description Setter, ruby-runtime, Run Condition Plugin, SSH Credentials Plugin, Static Analysis Utilities, Token Macro Plugin
PLease do let me know the ways or steps to configure Jenkins ci with rails and let me know the Plugin which needs to be added and removed by verifying above. Thanks in advance.

There are many ways to deploy your rails application. Using capistrano, git, scp, rsync, or even using third party hosts like heroku. Jenkins is just going to automate the process that you will have designed.
So it really depends on what you have decided. Your post doesn't contain enough information.

Related

sonar jenkins github integration

In reference with the post
jenkins + sonar + github integration
What setting is required in sonarqube? Does Sonar and Jenkins reside on the same box? How will Sonarqube be able to communicate with github? I am able to get the pull request triggering the Jenkins Job which is calling the sonar analysis, but the sonar comments are not getting added back to github. I am able to add the Jenkins build status but not the sonar analysis . Can someone point to the right direction
SonarQube don't need to communicate with GitHub.
Jenkins have a plugin "Git-Plugin" used to connect with it, you only have to paste the repository url there.
Jenkins have a plugin "SonarQube Plugin" used to call sonarQube, this will return a status after sonnar analysis.
Then you can create another task in Jenkins to makes changes in GitHub according to the status.

Jenkins GitHub OAuth plugin not visible in securityRealm

I set up jenkins and I would like to use Github authenticator. Plug-in was installed properly but in Global Security I can't find Github oauth option in Security Realm and Authorization Strategy.
Is there any dependency for the plug-in (besides these installed automatically) or something?
In plug-ins I had every needed plug-in enabled but still in folder $JENKINS_HOME/plugins there was file github-api.jpi.disabled.
Remove the file and restart Jenkins.
Now Github Anthentication Plugin is visible in Security Realm

Is it possible to use git hub login for local sonar application?

Is it possible to use git hub login for sonar application?
Just like Jenkins can be configured.
if possible please provide steps to configure.
A SonarQube GitHub Authentication Plugin has been created since the accepted answer was written.
For SONAR you need not connect with GITHUB directly, use jenkins to get the latest code to your agent and in the smae job invoke your sonar analysis - either using runner or maven goals, it should work fine
There is currently no plugin allowing the delegation of authentication to GitHub

How to validate GitHub is communicating with OpenShift cartridge running Jenkins?

I have a GitHub hook for a new check-in, but it is not being received by Jenkins (running on a RedHat OpenShift cartridge).
Setup
RedHat OpenShift cartridge running Jenkins
Jenkins plugins in-play
GitHub plugin v1.8
Github Authentication plugin v0.14
Jenkins GIT client plugin v1.4.5
Jenkins GIT plugin v2.0
Public GitHub repository
Debugging
I have narrowed it down specifically to GitHub communicating with OpenShift, but am unsure how to troubleshoot any further, or resolve the issue. To narrow it down, I performed the following steps:
Configured one of each of the following types of Service Hooks in GitHub and captured the results in RequestBin
WebHook URL
Jenkins GitHub Plugin
Jenkins Git Plugin
I then ran Test Hook from GitHub
I took the resultant headers and payload from each RequestBin and manually created a POST request in Fiddler, pointing to the webhook endpoint
I saw some action on Jenkins by logging against com.cloudbees.jenkins.GitHubWebHook
However, the Test Hook from GitHub and checking into the repository never reached the server, at least not as evidenced by the logs.
I believe I have narrowed it down to an SSL issue. GitHub will not post the webhook to an OpenShift configured Jenkins cartridge, because it only responds to SSL/HTTPS. I am not sure of the specifics of how the canned Jenkins cartridge is configured, or how to change whether or not it uses SSL.
It is possible to change whether or not the OpenShift cartridge uses SSL, but I did not want to spend the time to get into it. The solution is to create your own cartridge definition, where you can specify all the settings, specifically which endpoints get created. Here is the OpenShift reference to generate the proper endpoints in case anyone wants to go that route.
I believe I have narrowed it down to an SSL issue. GitHub will not post the webhook to an OpenShift configured Jenkins cartridge, because it only responds to SSL/HTTPS. I am not sure of the specifics of how the canned Jenkins cartridge is configured, or how to change whether or not it uses SSL.
It is possible to change whether or not the OpenShift cartridge uses SSL, but I did not want to spend the time to get into it. The solution is to create your own cartridge definition, where you can specify all the settings, specifically which endpoints get created. Here is the OpenShift reference to generate the proper endpoints in case anyone wants to go that route.

Why can I not see the cloudbees github plugin

Trying to follow the instructions at http://developer.cloudbees.com/bin/view/DEV/GitHub+Commit+Hooks+HOWTO
but I don't see the github plugin in the list of available or installed jenkins plugins.
What am I doing wrong?
Ok, so I contacted CB support and they told me what the docs said: install the plugin. I go to confirm that I still don't have the plugin available to me, and it's now available. Not sure if they changed something or it was just a glitch, but I'm now able to follow the docs and get github working.
The Cloudbeeds blog does list the requirements:
Requirement for Plug-in Use
Jenkins 1.400 or newer
Jenkins Git Plugin version 1.1.12 or newer
At least one GitHub hosted project to build ;-)
Step-by-Step Instructions on How to Use it: Installation
Go to your Jenkins instances root page.
If your Jenkins instance has security enabled, login as a user who has the Overall | Administer permission.
Select the Manage Jenkins link on the left-hand side of the screen.
Select the Manage Plugins link.
On the Available tab, select the Github Plugin and click the Download and Install button at the bottom of the page (if you do not got the Git Plugin installed, do not worry, Jenkins is smart enough to install/upgrade the Git plugin, where required).
Restart Jenkins once the plugins are downloaded (Note: users of Jenkins 1.442 or newer should be aware that the plugin currently requires a restart to function correctly).
So there could be many reasons (like the Jenkins version) why you don't see the Jenkins GitHub plugin, the most usual one being to be logged on a non-Administor account.
As the OP TomL confirms in his answer, if the plugin is still not visible to be installed, only CB support can make it visible.