how to pass parameter in custom command in Gocd tool? - continuous-integration

I am trying to use go cd for continuous delivery and create a pipeline for the same. I m able to get success result after running the job but in that job i did not pass any parameter.I want to pass parameter in custom command to reduce repetition within my configurations.

We can pass parameter via a environment variable -eg If you want to pass a version in your custom command and value is 1.2.4 so define the value in environment variable and pass the value in your command for example ./abc #{version}.
You might get error while editing the command (Parameter is not defined error) add the same varibale in parameter tab as well .[![enter image description here][2]][2]

I could not get the clear picture of what you are expecting. But as far as I could understand, you want to perform a custom command task by passing few parameters as input.
When you choose custom command, you will get something like
In Arguments block, you could give the input parameters you need to pass for that particular task.
Edit : I think this may help you.
Parameterize your Configuration
Please go through this link and see whether this helps you. They had explained about defining and using the parameter in a pipeline

Related

How to use sparse checkout options using DSL

I'm not sure how to use sparsecheckoutpaths option in a DSL script. If I don't pass any argument then it works fine, but it's not working when I pass any argument, so I just need the sample code for using this option.
I tried to pass string, list but it's not taking any option.
ERROR: (script, line 13) No signature of method: javaposse.jobdsl.dsl.helpers.scm.GitExtensionContext.sparseCheckoutPaths() is applicable for argument types: (org.codehaus.groovy.runtime.GStringImpl) values: [testValue]
You can not configure sparsecheckoutpath directly via job dsl. You have to use the configure block like in this answer.

Dialogflow update context in the console

I have a requirment where I want to append the parameter to context in the frontend screen.
I can do it via webhook as :
1. Get Context Param1 and Parameters Param1
2. Append Context Param1 with Parameters Param1
3. Set Context
But is it possible to do it from the frontend? We can access the context variable using #contextA.variableB. But can we write groovy or some other expression in the Argument section like $variableB+#contextA.variableB ?
I hope you got my ask, let me know if the question is not yet clear, I will try to give brief example as well.
Thanks in advance.
No.
Through the console alone, context parameters are set to the value of the parameters set from the sample phrases.
If you need to set context parameters to something else, you need to use fulfillment. You can use the built-in fulfillment editor, but you'll need to use something.

Set a parameter in a parameter file and use it in a same workflow

I have a requirement to set a parameter say a timestamp in a parameter file using a command task that triggers a Unix shell script that does this task in a workflow and later in the same workflow, use the parameter that is set earlier. Is that possible?
The informatica version used is 9.6
You need to define the Parameter file property on a Session. Not just set the parameter value for a session, but make the session read the paramfile.
With Workflow parmeter file it works like this (briefly speaking):
Workflow is initialized and reads the assigned parameter file. All variables are set.
Upon session initialization all the variables and parameters are already set .
The file is not read again, variables are not re-set.
However, once a parameter file is defined as Session property, it works in a bit different way.
Workflow is initialized and reads the assigned parameter file. All variables are set.
Session is initialized, and it reads its own parameter file, setting all variables and parameters.
In this case, the values defined in session parameter file will be used.
Of course, it is not necessary to use Workflow level parameter file.
It is also possible to have one session that generates the parameter file for the very next session to use it. Provided it is defined as session property, as mentioned above.
I got the solution :). Dont know if there is any other option. But the trick that worked for me is, if you have to set a parameter and then read back the parameter to use it in the same workflow sue to whatever requirement, then you can set the parameter and then use it in a session inside a worklet, and this perfectly works. I am not sure why but this definitely works :)
You can use the Assignment task for this purpose. Set a workflow variable and use it wherever you want in the same workflow.

Runtime Test Data for Testscript in TestComplete

I started using Test Complete to automate Desktop application.
The issue is scripts holds the value which i entered while recording and the value is hard-coded.
i want the pass the value during run time. how can i achieve it?
This depends on how you want to do this. If you want to put it to your test as a parameter from another test or using a project's test item, you can define a keyword test parameter (see Keyword Test Parameters).
If you want to make a human user specify a value on runtime (although this is not very "automated"), you can create a user form that will request this value (see User Forms - Overview).
And if you want to pass a parameter to your test using command line, you can use script to read parameters from the TestComplete command-line, assign a project variable with this value and then use this variable instead of a hard coded value. See ParamStr Method, ParamCount Method and Project And Project Suite Variables.
And if you want to feed your test with some data from an external source, you can do this using the data-driven testing feature of TestComplete. See Data-Driven Testing.

Using parameters as user Defined Variables?

We run our tests in non gui mode and pass in various parameters like Server, port, threads etc. We'd also like to run our test in GUI mode, and be able to change these parameters in the GUI.
What I wanted to do, was use 2x User Defined variable objects, and have one with static data we can edit, and another with parameters. That way the actual test plan doesn't change, but we can set variables as parameters, and just disable the static data one. Or disable the parameterized one when we want to run with static data.
But this doesn't seem to work - no errors nothing.
I do something similar, but I used a UDF for this.
What I did was set up my variables and use default values.
VARNAME VALUE
otl_PROTOCOL ${__P(otl_protocol,https)}
otl_PORT ${__P(otl_port,443)}
otl_THREADS ${__P(otl_threads,1)}
otl_REPS ${__P(otl_reps,1)}
otl_RAMP ${__P(otl_ramp,0)}
I did one for server name as well. This way, I can use the defaults here or I can pass in parameters in either the command line args or in my user.properties. This works very well for me.
How are you passing in values from non-GUI mode? via CSV, using properties, User-Parameters, etc.?
If CSV, this is an easy fix. Simply create a User Defined Variables (UDV) object at the Test Plan Level and "hard code" all your parameters (Server, port, etc.). Keep your CSV config. If you run in GUI mode, disable the CSV and enable the UDV. When you save the file, keep the CSV enabled and the UDV disabled - that way when you run from non-GUI it'll read the CSV file.
If using properties, I would do the following: Create a UDV with all your parameters (Server, etc.). Before entering values, copy the component so you have TWO identical UDVs. In UDV 1, enter the property value from the command line. In UDV 2, enter the "hard coded" values. Throughout your script, replace any references to the properties with variable references. It would look something like this:
UD1: UD2:
Name Value Name Value
SERVER ${__P(Server)} SERVER devdomain.com
PORT ${__P(Port)} PORT 4111
Some HTTP Request
Domain: ${SERVER}
If using user-parameters, it would be the same concept as above.
Actually i am using a function named as regular expression for getting value.
here i have to use variable under variable because there is lots of value with same boundary, so i have selected one paragraph as ${ABC} and fetching value from this paragraph ${XYLEM}. both the variable created as regular expression.tried with ${__V(ABC${XYLEM})};
${__setProperty{Search_Investment_Banking,$Investment_Banking}};

Resources