Jenkins Continues Integration setup for Scala Maven project - scala

We have started working on developing a Spark-Scala Maven project.We are a team of 6 developers commit code to git repository. We use Intellij IDE and codehup repository using GIT . Need to setup Jenkins for Continues integration testing and build. Could you please some one help me an approach to setup Jenkins or Spark-Scala project, Specifically needs a scala- jenkins in POM.XML?
Any help is greatly appreciated.

Actually this is not a really answer, but I'd like you do the following steps:
Copy your question's title
Search it in google
You will get a lots of results for this topic, and somethings will be interested your like
Continuous Integration and Continuous Deployment with Scala
Then for any problem you encountered, than ask the dedicated detailed questions.
That's it, thanks.

Related

Retrieve build info of a SNAPSHOT jar from artifactory using gradle

Before going forward, I realize this question is too broad. But I couldn't figure out the proper verbiage to search either here in SO or on GOOGLE.
If this question is a duplicate, then please excuse me in advance and provide me the link to the original question.
Problem :
We are working on creating testing framework. One of the requirements is to publish a report at the end of the testing phase with build information. We need to provide information like who committed the latest change we are testing, what is the build version we are using for testing etc.
In our current setup, We are using github as SCM. Whenever there is a commit to the SCM, a build is triggered on Jenkins and if the build is successful, the jar is deployed to JFrog Artifactory. I am trying to come up with a gradle script to get the necessary information.
Any pointers to the following questions are highly appreciated:
Which plugin can I use to retrieve the info for a SNAPSHOT jar from Artifactory?
Which plugin can I use to retrieve Jenkins build info using the build number retrieved from Q1?
Not sure this is what you were asking for, but have you looked into the Artifactory Build Info file?
The Artifactory Jenkins Plugin can collect build information for you and publish that information to the Artifactory server (If you choose to "collect and publish build info").
The build information can then be viewed on the artifactory server and also fetched using a simple REST call.
HTH,
Or

automated test, code coverage, static analysis and codereview

I used to be developer long ago but for last 10 years working on system ops. I am planning to move into devops and trying to sharpen my saw. However, when it comes to jenkins and specially static code analysis, code coverage, automated test and code review, I get so much confused.
Lets start from automated test ( for simplicity take unit test). I understand that we write a separate class file for unit test. But how does that test is carried out? Will jenkins create a jvm where the newly build artifact is deployed and the tests are run against it? or will the test be run against code ( I do not think but still want to clarify)?
I downloaded one example application with maven and codertura from github and build the project. When the build was completed, it publishes code coverage report.
I have not done any post build, for deploying the artifact. So, I am not sure how it works, and what did it do and how?
Thanks
J
Here is a common flow that you can follow to achieve your requirement.
Work with code --> Push to gerrit for review --> Jenkins gerrit trigger plugin get triggered --> The corresponding job will checkout the code you committed and do the compile, package, unit test, deploy to artifactory --> Execute the sonar build to analysis the code quality, static analysis, code coverage...
Br,
Tim

Good lightweighted Continous integration tool to use with github?

I am developing a small python web service with bunch of analytical codes and searching for a lightweighted, easy-use but all-around Continuous Integration tool to use together with github.
I push my code onto github and hope that by every pushing continuous integration can run tests and check the integreity
some recommended tools from github website https://github.com/integrations
like cloudBees, circleci etc.
Which kinds of CI tools is best for me at this moment ? thanks a lot
And would be kind if you could give some tips/good tutorials on coutinuous workflow(development and deployment) with github and docker
Like Jake said I would say that a cloud based tool like SnapCI, Circle or Travis would work well for you as you are already hosting your source in the cloud. If you are working on a public repo many of these tools are free.
In order to help with Docker and Github you'd need to be more specific about your needs.

Has anyone integrated Stratosource and Jenkins for continuous integration?

So I have a current CI setup that enables me to pull metadata from Salesforce org(using Jenkins + Ant migration tool), push it to git, create a package out of it and then re-deploy this package to another Salesforce org.
I have been hearing good things about Stratosource, and would like to know if anyone has managed to integrate Stratosource with Jenkins as part of Continuous Integration cycle.
If so, could someone please provide a few pointers?
I have tried searching for it, but apparently not many documents exist on this topic.
Thanks!

${CHANGES} does not work in the mail-ext plugin if jenkins job is driven by a bash script

I have setup a Jenkins job to build a project. I'm using email-ext plugin to send out build notifications with the intent of showing who did what and the path to the files changed. But unfortunately I'm not getting anything. I believe the reason why is that under "Source Code Management" I'm setting it to "None". My shell script that I'm using to drive the build is responsible for check-in out a copy of the code based on a CVS tag and run maven to do the build. In the ext-email i'm using the following syntax
${CHANGES_SINCE_LAST_SUCCESS, reverse=true, showPaths=true,
format="\n====\nChanges for Build # %n\n%c\n",
changesFormat="\n[%r] %d %a %m %p\n"}
Same thing with CHANGES: ${CHANGES, showPaths=true}
Is there a way of getting CHANGES and CHANGES_SINCE_LAST_SUCCESS to work if None option is used under Source Code Management?
Thanks for your help folks.
EmailExt plugin gets that info from Jenkins. As Jenkins has access to that info only via its SCM plugins the answer is "no", you can't do it without specifying the SCM option.
There are two things you can do:
(1) Do it by hand. Which with CVS, if I remember correctly, means having a working copy checked out anyway.
(2) Use SCM checkout/update option, but store the working copy on the side without using it in the build. You'll use twice as much disk-space, but nowadays disk-space is not a problem.
By the way, why are you using CVS? SVN, GIT, and Mercurial are all free.