Execute MSpec console runner with wildcards in assembly path - gitlab-ci-runner

i want to execute mspec console runner with wildcards in the assembly path.
mspec.exe <.\src\*\bin\Release\*.Tests.dll>
How is it possible to accomplish this behavior with mspec console runner?

Not possible.
Use a build script or a shell (i.e. not cmd.exe) to achieve this. They support expanding globs to actual filenames that you can pass to the runner.

Related

Snyk monitor command is failing

I am running below SNYK command for standard WAS application.
snyk monitor --all-projects
It is failing because there is a war-src module which contains ${project.version} tag and this version is mentioned in main pom.xml inside property tag...when i run snyk monitor command it is not picking up the version ${project.version} and throwing error.
In snyk document saw that we can pass maven options using build tool command. Whatever command mentioned below is correct? If not Please let me know how can i make use of this?
snyk monitor --all-projects -- -Dproject.version=2.1.0
Yes. You can use the double dash to pass additional arguments to Maven. The command you wrote is the correct way to pass the -Dproject.version=2.1.0 argument to Maven

Visual Studio Code tasks & debugging

I use a gulp task to run my node.js unit tests, and a VSCode task to execute this gulp task. Now I'd like to debug my tests. Unfortunately, VSCode ignores break points when running the task. Apparently it uses the default run mode instead of the debug mode when starting a task.
Is there a way to tell VSCode to execute a task in debug mode?
Here is an example for mocha tests: https://gist.github.com/paambaati/54d33e409b4f7cf059cc#gistcomment-1835655
In other cases you have to create a launch.json to debug you code. In this configuration you can set the preLaunchTask property to the name of your gulp task. If your task is configured as isWatching you might also need to configure a problemMatcher otherwise the task will not allow the debugger to start before the task ends.

Build status jenkins

How can i access jenkins build status at runtime without email-ext plugin?
i want to access build_status using environment variable of jenkins. Or Any other way to access build status variable of jenkins?
The default Jenkins environment variables don't include the build result.
However, you can use the Groovy Postbuild Plugin, which is run under the Jenkins JVM and have access to the current instance of the build.
Then from groovy you can access the build result via manager.build.result. See my answer here for the example usage.
You can use currentBuild.currentResult which is a global variable inside jenkins server to access the current build status. These variables are accessible inside pipelines.
Further you can check all the available global variables inside the server using below url
http://<server>/pipeline-syntax/globals

Junit reports for Hudson

I am able to successfully run my JUnit test suite from the command line and now I want run these tests from Hudson.
However , for Hudson to generate the reports , it needs a results file (I think in xml format) .
How do I generate a results file from JUnit ?
I am using the following command to run the tests :
java com.nvidia.tests.TestSuite1
Thanks in advance .
Parag.
If you're using ant, you can look at the JUnit task for ant. This is probably the easiest way. You can just add the task at the appropriate place in the script.
If you're using maven, look at the surefire plugin for maven which will automatically run the tests and create the reports in jenkins.
EDIT: If you're not using any build tool (which you should be), then just add the ant build script to jenkins, and you should get the reports automatically.

Hudson build fails when run in browser but works from command line

I am setting up a new Hudson task (on WinXP) for a project which generates javascript files, and performs xslt transformations as part of the build process.
The ant build is failing on the XSL transformations when run from Hudson, but works fine when the same build on the same codebase (ie in Hudson's workspace) is run from the command line.
The failure message is:
line 208: Variable 'screen' is multiply defined in the same scope.
I have tried configuring Hudson to use both ant directly and to use a batch script - both fail in Hudson.
I have tried in Firefox, IE6 and Chrome and have seen the same issue.
Can anyone suggest how we can workaround this problem with Hudson?
Problem solved.
Our build is actually dependent on jdk 1.4.2, and Hudson appears to run using 1.6. When I set Hudson to run as a service, it ran as my local user, which meant that it picked up the 1.4.2 JAVA_HOME environment variable - and therefore worked.
I guess another possible solution is to configure Hudson to use 1.4.2 by default.
I would assume this is not an issue with Hudson directly, as it is with the build script and/or the environment itself.
Is your build script relying on certain environment variables being defined, or worse, the job running from within a certain directory structure (i.e. it works if it's run from under /home/mash/blah but not from under another directory like /tmp)? Is the build script making reference to external files by relative paths?
These are the things I would look into. For environment variables, you can tell Hudson to pass these into Ant. For the other issues, you probably want to change your build script. Check the console output provided by Hudson, and maybe set Ant to print verbose/debug messages to get a better idea about the environment/filepaths.