{"id":3833,"date":"2020-03-31T12:36:42","date_gmt":"2020-03-31T10:36:42","guid":{"rendered":"https:\/\/www.codemotion.com\/magazine\/?p=3833"},"modified":"2022-01-05T20:01:03","modified_gmt":"2022-01-05T19:01:03","slug":"ibm-cloud-code-to-production-with-no-manual-deployment","status":"publish","type":"post","link":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/","title":{"rendered":"From Code to Production With No Manual Deployment"},"content":{"rendered":"\t\t\t\t<div class=\"wp-block-uagb-table-of-contents uagb-toc__align-left uagb-toc__columns-1  uagb-block-4a8080a8      \"\n\t\t\t\t\tdata-scroll= \"1\"\n\t\t\t\t\tdata-offset= \"30\"\n\t\t\t\t\tstyle=\"\"\n\t\t\t\t>\n\t\t\t\t<div class=\"uagb-toc__wrap\">\n\t\t\t\t\t\t<div class=\"uagb-toc__title\">\n\t\t\t\t\t\t\tTable Of Contents\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"uagb-toc__list-wrap \">\n\t\t\t\t\t\t<ol class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#lets-cook-a-hamburger\" class=\"uagb-toc-link__trigger\">Let&#039;s cook a hamburger<\/a><li class=\"uagb-toc__list\"><a href=\"#hassle-free-deployment-with-ibm-cloud-platform\" class=\"uagb-toc-link__trigger\">Hassle-free deployment with IBM Cloud Platform<\/a><ul class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#going-from-code-to-production-the-easy-way\" class=\"uagb-toc-link__trigger\">Going from Code to Production the easy way<\/a><\/li><\/ul><\/li><li class=\"uagb-toc__list\"><a href=\"#ibm-cloud-deploy-a-geo-referencing-app\" class=\"uagb-toc-link__trigger\">IBM Cloud: deploy a geo-referencing app<\/a><ul class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#phase-1-cluster-creation\" class=\"uagb-toc-link__trigger\">Phase 1 &#8211; Cluster creation<\/a><li class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#phase-2-deployment-with-source-to-image\" class=\"uagb-toc-link__trigger\">Phase 2 &#8211; Deployment with Source to Image<\/a><li class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#phase-3-scale-your-application\" class=\"uagb-toc-link__trigger\">Phase 3 &#8211; Scale your application<\/a><\/li><\/ul><\/li><\/ul><\/li><li class=\"uagb-toc__list\"><a href=\"#thank-you-for-all-the-code\" class=\"uagb-toc-link__trigger\">Thank you for all the code<\/a><\/ul><\/ul><\/ol>\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\n\n\n<p>In this article we will explore how to deploy an application through the <strong>IBM Cloud Platform<\/strong>, by means of <a href=\"https:\/\/www.codemotion.com\/magazine\/dev-hub\/community-manager\/community-management-red-hat\/\" class=\"ek-link\">Red Hat<\/a> <strong>OpenShift<\/strong>.<\/p>\n\n\n\n<p>There are now far easier ways to deploy your product than having to do it all on your own as you did in the old days. The distance between code and production has finally shrunk.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-let-s-cook-a-hamburger\">Let&#8217;s cook a hamburger<\/h2>\n\n\n\n<p>There are more <strong>similarities between cooking and software development<\/strong> than one might think.<\/p>\n\n\n\n<p>You are hungry and want to make yourself a hamburger. You go to the grocery store and buy bread, meat, onion, cheddar, bacon, mayonnaise&#8230; You return home and you\u2019re all set to start when you suddenly realize you have no potatoes for your french fries.<\/p>\n\n\n\n<p>You have to go out again to buy a bag of potatoes, and a bottle of peanut oil. By the time you\u2019re home again, you\u2019re twice as hungry.\u00a0<\/p>\n\n\n\n<p>Now you can start cooking. But cooking is something you don\u2019t do very often and before you know it, the kitchen is in a mess. Everything smells of fried oil, and the stove is covered in stains.<\/p>\n\n\n\n<p>Your hands are dirty and sticky after preparing the meat and there are bits of vegetables all over the kitchen counter, but you are far from finished. You still have to cook your hamburger, but first you want the bacon to be nice and crispy and the onion brown and soft. There\u2019s a lot of smoke in the kitchen!<\/p>\n\n\n\n<p>Finally, you can cook the hamburger. Even more smoke in the kitchen&#8230;<\/p>\n\n\n\n<p>By now, you are so fed up that you&#8217;ve almost forgotten how hungry you are. All you can think of is the stench in the kitchen and on your clothes. Even worse &#8211; you\u2019ve spent two hours of your time on this, and you are probably going to spend another hour cleaning up all the mess! It is disheartening.<\/p>\n\n\n\n<p>You deserve a beer, you think. Oh no, you forgot to buy beer!<\/p>\n\n\n\n<p>If you think about it, your real goal was not to cook. It was to eat a hamburger. Next time you want one, you might decide it&#8217;s better go to a fast-food restaurant, place your order, choose the sauces you like and the drink you prefer &#8211; you might even get a special offer for the menu of the day with your fries for free!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-hassle-free-deployment-with-ibm-cloud-platform\">Hassle-free deployment with IBM Cloud Platform<\/h2>\n\n\n\n<p><strong>The same happens with programming<\/strong>; take a web application as an example.<\/p>\n\n\n\n<p>You have created an application, the code looks perfect. It is well-commented, indented and verified. Your expectations are high and you can\u2019t wait for the users to use it! You\u2019re ready to deploy your system when you suddenly realize that, well, you don\u2019t have a system&#8230;<\/p>\n\n\n\n<p>Yes, you have the code, but the system is still far from being available. You will need to get the machines (or VMs), then install the operating system (or SDK), and the firewall. You will also have to configure ports and networking, create a VPN for maintenance, or have access to local data.<\/p>\n\n\n\n<p>That&#8217;s not all, of course. You will have to harmonize the libraries and, in all likelihood, use many open-source tools that must be able to talk to each other and be aligned: Helm charts, Kubernetes for your containers, monitoring and log systems, image catalogues&#8230;<\/p>\n\n\n\n<p>And then, that niggling thought at the back of your brain that you&#8217;ve forgotten something &#8211; you always do &#8211; makes its presence felt.<\/p>\n\n\n\n<p>You are not cooking now, you are developing, but there is still a lot of smoke.<\/p>\n\n\n\n<div class=\"wp-block-uagb-call-to-action uagb-cta__outer-wrap uagb-block-e367774c\"><div class=\"uagb-cta__content-wrap uagb-cta__block uagb-cta__icon-position-right uagb-cta__content-right uagb-cta__content-stacked-tablet uagb-cta__button-valign-middle \"><div class=\"uagb-cta__left-right-wrap\"><div class=\"uagb-cta__content\"><div class=\"uagb-cta__title-wrap\"><h3 class=\"uagb-cta__title\">Going from Code to Production the easy way<\/h3><\/div><div class=\"uagb-cta-text-wrap\"><p class=\"uagb-cta__desc\">There are far easier ways to deploy your product than having to do it all on your own as in the old days. The distance between code and production has finally shrunk. Learn how to deploy an application through the IBM Cloud Platform, by means of Red Hat OpenShift.<\/p><\/div><\/div><div class=\"uagb-cta__link-wrapper uagb-cta__block-link-style\"><div class=\"uagb-cta__button-wrapper\"><a href=\"https:\/\/ibm.co\/2UKTUpz\" class=\"uagb-cta__button-link-wrapper uagb-cta__block-link uagb-cta-typeof-button\" target=\"_blank\" rel=\"noopener noreferrer\"><span class=\"uagb-cta__link-content-inner\"><span>IBM Cloud<\/span><\/span><\/a><\/div><\/div><\/div><\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-ibm-cloud-deploy-a-geo-referencing-app\">IBM Cloud: deploy a geo-referencing app<\/h2>\n\n\n\n<p>As in the example we started out with, if you are on your own and don\u2019t have enough experience in all the areas needed to, say, launch your web app, then you should definitely look for something you can order to suit your needs and preferences, as we imagined in the fast-food restaurant.<\/p>\n\n\n\n<p>Luckily enough, you can order an infrastructure online just like that. For instance, <strong>IBM Cloud<\/strong> offers great tools to help you reach your goal. You can have your Container clusters created in minutes, and without the need to do any maintenance. Or you could use Functions in Serverless logic or even a source-to-image solution, which takes the code from Git and automatically deploys the app in the cluster.<\/p>\n\n\n\n<p>Let\u2019s take the latter as our example.<\/p>\n\n\n\n<p>First, you need your IBM Cloud Platform account. You can go to <a aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener nofollow\" href=\"https:\/\/ibm.co\/2UKTUpz\" target=\"_blank\" class=\"ek-link\">cloud.ibm.com<\/a> to create your free account.<\/p>\n\n\n\n<p>Then, thanks to Jan Kleinert&#8217;s post on the RedHat\/OpenShift blog, we can deploy a geo-referencing app on OpenShift cluster on the IBM Cloud in just a few minutes. We can imagine that this simple application is the Node.js application that you have just completed writing.<\/p>\n\n\n\n<p>This is a web app to show the different dog parks in Raleigh, North Carolina. The app uses <a aria-label=\" (opens in a new tab)\" class=\"ek-link ek-link\" rel=\"noreferrer noopener nofollow\" href=\"https:\/\/react-leaflet.js.org\/\" target=\"_blank\">React-Leaflet<\/a> to handle the map features, so we need the capability to deploy a Node.js application.<\/p>\n\n\n\n<p>This simple exercise is composed of two main steps:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li><strong>Create an Openshift cluster<\/strong>, with one worker node, totally managed by IBM Cloud Platform;<\/li><li> <strong>Deploy your NODE.JS application<\/strong> using the Source to Image facility.  <\/li><\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-phase-1-cluster-creation\">Phase 1 &#8211; Cluster creation<\/h3>\n\n\n\n<p>Creating a cluster container, and orchestrating your runtimes to be safe, robust, scalable, running on the internet and so, is usually quite a complex list of activities, like preparing hamburgers at home. A lot of tools, a lot of things to manage, a lot of skills.<\/p>\n\n\n\n<p>With RedHat OpenShift on the IBM Cloud Platform it is an easy job.<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li> Go to your IBM Cloud Platform account <div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"548\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image1-2-1024x548.png\" alt=\"\" class=\"wp-image-3834\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image1-2-1024x548.png 1024w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image1-2-300x161.png 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image1-2-768x411.png 768w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image1-2.png 1367w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div><\/li><li>Click on the <em>CATALOG<\/em> menu<\/li><li>Click on the <em>RedHat OpenShift<\/em> box <\/li><li>On the next page, select:<ol><li>Availability: Single Zone<\/li><li>Geography: Europe<\/li><li>Worker Zone: Milan01<\/li><li>Flavor: 4vCPUs 16 GB Ram<\/li><li>Worker nodes : 1<\/li><\/ol><\/li><li>Press <em>CREATE<\/em> and in 20 minutes your cluster is ready!<\/li><\/ol>\n\n\n\n<p> No headache, no smoke, no frustration. Now you have time to drink a good coffee, check your emails, and return twenty minutes later to your IBM Cloud account to visualize your Resource List (upper left menu with 4 little lines).<\/p>\n\n\n\n<p>You are now ready to deploy your DogParks node.js-react application.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-phase-2-deployment-with-source-to-image\"> Phase 2 &#8211; Deployment with Source to Image<\/h3>\n\n\n\n<p>At this point, enter your cluster and proceed as follows:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>On the Resource List, in the section <em>Clusters<\/em>, you will see your cluster. Click on it. <div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"427\" height=\"368\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image3-2.png\" alt=\"\" class=\"wp-image-3836\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image3-2.png 665w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image3-2-300x258.png 300w\" sizes=\"auto, (max-width: 427px) 100vw, 427px\" \/><\/figure><\/div> <\/li><li> The cluster dashboard will be shown, and you can click on the blue <em>OpenShift web console<\/em> box.<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"495\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image2-1-1024x495.jpg\" alt=\"\" class=\"wp-image-3837\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image2-1-1024x495.jpg 1024w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image2-1-300x145.jpg 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image2-1-768x371.jpg 768w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image2-1.jpg 1160w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div> <\/li><li> In the Console, click on the Node.Js template: <div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image5-1-1024x683.jpg\" alt=\"\" class=\"wp-image-3839\"><\/figure><\/div> <\/li><li>On the panel:<ol><li>Click on <em>NEXT<\/em>;<\/li><li>In the field <em>Add to Project<\/em> select <em>Default<\/em> or write a name for a new project;<\/li><li>In <em>Application name<\/em> write the name of your application (<em>dogsinnc<\/em> for example);<\/li><li>In <em>Git Repository,<\/em> paste this URL: <a href=\"https:\/\/github.com\/jankleinert\/raleigh-dogparks.git\">https:\/\/github.com\/jankleinert\/raleigh-dogparks.git<\/a><\/li><li>Click on <em>Create<\/em>, then click on <em>Close<\/em>: <div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"589\" height=\"438\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image4-1-1024x762.png\" alt=\"\" class=\"wp-image-3840\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image4-1-1024x762.png 1024w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image4-1-300x223.png 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image4-1-768x571.png 768w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image4-1.png 1140w\" sizes=\"auto, (max-width: 589px) 100vw, 589px\" \/><\/figure><\/div> <\/li><\/ol><\/li><li>On the upper menu, select <em>Application Console<\/em> and click on your project (<em>default<\/em>).  You will see your application building: <div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"875\" height=\"675\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image7.jpg\" alt=\"\" class=\"wp-image-3841\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image7.jpg 875w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image7-300x231.jpg 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image7-768x592.jpg 768w\" sizes=\"auto, (max-width: 875px) 100vw, 875px\" \/><\/figure><\/div> <\/li><\/ol>\n\n\n\n<p>One or two minutes later, the deployment will finish and you can use your application.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-phase-3-scale-your-application\">Phase 3 &#8211; Scale your application<\/h3>\n\n\n\n<p>Once the deployment is finished you will see your application pod with the app\u2019s URL ready to be used:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"585\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image6-1024x585.jpg\" alt=\"\" class=\"wp-image-3846\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image6-1024x585.jpg 1024w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image6-300x171.jpg 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image6-768x439.jpg 768w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image6.jpg 1181w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n\n<p>Now you can also <strong>scale your application<\/strong>. By clicking on the <em>><\/em> icon you will open your application details. You can add the instances that you need to empower your application to all pods, by just clicking on the up-down arrows:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image9-1024x698.jpg\" alt=\"\" class=\"wp-image-3847\"\/><\/figure><\/div>\n\n\n\n<p> That\u2019s it! You\u2019ve successfully deployed the app on an orchestrated cluster container in few minutes.<\/p>\n\n\n\n<p>Click on the app URL to use it:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"505\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image8-1024x505.jpg\" alt=\"\" class=\"wp-image-3848\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image8-1024x505.jpg 1024w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image8-300x148.jpg 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image8-768x379.jpg 768w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/image8.jpg 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-thank-you-for-all-the-code\">Thank you for all the code<\/h2>\n\n\n\n<p>As you&#8217;ll have realized by now, there are developers who can develop good code but have some difficulty in making it available to customers. There are specific solutions that can help us achieve that in a short time, thanks to infrastructures that can help any developer make their product immediately available to the final user.<\/p>\n\n\n\n<p>When the two meet, innovation kicks in and any developer can move several steps forward in their career and in the services they can offer.<\/p>\n\n\n\n<p><strong>The distance between code and production has finally shrunk<\/strong>.<\/p>\n\n\n","protected":false},"excerpt":{"rendered":"<p>In this article we will explore how to deploy an application through the IBM Cloud Platform, by means of Red Hat OpenShift. There are now far easier ways to deploy your product than having to do it all on your own as you did in the old days. The distance between code and production has&#8230; <a class=\"more-link\" href=\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/\">Read more<\/a><\/p>\n","protected":false},"author":8,"featured_media":3850,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":6,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","_uag_custom_page_level_css":"","_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[5244],"tags":[5221],"collections":[],"class_list":{"0":"post-3833","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-cloud","8":"tag-ibm","9":"entry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>IBM Cloud: Code to Production in few clicks - Codemotion Magazine<\/title>\n<meta name=\"description\" content=\"The distance between code and production has finally shrunk. Learn how to deploy an application with IBM Cloud Platform, using Red Hat OpenShift.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"From Code to Production With No Manual Deployment\" \/>\n<meta property=\"og:description\" content=\"The distance between code and production has finally shrunk. Learn how to deploy an application with IBM Cloud Platform, using Red Hat OpenShift.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/\" \/>\n<meta property=\"og:site_name\" content=\"Codemotion Magazine\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Codemotion.Italy\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-03-31T10:36:42+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-01-05T19:01:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1013\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Leo Sorge\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:site\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Leo Sorge\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/\"},\"author\":{\"name\":\"Leo Sorge\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/99fe84861e17797989e16094aac727d5\"},\"headline\":\"From Code to Production With No Manual Deployment\",\"datePublished\":\"2020-03-31T10:36:42+00:00\",\"dateModified\":\"2022-01-05T19:01:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/\"},\"wordCount\":1472,\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png\",\"keywords\":[\"IBM\"],\"articleSection\":[\"Cloud\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/\",\"name\":\"IBM Cloud: Code to Production in few clicks - Codemotion Magazine\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png\",\"datePublished\":\"2020-03-31T10:36:42+00:00\",\"dateModified\":\"2022-01-05T19:01:03+00:00\",\"description\":\"The distance between code and production has finally shrunk. Learn how to deploy an application with IBM Cloud Platform, using Red Hat OpenShift.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#primaryimage\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png\",\"width\":1013,\"height\":675},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"DevOps\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/devops\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Cloud\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"From Code to Production With No Manual Deployment\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"name\":\"Codemotion Magazine\",\"description\":\"We code the future. Together\",\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\",\"name\":\"Codemotion\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"width\":225,\"height\":225,\"caption\":\"Codemotion\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Codemotion.Italy\/\",\"https:\/\/x.com\/CodemotionIT\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/99fe84861e17797989e16094aac727d5\",\"name\":\"Leo Sorge\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/60ef89012822fdaeb014dc2b17dcc78c3a835e1dfe86ede053fa46a91926fd29?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/60ef89012822fdaeb014dc2b17dcc78c3a835e1dfe86ede053fa46a91926fd29?s=96&d=mm&r=g\",\"caption\":\"Leo Sorge\"},\"description\":\"I hold a degree in electronics. I talk and write about science and technology in both real and close-to-real worlds since 1976. I frankly believe that business plan and singularity are excellent starts for science-fiction stories.\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/author\/leo-sorge\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"IBM Cloud: Code to Production in few clicks - Codemotion Magazine","description":"The distance between code and production has finally shrunk. Learn how to deploy an application with IBM Cloud Platform, using Red Hat OpenShift.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/","og_locale":"en_US","og_type":"article","og_title":"From Code to Production With No Manual Deployment","og_description":"The distance between code and production has finally shrunk. Learn how to deploy an application with IBM Cloud Platform, using Red Hat OpenShift.","og_url":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/","og_site_name":"Codemotion Magazine","article_publisher":"https:\/\/www.facebook.com\/Codemotion.Italy\/","article_published_time":"2020-03-31T10:36:42+00:00","article_modified_time":"2022-01-05T19:01:03+00:00","og_image":[{"width":1013,"height":675,"url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png","type":"image\/png"}],"author":"Leo Sorge","twitter_card":"summary_large_image","twitter_creator":"@CodemotionIT","twitter_site":"@CodemotionIT","twitter_misc":{"Written by":"Leo Sorge","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#article","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/"},"author":{"name":"Leo Sorge","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/99fe84861e17797989e16094aac727d5"},"headline":"From Code to Production With No Manual Deployment","datePublished":"2020-03-31T10:36:42+00:00","dateModified":"2022-01-05T19:01:03+00:00","mainEntityOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/"},"wordCount":1472,"publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png","keywords":["IBM"],"articleSection":["Cloud"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/","url":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/","name":"IBM Cloud: Code to Production in few clicks - Codemotion Magazine","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#primaryimage"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png","datePublished":"2020-03-31T10:36:42+00:00","dateModified":"2022-01-05T19:01:03+00:00","description":"The distance between code and production has finally shrunk. Learn how to deploy an application with IBM Cloud Platform, using Red Hat OpenShift.","breadcrumb":{"@id":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#primaryimage","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png","width":1013,"height":675},{"@type":"BreadcrumbList","@id":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/ibm-cloud-code-to-production-with-no-manual-deployment\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codemotion.com\/magazine\/"},{"@type":"ListItem","position":2,"name":"DevOps","item":"https:\/\/www.codemotion.com\/magazine\/devops\/"},{"@type":"ListItem","position":3,"name":"Cloud","item":"https:\/\/www.codemotion.com\/magazine\/devops\/cloud\/"},{"@type":"ListItem","position":4,"name":"From Code to Production With No Manual Deployment"}]},{"@type":"WebSite","@id":"https:\/\/www.codemotion.com\/magazine\/#website","url":"https:\/\/www.codemotion.com\/magazine\/","name":"Codemotion Magazine","description":"We code the future. Together","publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.codemotion.com\/magazine\/#organization","name":"Codemotion","url":"https:\/\/www.codemotion.com\/magazine\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","width":225,"height":225,"caption":"Codemotion"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Codemotion.Italy\/","https:\/\/x.com\/CodemotionIT"]},{"@type":"Person","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/99fe84861e17797989e16094aac727d5","name":"Leo Sorge","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/60ef89012822fdaeb014dc2b17dcc78c3a835e1dfe86ede053fa46a91926fd29?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/60ef89012822fdaeb014dc2b17dcc78c3a835e1dfe86ede053fa46a91926fd29?s=96&d=mm&r=g","caption":"Leo Sorge"},"description":"I hold a degree in electronics. I talk and write about science and technology in both real and close-to-real worlds since 1976. I frankly believe that business plan and singularity are excellent starts for science-fiction stories.","url":"https:\/\/www.codemotion.com\/magazine\/author\/leo-sorge\/"}]}},"featured_image_src":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_-600x400.png","featured_image_src_square":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_-600x600.png","author_info":{"display_name":"Leo Sorge","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/leo-sorge\/"},"uagb_featured_image_src":{"full":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png",1013,675,false],"thumbnail":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_-150x150.png",150,150,true],"medium":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_-300x200.png",300,200,true],"medium_large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_-768x512.png",768,512,true],"large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png",1013,675,false],"1536x1536":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png",1013,675,false],"2048x2048":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png",1013,675,false],"small-home-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_.png",100,67,false],"sidebar-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_-180x128.png",180,128,true],"genesis-singular-images":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_-896x504.png",896,504,true],"archive-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_-400x225.png",400,225,true],"gb-block-post-grid-landscape":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_-600x400.png",600,400,true],"gb-block-post-grid-square":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/03\/server_cloud_development_business_network_connection_technology_internet-646713.jpgd_-600x600.png",600,600,true]},"uagb_author_info":{"display_name":"Leo Sorge","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/leo-sorge\/"},"uagb_comment_info":0,"uagb_excerpt":"In this article we will explore how to deploy an application through the IBM Cloud Platform, by means of Red Hat OpenShift. There are now far easier ways to deploy your product than having to do it all on your own as you did in the old days. The distance between code and production has&#8230;&hellip;","lang":"en","_links":{"self":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/3833","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/comments?post=3833"}],"version-history":[{"count":9,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/3833\/revisions"}],"predecessor-version":[{"id":12138,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/3833\/revisions\/12138"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media\/3850"}],"wp:attachment":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media?parent=3833"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/categories?post=3833"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/tags?post=3833"},{"taxonomy":"collections","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/collections?post=3833"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}