{"id":23559,"date":"2020-04-23T07:56:42","date_gmt":"2020-04-23T06:56:42","guid":{"rendered":"https:\/\/developer.kore.ai\/v8-0\/?p=23559"},"modified":"2021-03-25T11:09:22","modified_gmt":"2021-03-25T11:09:22","slug":"how-to-manage-bot-release-lifecycle","status":"publish","type":"post","link":"https:\/\/developer.kore.ai\/v8-0\/docs\/bots\/how-tos\/how-to-manage-bot-release-lifecycle\/","title":{"rendered":"How to manage Bot Release Lifecycle"},"content":{"rendered":"<section class=\"l-section wpb_row height_auto\"><div class=\"l-section-h i-cf\"><div class=\"g-cols vc_row type_default valign_top\"><div class=\"vc_col-sm-12 wpb_column vc_column_container\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<p>In this How-To, we will explore a scenario wherein your organization has set up multiple stages before a bot is finally made available to the end-users for the purpose of bot development, testing, pilot and production release.<\/p>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h2><span class=\"ez-toc-section\" id=\"Problem_Statement\">Problem Statement<\/span><\/h2>\n<p>Consider the case wherein the developer has completed the bot development and it needs to be moved to the testing environment for the QA team to access and test the same. The bot definition does not change drastically except for a few environment-specific values.<\/p>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<p>In this document, we will show how the bot export and import functionality can be used to achieve the same. Refer here for more on <a href=\"\/docs\/bots\/bot-settings\/bot-management\/bot-management-2\/#Importing_and_Exporting_Bots\" target=\"_blank\" rel=\"noopener noreferrer\">Bot Import and Export<\/a>.<\/p>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h2><span class=\"ez-toc-section\" id=\"Pre-requisites\">Pre-requisites<\/span><\/h2>\n<ul>\n<li>Bot building knowledge<\/li>\n<li>A fully developed and functional bot. Here we are using the <a href=\"\/docs\/bots\/how-tos\/creating-a-banking-bot\/\" target=\"_blank\" rel=\"noopener noreferrer\">Banking Bot<\/a>.<\/li>\n<\/ul>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h2><span class=\"ez-toc-section\" id=\"Implementation\">Implementation<\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"Step_1_Export_Bot\">Step 1 &#8211; Export Bot<\/span><\/h3>\n<ol>\n<li>In the development environment, open the bot you want to move to the testing environment.<\/li>\n<li>From\u00a0<strong>Settings -&gt;\u00a0<\/strong><strong>Bot Management<\/strong>, select\u00a0<strong>Export Bot<\/strong> option.<\/li>\n<li>Select the bot components you want to export. The first time you will want to export all components, subsequently, you might want to choose to export only selected components.<\/li>\n<li>Click\u00a0<strong>Export.<\/strong><\/li>\n<li>The bot definition is exported as a ZIP file.<\/li>\n<li>The file may be used to check the bot definition into your code repository or to attach it to any ticketing system.<\/li>\n<\/ol>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h3><span class=\"ez-toc-section\" id=\"Step_2_Modify_configjson\">Step 2 &#8211; Modify <em>config.json<\/em><\/span><\/h3>\n<ol>\n<li>Any variables that need environment-specific values will be available in the <em>\u200bconfig.json<\/em>\u200b file present in the exported file.\u200b<\/li>\n<li>Update these Global Variables (<a href=\"\/docs\/bots\/bot-admin\/bots-management\/using-bot-variables\/#Global_Variables\" target=\"_blank\" rel=\"noopener noreferrer\">see here for more on Global Variables<\/a> and <a href=\"\/docs\/bots\/how-tos\/how-to-use-global-variables\/\" target=\"_blank\" rel=\"noopener noreferrer\">here for an example<\/a>).<\/li>\n<li>Now the file can be shared with the infrastructure \/ DevOps teams for initiating deployment in other environments.<\/li>\n<li>If you have permissions, you can import the bot to the target environment by following the steps given below.<\/li>\n<\/ol>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h3><span class=\"ez-toc-section\" id=\"Step_3_Import_Bot\">Step 3 &#8211; Import Bot<\/span><\/h3>\n<ol>\n<li>Extract the files from the zip file exported in the previous step.<\/li>\n<li>In the testing environment, create a new bot.<\/li>\n<li>From\u00a0<strong>Settings -&gt;\u00a0<\/strong><strong>Bot Management<\/strong>, select the <strong>Import Bot<\/strong> option.<\/li>\n<li>Select the <em>Bot Definition File<\/em>, <em>Bot Config File<\/em>, and <em>Custom Script File<\/em> (if any) from the previous step.<\/li>\n<li>Select the\u00a0<strong>Full Import<\/strong> Import Option. Note that if you are using this option in an existing bot the current bot configurations will be erased and replaced with the imported bot.<\/li>\n<li>Click\u00a0<strong>Import.<\/strong><\/li>\n<li>Your Bot is ready in the testing environment for the QA team to test.<\/li>\n<\/ol>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h3><span class=\"ez-toc-section\" id=\"Step_4_Update_Bot\">Step 4 &#8211; Update Bot<\/span><\/h3>\n<p>Chances are you need to modify the bot and apply those changes to the bot in the testing environment.<\/p>\n<ol>\n<li>From the development environment, open the modified bot.<\/li>\n<li>From\u00a0<strong>Settings -&gt;\u00a0<\/strong><strong>Bot Management<\/strong>, select the <strong>Export Bot<\/strong> option.<\/li>\n<li>Select the bot components you want to export. You might want to choose to export only modified components.<\/li>\n<li>Click\u00a0<strong>Export.<\/strong><\/li>\n<li>The bot definition is exported as a ZIP file.<\/li>\n<li>Extract the files from the zip file.<\/li>\n<li>Change the values for any variables that need environment-specific values in the <em>\u200bconfig.json<\/em>\u200b file present in the exported file.\u200b<\/li>\n<li>In the testing environment, open the bot that needs to be updated.<\/li>\n<li>From\u00a0<strong>Settings -&gt;\u00a0<\/strong><strong>Bot Management<\/strong>, select the\u00a0<strong>Import Bot<\/strong>\u00a0option.<\/li>\n<li>Select the <em>Bot Definition File<\/em>, <em>Bot Config File<\/em>, and <em>Custom Script File<\/em> (if any) from the previous extract step.<\/li>\n<li>Select the\u00a0<strong>Incremental Import<\/strong> Import Option.<\/li>\n<li>Click\u00a0<strong>Import.<\/strong><\/li>\n<li>Your Bot is updated and ready in the testing environment for the QA team to test.<\/li>\n<\/ol>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<div class=\"w-separator size_small with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/section>\n","protected":false},"excerpt":{"rendered":"In this How-To, we will explore a scenario wherein your organization has set up multiple stages before a bot is finally made available to the end-users for the purpose of bot development, testing, pilot and production release. Problem Statement Consider the case wherein the developer has completed the bot development and it needs to be...","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[74],"tags":[],"class_list":["post-23559","post","type-post","status-publish","format-standard","hentry","category-how-tos"],"_links":{"self":[{"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/posts\/23559","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/comments?post=23559"}],"version-history":[{"count":5,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/posts\/23559\/revisions"}],"predecessor-version":[{"id":23569,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/posts\/23559\/revisions\/23569"}],"wp:attachment":[{"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/media?parent=23559"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/categories?post=23559"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/developer.kore.ai\/v8-0\/wp-json\/wp\/v2\/tags?post=23559"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}