How to use Extended Choice Parameter plugin for check box

41,825

Extended Choice Parameter plugin is the way to go for such requirement. You need to select Extended Choice Parameter from the drop-down list as shown below.

enter image description here

Once you select that option, you will see another drop-down with the name Parameter Type as shown in the snapshot below. Select Multi Select from that drop-down. Enter the server names in Value box. Comma (,) is the delimiter.

enter image description here

Now if you run the command echo "Server: $Hostname" on *nix systems after selecting one (or more than one) server, you will get all the selected server(s) in the command output.

Now to address your query of displaying names such as Dev/QA instead of actual server names, you will obviously have to do some amount of scripting. Since you are taking the server names in a string, you will first have to split the string using comma (,) as delimiter to fetch individual values (servers). And then you will have do check each server and assign values to it. A pseudo code such as:

if ( str eq server1 ) {
    host = QA;
} elsif ( str eq server 2 ) {
    host = Dev;
} and so on...

I wrote a similar script in Perl few back back. You can use your language of choice (bash, batch etc.)

To pass these variables in subject line of your mail etc., you will have to use EnvInject Plugin as suggested by Slav. You can write the value (QA/Dev) in some file while running your if...else code so that it could be later used by the EnvInject plugin. Just in case, if you want an alternative way, you can simply use the system's mail command depending on the flavor you have.

Share:
41,825
Admin
Author by

Admin

Updated on October 24, 2020

Comments

  • Admin
    Admin over 3 years

    Currently I am using Choice parameter to input the hostname in a drop-down like below.

    • server1
    • server2
    • server3

    I am include the selected value in property.

    Server=%Hostname%
    

    Also I am invoking the same in post build actions-->Email Notification-->Subject-->Login success for $Hostname.

    But my requirement is instead of a drop-down I need a check box option for server1, server2 & server3 so that I can select multiple servers at one time and build the job.

    Also I need to include the hostname in property and in email subject. But the Email subject should not contain the actual hostname (server), instead it has to be a different name.

    Let's say,

    server1 = DEV
    server2 = QA
    

    The property should take "server1" value and the email suject should take "DEV".

    I am trying to use Extended Choice Parameter plugin, but I am stuck, so any help would be really appreciated!