{"id":35667,"date":"2023-05-30T02:16:39","date_gmt":"2023-05-30T02:16:39","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=35667"},"modified":"2023-05-30T02:16:41","modified_gmt":"2023-05-30T02:16:41","slug":"jenkins-tutorials-variables-in-scripted-pipeline","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/jenkins-tutorials-variables-in-scripted-pipeline\/","title":{"rendered":"Jenkins Tutorials: Variables in Scripted Pipeline"},"content":{"rendered":"\n<p>In a scripted Jenkins pipeline, you can use different types of variables depending on your requirements. Here are examples of different variable types commonly used in scripted pipelines:<\/p>\n\n\n\n<p>In a scripted pipeline, you can define variables using the <strong><code>def<\/code> keyword<\/strong>. Here&#8217;s an example of how to define a variable in a scripted Jenkins pipeline:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">node {\r\n    stage(<span class=\"hljs-string\">'Example'<\/span>) {\r\n        <span class=\"hljs-comment\">\/\/ Define variable using def<\/span>\r\n        def myVariable = <span class=\"hljs-string\">\"Hello, Jenkins!\"<\/span>\r\n\r\n        <span class=\"hljs-comment\">\/\/ Access and use the variable<\/span>\r\n        <span class=\"hljs-keyword\">echo<\/span> myVariable\r\n\r\n        <span class=\"hljs-comment\">\/\/ You can also use the variable in conditional statements or within steps<\/span>\r\n        <span class=\"hljs-keyword\">if<\/span> (myVariable == <span class=\"hljs-string\">\"Hello, Jenkins!\"<\/span>) {\r\n            <span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-string\">\"Variable value matches!\"<\/span>\r\n        } <span class=\"hljs-keyword\">else<\/span> {\r\n            <span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-string\">\"Variable value does not match!\"<\/span>\r\n        }\r\n    }\r\n}\r\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>In the above example, we define a variable <code>myVariable<\/code> using the <code>def<\/code> keyword and assign it the value <code>\"Hello, Jenkins!\"<\/code>. We then echo the variable&#8217;s value and demonstrate its usage within an <code>if<\/code> statement.<\/p>\n\n\n\n<p>Note that the <code>node<\/code> block is used to allocate a Jenkins agent to execute the pipeline steps. Inside the <code>stage<\/code> block, you can define and use variables as needed.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Types of variables in Scripted Pipeline<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">String Variable:<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">node {\r\n    stage(<span class=\"hljs-string\">'Example'<\/span>) {\r\n        <span class=\"hljs-comment\">\/\/ Define a string variable<\/span>\r\n        def myString = <span class=\"hljs-string\">\"Hello, Jenkins!\"<\/span>\r\n\r\n        <span class=\"hljs-comment\">\/\/ Access and use the string variable<\/span>\r\n        <span class=\"hljs-keyword\">echo<\/span> myString\r\n    }\r\n}\r\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Integer Variable:<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">node {\r\n    stage(<span class=\"hljs-string\">'Example'<\/span>) {\r\n        <span class=\"hljs-comment\">\/\/ Define an integer variable<\/span>\r\n        def myInteger = <span class=\"hljs-number\">10<\/span>\r\n\r\n        <span class=\"hljs-comment\">\/\/ Access and use the integer variable<\/span>\r\n        <span class=\"hljs-keyword\">echo<\/span> myInteger\r\n    }\r\n}\r\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Boolean Variable:<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">node {\r\n    stage(<span class=\"hljs-string\">'Example'<\/span>) {\r\n        <span class=\"hljs-comment\">\/\/ Define a boolean variable<\/span>\r\n        def myBoolean = <span class=\"hljs-keyword\">true<\/span>\r\n\r\n        <span class=\"hljs-comment\">\/\/ Access and use the boolean variable<\/span>\r\n        <span class=\"hljs-keyword\">if<\/span> (myBoolean) {\r\n            <span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-string\">\"The boolean variable is true.\"<\/span>\r\n        } <span class=\"hljs-keyword\">else<\/span> {\r\n            <span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-string\">\"The boolean variable is false.\"<\/span>\r\n        }\r\n    }\r\n}\r\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">List Variable<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">node {\r\n    stage(<span class=\"hljs-string\">'Example'<\/span>) {\r\n        <span class=\"hljs-comment\">\/\/ Define a list variable<\/span>\r\n        def myList = &#91;<span class=\"hljs-string\">\"apple\"<\/span>, <span class=\"hljs-string\">\"banana\"<\/span>, <span class=\"hljs-string\">\"orange\"<\/span>]\r\n\r\n        <span class=\"hljs-comment\">\/\/ Access and use the list variable<\/span>\r\n        <span class=\"hljs-keyword\">for<\/span> (item in myList) {\r\n            <span class=\"hljs-keyword\">echo<\/span> item\r\n        }\r\n    }\r\n}\r\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Map Variable:<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">node {\r\n    stage(<span class=\"hljs-string\">'Example'<\/span>) {\r\n        <span class=\"hljs-comment\">\/\/ Define a map variable<\/span>\r\n        def myMap = &#91;name: <span class=\"hljs-string\">\"John\"<\/span>, age: <span class=\"hljs-number\">30<\/span>, city: <span class=\"hljs-string\">\"New York\"<\/span>]\r\n\r\n        <span class=\"hljs-comment\">\/\/ Access and use the map variable<\/span>\r\n        <span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-string\">\"Name: ${myMap.name}\"<\/span>\r\n        <span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-string\">\"Age: ${myMap.age}\"<\/span>\r\n        <span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-string\">\"City: ${myMap.city}\"<\/span>\r\n    }\r\n}\r\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n","protected":false},"excerpt":{"rendered":"<p>In a scripted Jenkins pipeline, you can use different types of variables depending on your requirements. Here are examples of different variable types commonly used in scripted pipelines: In a&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[2],"tags":[],"class_list":["post-35667","post","type-post","status-publish","format-standard","hentry","category-uncategorised"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/35667","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=35667"}],"version-history":[{"count":1,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/35667\/revisions"}],"predecessor-version":[{"id":35668,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/35667\/revisions\/35668"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=35667"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=35667"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=35667"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}