build order of post build actions in hudson - hudson

I want to run an integration test an to an WAR (in tomcat) using hudson as continous build server.
The post build action to start a script is higher on the list than the deploy action, so I assume it is executed BEFORE the deploying is done.
So how do I deploy and THEN start a script to run my test?

The way I see it, is to write a script to deploy WAR on desired Tomcat server (it should not be complicated) instead of using deploy plugin and then run the script with test.

Related

Installing triggers on AppMaker deployment

When I deploy my AppMaker app to a deployment, I'd like to execute some code to automatically install the relevant triggers.
Is there a way to install triggers when the app is deployed?
You can use the App Startup option to run some logic when the app starts. Maybe use the Properties Service to save a property that contains a value indicating if the triggers have been installed or not and everytime that the app starts, check if the triggers are installed and take action based on that.

Run API test in CI (Jenkins)

What is the best way to run an API test that was created via the IBM API Connect Test and Monitor ?
I published a test and I would like my CI sever (jenkins or azure devops) to run it?
Many thanks,
Assaf
Great question Assaf. It is currently not possible in the product, however, is on the roadmap and is coming soon.
We will have APIs and Webhooks to help execute tests as part of your CI/CD processes. Meaning, the same tests you generated using the test composer and run in production can be recycled to ensure your deployments are error free.
As well, Jenkins is an industry standard so we will be providing a plugin to help facilitate the API testing processes via GUI. More details to come, will update this space when it does.
Alternatively keep your eye out here: http://ibm.biz/apitest

Does ClojureScript project need a process manager?

I want to start a project that using Node.js+Express.js+ClojureScript in light of https://gist.github.com/jneira/1171737 . But I am afraid that if I deploy the project to production environment, it should be protected by a process manager, like pm2 in a Node.js project.
As far as I know, pm2 is needed by a Node.js project because that Javascript in Node.js is single-threaded, so exception will cause Node.js apps to halt. pm2 will protect the app and make it running forever.
But does a ClojureScript project running in Node.js need a process manager? If so, how should I do the work like pm2?
Thanks!
As ClojureScript compiles to javascript there is no difference in the tooling you can use to manage the node.js process. You can just follow the normal pm2 instructions if you want to use pm2. If you are running a web server I'd suggest you also check out passenger.
And on the actual need to use a process manager, and which manager to use in that case: Those are depending a lot on personal taste / opinion.

How to test openshift action_hooks prior to git push to Openshift server

I have been looking at Openshift docs and on Stack Overflow for a while now and I can't seem to get any answers.
I want to know what the standard pattern is for developing applications for deployment on Openshift? I am especially concerned with testing of action_hooks prior to deployment. I found this particularly troublesome when I was using a DIY cartridge recently where I had to deal with downloading dependencies in my build script prior to starting my application. As my application kept failing to start every time I made a change and pushed it (I only did this as an initial test of the Openshift service, I would never develop like this). I ended up having to ssh onto my instance and resolve the issue by trial and error (not really ideal).
I appreciate any help anyone can offer.
Thanks
The only way that I am aware of to test action hooks on OpenShift is to ssh into an application and run them manually from the command line. This way you can quickly debug & update them. Then copy them to your git repository and do a git push to deploy the new code.
The only other way I can think of would be to run OpenShift Origin (v2) locally and use that to test with.

Integration of Selenium Webdriver with Hudson - Unable to open the browser

I have integrated my selenium Webdriver scripts (using TestNG) with Hudson. i invoked my job through ant . My problem is my scripts are not running successfully also the IE browser is not getting opened However Build is creating successfully.
Note -
1) I am triggering build on Hudson from different machine on the same network with administrative access.
2) I have used excel 2007 for developing the script ( data driven framework) however on Hudson server its open office.could that be the issue?
At this moment i am not using selenium grid .please provide any suggestion
The reason for this is because Hudson/Jenkins is running as a Windows service. Recently, Microsoft changed services so that they run on their own invisible desktop. This didn't used to be the case until a few years ago. For this reason, even if you check "interact with desktop" , the desktop that is being referred to is invisble .
So, what you have to do is run Jenkins (not Hudson) as a service only for the master server. For the Selenium tests, you need to run another slave Jenkins server as a foreground shell process and the selenium tests need to be launched from that Jenkins instance instead.
If you think the instructions for setting up a slave are too hard, then you should know that it isn't required that you run as an official configured slave. You can run as a separate slave (make sure port number is different).
Also, if you are running Grids and Nodes on Windows, you might like these scripts I made.