<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: joseph4real</title>
    <description>The latest articles on DEV Community by joseph4real (@joseph4real).</description>
    <link>https://dev.to/joseph4real</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1097072%2F832f526b-056b-43cc-b697-0978b0d99573.png</url>
      <title>DEV Community: joseph4real</title>
      <link>https://dev.to/joseph4real</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/joseph4real"/>
    <language>en</language>
    <item>
      <title>Steps to Create a Consumption workflow in Azure logic app resource</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Thu, 20 Jul 2023 12:19:23 +0000</pubDate>
      <link>https://dev.to/joseph4real/steps-to-create-a-consumption-workflow-in-azure-logic-app-resource-1dh2</link>
      <guid>https://dev.to/joseph4real/steps-to-create-a-consumption-workflow-in-azure-logic-app-resource-1dh2</guid>
      <description>&lt;p&gt;In this blog, I will be discussing how to create an automated workflow that combine two services: an RSS feed  and an email account.&lt;/p&gt;

&lt;p&gt;I will describe Server-less in Azure, Azure Function App Vs. Logic App, RSS Connector and RSS Feed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Server-less in Azure:&lt;/strong&gt; Based on Azure Documentation, server-less computing enables cloud developers to build applications faster by eliminating the need for them to manage infrastructure. It shifts developers focus towards writing and executing code, relieving them from the responsibility of managing the underlying infrastructure. Though Servers are still running the code, The serverl-ness name comes from the fact that the tasks associated with infrastructure provisioning and management are invisible to the developer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Difference Between Logic App and Azure functions&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Azure Function:&lt;/strong&gt; Azure Functions is a serverless compute service that allows you to execute small code or functions in response to various triggers or events, examples are HTTP requests, timers, messages from queues, events from event hubs, etc. You write and deploy your code and Azure takes care of scaling and managing the infrastructure required to run your functions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Logic Apps:&lt;/strong&gt; Azure Logic Apps are serverless workflow and orchestration tools. It enables one to create and automate workflows and business processes by connecting various services, connectors, systems, and applications. Logic Apps provide a designer toolbar to build workflows using a wide range of connectors and actions, allowing you to focus on defining the logic and integration without worrying about the infrastructure.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;RSS Connector:&lt;/strong&gt;  RSS stands for "Really Simple Syndication." It's a technology that allows websites to distribute their content in a standardized format. An RSS connector acts as a link between the website and you the reader. When you subscribe to an RSS feed of a website using an RSS connector, the connector keeps an eye on that website for you. It constantly checks for any updates or new content. When the website publishes something new, the RSS connector immediately notifies you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;RSS Feed:&lt;/strong&gt; An RSS feed is an online file that contains details about every piece of content a website has published. Each time a site publishes a new piece of content, details about that content—including the full-text of the content or a summary, publication date, author, link, etc.—are automatically generated in the file and displayed in reverse chronological order. It's an easy way to stay up to date with your favourite websites, such as blogs or online magazines.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Creating Consumption Logic App Workflow&lt;/strong&gt;&lt;br&gt;
In this demo, I will use the RSS connector and the Microsoft Outlook connector. The RSS connector provides a trigger that checks an RSS feed, based on the specified schedule. The Microsoft Outlook connector provides an action that sends an email for each new item.&lt;/p&gt;

&lt;p&gt;a. Sign into azure portal.&lt;br&gt;
b. In the search box, search for logic app, and click logic app.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--z_yeKjpd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/svfxjj8lz0cmib0klhos.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--z_yeKjpd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/svfxjj8lz0cmib0klhos.png" alt="Image description" width="624" height="272"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;c. On the Logic app page, click add. On the create logic app page, adopt the below project details as specified in the following “Logic app page”: the subscription name, resource group, logic app name, region. Make sure you enable log analytics.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ca9nd6pB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9g4t80a76p9yq4l080f0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ca9nd6pB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9g4t80a76p9yq4l080f0.png" alt="Image description" width="800" height="880"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;NOTE&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;Type of plans&lt;/strong&gt;&lt;/em&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;Standard:&lt;/strong&gt;&lt;/em&gt; This is a logic app resource plan, its the default selection and supports multiple workflows. These workflows run in single-tenant Azure Logic Apps and use the Standard billing model. Best for enterprise-level, serverless applications, with event-based scaling and networking isolation.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;Consumption:&lt;/strong&gt;&lt;/em&gt; This logic app resource type is the alternative selection and supports only a single workflow. This workflow runs in multi-tenant Azure Logic Apps and uses the Consumption billing model.  Best for entry-level. Pay only as much as your workflow runs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Zone Redundance&lt;/em&gt;&lt;/strong&gt; is not highlighted because the region I choose does not support availability zone.&lt;br&gt;
Enable log analytics is “No” because Im not enabling diagnostic logging. It appears only when consumption is selected.&lt;/p&gt;

&lt;p&gt;d. Click Review + Create, after validation is passed, select Create.&lt;br&gt;
e. After successive deployment, select go to resource, and select your logic app resource.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bUnsrqYk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2l19a7amsituqb871a9g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bUnsrqYk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2l19a7amsituqb871a9g.png" alt="Image description" width="559" height="375"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Selecting the Template&lt;/strong&gt;&lt;br&gt;
a. The &lt;em&gt;&lt;strong&gt;my logic app Coms&lt;/strong&gt;&lt;/em&gt; comes with various common designer triggers, but I will be choosing a  blank template. Under template select Blank Logic App.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xPzAbtBn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bdjlp5887075uni1v2ns.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xPzAbtBn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bdjlp5887075uni1v2ns.png" alt="Image description" width="434" height="396"&gt;&lt;/a&gt;&lt;br&gt;
b. Shows template with empty workflow.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MzcErNZm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5e1god8mo17qa0vh9f0z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MzcErNZm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5e1god8mo17qa0vh9f0z.png" alt="Image description" width="800" height="254"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Add a trigger&lt;/strong&gt;&lt;br&gt;
A workflow always starts with a single trigger, which specifies the condition to meet before running any subsequent actions in the workflow. Each time the trigger fires, Azure Logic Apps creates and runs a workflow instance. If the trigger doesn't fire, no workflow instance is created or run. Azure Logic Apps includes hundreds of connectors with triggers that you can use to start your workflow.&lt;/p&gt;

&lt;p&gt;I will be using an &lt;strong&gt;_RSS trigger _&lt;/strong&gt;that checks an &lt;em&gt;&lt;strong&gt;RSS feed&lt;/strong&gt;&lt;/em&gt;, based on the specified schedule. If a new item exists in the feed, the trigger fires, and a new workflow instance is created and run. If multiple new items exist between checks, the trigger fires for each item, and a separate new workflow instance runs for each item. By default, workflow instances created at the same time also run at the same time, or concurrently.&lt;br&gt;
a. Select All, search for RSS in the search box, from the trigger list select RSS trigger name When a feed item is published.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HmN5P63u--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4h7ka5y06idofprdemj3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HmN5P63u--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4h7ka5y06idofprdemj3.png" alt="Image description" width="460" height="419"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Get an RSS URL&lt;/strong&gt;&lt;br&gt;
I will be fetching my rss in &lt;em&gt;&lt;strong&gt;The Wall Street Journal url&lt;/strong&gt;&lt;/em&gt; from the web browser.&lt;br&gt;
a)Right-click on the page and click on "&lt;em&gt;&lt;strong&gt;view page source&lt;/strong&gt;&lt;/em&gt;"&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qbZqOxjC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/o0ffe6ldn3yw22v78esp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qbZqOxjC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/o0ffe6ldn3yw22v78esp.png" alt="Image description" width="754" height="306"&gt;&lt;/a&gt;&lt;br&gt;
b. Once the source code opens press &lt;em&gt;&lt;strong&gt;Cont F&lt;/strong&gt;&lt;/em&gt; to search for &lt;strong&gt;&lt;em&gt;rss&lt;/em&gt;&lt;/strong&gt;, then copy the &lt;em&gt;&lt;strong&gt;rss feed&lt;/strong&gt;&lt;/em&gt; to your the RSS feed URL below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--QjNmdzbI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dys8f67niklekq4qc5zr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--QjNmdzbI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dys8f67niklekq4qc5zr.png" alt="Image description" width="800" height="109"&gt;&lt;/a&gt;&lt;br&gt;
c. Go with the following information in the RSS trigger below shown in yellow.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PJVc2F-I--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zcqi0vfj3wpl7gx64rt2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PJVc2F-I--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zcqi0vfj3wpl7gx64rt2.png" alt="Image description" width="800" height="288"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;d. Save your workflow and Collapse the details window of the trigger info, by clicking the arrow point below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XuSVq_XC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b8gl0g5htvwt426466k9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XuSVq_XC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b8gl0g5htvwt426466k9.png" alt="Image description" width="800" height="136"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Add an Action&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
The trigger above only checks the RSS feed without taking any action. I will be adding an action that will run whenever something is triggered. &lt;br&gt;
An action is any subsequent step that runs some operation in the workflow, action can use the output from the previous step to trigger the next or another action. Many different action can be choosing, including multiple action up to what the limit per workflow. &lt;br&gt;
Here I will use Office 365 Outlook action the sends a mail each time thet the trigger is fires for a new RSS feed item.&lt;br&gt;
a.  Select + New step under the When a feed item is published trigger.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--u616riXL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kwyr958n4cmojenjq5qp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--u616riXL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kwyr958n4cmojenjq5qp.png" alt="Image description" width="800" height="169"&gt;&lt;/a&gt;&lt;br&gt;
b. Search for &lt;em&gt;&lt;strong&gt;send a mail&lt;/strong&gt;&lt;/em&gt; in the search box, and select Office 365 Outlook, if you have a personal account, select Outlook.com. Here I went with &lt;em&gt;&lt;strong&gt;outlook&lt;/strong&gt;&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uWCleato--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xa893e80wiqinyqsmcbs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uWCleato--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xa893e80wiqinyqsmcbs.png" alt="Image description" width="691" height="516"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Note:&lt;/strong&gt; If you use a different supported email service in your workflow, the user interface might look slightly different. &lt;br&gt;
c. After selecting Office 365, the Actions statement send an email comes up, then select it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MiWqLpXm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yttye1c5szh06tryc0tg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MiWqLpXm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yttye1c5szh06tryc0tg.png" alt="Image description" width="677" height="316"&gt;&lt;/a&gt;&lt;br&gt;
d. You will be prompted to sign in and authenticate your identity.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ue8herDP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j3ej6hkfttfb84chnpk3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ue8herDP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j3ej6hkfttfb84chnpk3.png" alt="Image description" width="697" height="251"&gt;&lt;/a&gt;&lt;br&gt;
e. Accept the permission settings.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Rm-6718U--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/csrlfoed3by7e302pb64.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Rm-6718U--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/csrlfoed3by7e302pb64.png" alt="Image description" width="485" height="833"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;NOTE:&lt;/strong&gt; Many connectors require you first create a connection and authentication before you continue, but this demo example uses login authentication for connecting to Office 365. Moreover, other types of services might support, use different authentication types. Based on the scenario, you can handle connection authentication in various ways.&lt;/p&gt;

&lt;p&gt;f. This window &lt;strong&gt;&lt;em&gt;Send an email action&lt;/em&gt;&lt;/strong&gt; comes up after you signed in, please specify the following information in the mail. &lt;br&gt;
&lt;strong&gt;&lt;em&gt;To box:&lt;/em&gt;&lt;/strong&gt; enter the receiver email address (&lt;a href="mailto:joseph4real4u@live.com"&gt;joseph4real4u@live.com&lt;/a&gt; &lt;br&gt;
&lt;strong&gt;&lt;em&gt;Subject box:&lt;/em&gt;&lt;/strong&gt; enter email subject (News RSS Item) and &lt;br&gt;
Click &lt;strong&gt;&lt;em&gt;Add dynamic content&lt;/em&gt;&lt;/strong&gt; list, to select &lt;strong&gt;&lt;em&gt;Feed title&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HtPgGdpX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7ihwzxan60gj501876vf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HtPgGdpX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7ihwzxan60gj501876vf.png" alt="Image description" width="800" height="510"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The Feed title is a trigger output that reference the title for the RSS item, your email uses this output to show the RSS item title. If no outputs appear from When a feed item is published trigger, please click see more.&lt;br&gt;
g. The email subject capture looks like this  below when you are done.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--27pERMjD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bsvwk50y9a8juog7uyjs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--27pERMjD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bsvwk50y9a8juog7uyjs.png" alt="Image description" width="586" height="381"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;NOTE:&lt;/strong&gt; a for each loop that appear on the designer, the designer automatically added the loop around the action that reference the output, to remove it click the three dots and delete.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--lnRbWCNa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7pbwjtjdl3dopexuv82a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lnRbWCNa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7pbwjtjdl3dopexuv82a.png" alt="Image description" width="766" height="251"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;h. Enter your email content in the body as shown below: &lt;br&gt;
Type Title in the body with a space click on &lt;strong&gt;&lt;em&gt;add dynamic content&lt;/em&gt;&lt;/strong&gt; and select &lt;strong&gt;&lt;em&gt;Feed Title&lt;/em&gt;&lt;/strong&gt;. Do same for &lt;strong&gt;&lt;em&gt;Date published&lt;/em&gt;&lt;/strong&gt; and &lt;strong&gt;&lt;em&gt;Link&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--seYQYq6C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4trfpkivaul455m95ki0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--seYQYq6C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4trfpkivaul455m95ki0.png" alt="Image description" width="658" height="515"&gt;&lt;/a&gt;&lt;br&gt;
i. Once done click save.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--k4IQGepy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dd4nihlzhdgrhyxg6vws.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--k4IQGepy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dd4nihlzhdgrhyxg6vws.png" alt="Image description" width="800" height="344"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Run your workflow&lt;/strong&gt;&lt;br&gt;
To check that the workflow runs correctly, you can wait for the trigger to check the RSS feed based on the specified schedule. Or you can manually run the workflow from the designer toolbar.&lt;br&gt;
a. Click on the Run Trigger on the designer toolbar.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--lsmS6NX_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ar9edwit1nwf49l7poko.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lsmS6NX_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ar9edwit1nwf49l7poko.png" alt="Image description" width="800" height="421"&gt;&lt;/a&gt;&lt;br&gt;
b. If My logic app trigger was successive, trigger will be fired. Click on successfully checked the trigger on the notification to see the Run History and trigger history.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--eM0U5tP---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bqhycz935j575broveu3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--eM0U5tP---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bqhycz935j575broveu3.png" alt="Image description" width="568" height="217"&gt;&lt;/a&gt;&lt;br&gt;
c. If &lt;em&gt;&lt;strong&gt;status&lt;/strong&gt;&lt;/em&gt; is &lt;em&gt;&lt;strong&gt;succeeded&lt;/strong&gt;&lt;/em&gt; in &lt;em&gt;&lt;strong&gt;Run history&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;, go to _&lt;/strong&gt;trigger history**_.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WO2NtRiw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nk9k7f2ivu0osy9p381u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WO2NtRiw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nk9k7f2ivu0osy9p381u.png" alt="Image description" width="800" height="288"&gt;&lt;/a&gt;&lt;br&gt;
d. On _trigger history _and select the trigger that was successfully fired.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--T-oeLQjN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r5jyiq8t5ob2vrdfs3c2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--T-oeLQjN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r5jyiq8t5ob2vrdfs3c2.png" alt="Image description" width="800" height="294"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--toGmYkK0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7d80f1tc0qgzzflju6d5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--toGmYkK0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7d80f1tc0qgzzflju6d5.png" alt="Image description" width="481" height="1032"&gt;&lt;/a&gt;&lt;br&gt;
f. From the Run identifier are more details to see the action that happens.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UFUzMotH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4yrwixfqpgqhx5o1j8fx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UFUzMotH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4yrwixfqpgqhx5o1j8fx.png" alt="Image description" width="800" height="479"&gt;&lt;/a&gt;&lt;br&gt;
g. Base on the RSS feed new items, the workflow sends an email for each new item every minute as you have schedule it. Find below item sent by the logic app.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4sjZlKnA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1aps7iujzsadu8bph3ep.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4sjZlKnA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1aps7iujzsadu8bph3ep.png" alt="Image description" width="800" height="216"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bzibjuxc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zegov54dwhtqfxu8gga7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bzibjuxc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zegov54dwhtqfxu8gga7.png" alt="Image description" width="800" height="323"&gt;&lt;/a&gt;&lt;br&gt;
h. Once you're done, to avoid excessive charge delete your logic app resource group on the Azure portal, because whenever your app runs, you will be charge.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to create a Function App in Azure, Create and Publish the app Code from VS to Azure and push the app files to GitHub</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Wed, 12 Jul 2023 12:52:00 +0000</pubDate>
      <link>https://dev.to/joseph4real/how-to-create-a-function-app-in-azure-create-and-publish-the-app-code-from-vs-to-azure-and-push-the-app-files-to-github-30d3</link>
      <guid>https://dev.to/joseph4real/how-to-create-a-function-app-in-azure-create-and-publish-the-app-code-from-vs-to-azure-and-push-the-app-files-to-github-30d3</guid>
      <description>&lt;p&gt;In this blog, I will be showing you how to create a function app in Azure, use Visual Studio to create/write the function app code with https trigger, publish the app code to azure through Visual Studio. Furthermore, I will be pushing the app files to GitHub from Visual Studio and formatting the Readme.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Contents&lt;/strong&gt;&lt;br&gt;
• &lt;strong&gt;Create Function App in Azure&lt;br&gt;
• Create Function App Code and Publish to Azure&lt;br&gt;
• Publish the code to Azure&lt;br&gt;
• Testing the App by doing some Calculation&lt;br&gt;
• Pushing Function App Files to GitHub from Visual Studio&lt;br&gt;
• Formatting Readme&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Create Function App in Azure&lt;/strong&gt;&lt;br&gt;
a.  Search for a function app in the search bar and select function app as seen below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2iK5iD_h--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z4clux7qp528rrbvc19o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2iK5iD_h--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z4clux7qp528rrbvc19o.png" alt="Image description" width="699" height="229"&gt;&lt;/a&gt;&lt;br&gt;
b.  On the basic page adopt the below project details as specified in the following “Function App name- JoeCalculator”, &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TdPR0vzH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6d1rba9opvi7qv5pxw1h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TdPR0vzH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6d1rba9opvi7qv5pxw1h.png" alt="Image description" width="502" height="440"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;On the hosting page, Select Window OS and Consumption Plan (serverless hosting where you only pay when app runs), seen below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Aoe13Dwa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k1k9idj7d5b7a02bq0lx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Aoe13Dwa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k1k9idj7d5b7a02bq0lx.png" alt="Image description" width="549" height="297"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;c.  Choose default settings for Networking, Monitoring, Deployment and Tag. Under Deployment, the GitHub is disable so I will be creating a new GitHub repo from visual studio.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--hp5BhoXF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3tqb1zpcmfl2wkh38oqv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--hp5BhoXF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3tqb1zpcmfl2wkh38oqv.png" alt="Image description" width="698" height="201"&gt;&lt;/a&gt;&lt;br&gt;
d.  Select "Review + create" to review the app configuration selections. After validation is passed click create deploy the function app.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6lsdWxnS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v60ml0f3qb5rukrgir02.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6lsdWxnS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v60ml0f3qb5rukrgir02.png" alt="Image description" width="447" height="591"&gt;&lt;/a&gt;&lt;br&gt;
e.  When deployment is complete, click go to resource.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xpvbMgLC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x7dqfj7uyun4v7wk9x3e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xpvbMgLC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x7dqfj7uyun4v7wk9x3e.png" alt="Image description" width="392" height="226"&gt;&lt;/a&gt;&lt;br&gt;
f.  Click function to view your function app, this is where you will create your function app or where your function app will be after creating it. I will not create it here, I will be creating it in visual studio, then push it here.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UFSmLpBd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f0dai225vx0ygiel91fb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UFSmLpBd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f0dai225vx0ygiel91fb.png" alt="Image description" width="800" height="329"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Create Function App Code and Publish to Azure&lt;/strong&gt;&lt;br&gt;
a.  Open visual studio, create a new project, select azure function, and click next.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TUP1RmUi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sl2uafe3lp3cyeq8frej.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TUP1RmUi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sl2uafe3lp3cyeq8frej.png" alt="Image description" width="800" height="157"&gt;&lt;/a&gt;&lt;br&gt;
b.  Give your project a name and click next.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--LkOsxRKZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lumwxpsvvey7247gndrw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--LkOsxRKZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lumwxpsvvey7247gndrw.png" alt="Image description" width="458" height="288"&gt;&lt;/a&gt;&lt;br&gt;
c.  Select .NET 6, choose http trigger and click create.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KPZRaYsB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qhvai0egwmth5skqdjjp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KPZRaYsB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qhvai0egwmth5skqdjjp.png" alt="Image description" width="498" height="329"&gt;&lt;/a&gt;&lt;br&gt;
d.  Edit your code in visual studio environment as shown below. Replace the class “function1” and function attribute with the “Sum”, delete line 22 to 30 and replace with the code shown in yellow and build the code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--jrN3rSOl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p13wgzoejd3w7ytm2yuz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--jrN3rSOl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p13wgzoejd3w7ytm2yuz.png" alt="Image description" width="659" height="527"&gt;&lt;/a&gt;&lt;br&gt;
The code was successively built. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6vF8yN57--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h86080th6bbdruhk8zwh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6vF8yN57--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h86080th6bbdruhk8zwh.png" alt="Image description" width="668" height="190"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Publish the code to Azure&lt;/strong&gt;&lt;br&gt;
a.  Right click &lt;strong&gt;&lt;em&gt;JoecalculatorFunc&lt;/em&gt;&lt;/strong&gt; and click publish, then select Azure, and click next.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--q6KNA3C5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1dj0mh9r35xntoqi9ssc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--q6KNA3C5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1dj0mh9r35xntoqi9ssc.png" alt="Image description" width="432" height="299"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;b.  Select Azure function app (windows) and click next.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--hXZkaTiv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ru8ax7yx16p7gct4lzpt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--hXZkaTiv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ru8ax7yx16p7gct4lzpt.png" alt="Image description" width="506" height="163"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0mMdR8hJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f276uqhgytzvfsejgm91.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0mMdR8hJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f276uqhgytzvfsejgm91.png" alt="Image description" width="429" height="264"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;c.  You will need to Login to your Azure account, see the capture below after successfully login in.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Ff6o5Tlc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lcqjprs4ona4gktkds8j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ff6o5Tlc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lcqjprs4ona4gktkds8j.png" alt="Image description" width="573" height="279"&gt;&lt;/a&gt;&lt;br&gt;
d.  Expand and select your function app and click finish.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--tNAfn8Cf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zd4pt22qhg6eu4jtyyhn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--tNAfn8Cf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zd4pt22qhg6eu4jtyyhn.png" alt="Image description" width="418" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1OTvZBJu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w1e78dyfjxyprgpa6xps.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1OTvZBJu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w1e78dyfjxyprgpa6xps.png" alt="Image description" width="601" height="194"&gt;&lt;/a&gt;&lt;br&gt;
e.  Below capture details show the function app is ready to be published.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---PpX8Hqm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xbytx1bruh8pviy2ip63.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---PpX8Hqm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xbytx1bruh8pviy2ip63.png" alt="Image description" width="800" height="611"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;f.  See the capture below After successful publishing.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XT1MNqhT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/po95tnslb0ip88ulzdmc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XT1MNqhT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/po95tnslb0ip88ulzdmc.png" alt="Image description" width="796" height="436"&gt;&lt;/a&gt;&lt;br&gt;
This is output after successive publishing.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--GDm0IlH9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hmt71tjurgln0rsl07z3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--GDm0IlH9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hmt71tjurgln0rsl07z3.png" alt="Image description" width="620" height="180"&gt;&lt;/a&gt;&lt;br&gt;
g.  From the azure portal, you can see that the function app has been published/deployed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pj1M4ioT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4wu2r4z4bbwaumhvues4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pj1M4ioT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4wu2r4z4bbwaumhvues4.png" alt="Image description" width="644" height="220"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Testing the App by doing some Calculation&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
a.  Click on the Function App “Sum” and click the “Get Function URL” to copy the App URL.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--gbBpI6qN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mx9zf28r2dpy80bbwty9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--gbBpI6qN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mx9zf28r2dpy80bbwty9.png" alt="Image description" width="800" height="129"&gt;&lt;/a&gt;&lt;br&gt;
b.  Paste the URL into browser, give &lt;em&gt;&lt;strong&gt;“x” and “y”&lt;/strong&gt;&lt;/em&gt; values as shown in the capture and click enter.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--C7ljhfh4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wb5go1ekqb996fgpge9h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--C7ljhfh4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wb5go1ekqb996fgpge9h.png" alt="Image description" width="800" height="169"&gt;&lt;/a&gt;&lt;br&gt;
c.  After the*&lt;em&gt;&lt;em&gt;” two equals to sign”&lt;/em&gt;&lt;/em&gt;&lt;em&gt;, add *&lt;/em&gt;&lt;em&gt;(&amp;amp;=x=230&amp;amp;y=890)&lt;/em&gt;** and press enter. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6FAJLdob--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hlx3xhlnu0c553xyo5zi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6FAJLdob--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hlx3xhlnu0c553xyo5zi.png" alt="Image description" width="800" height="88"&gt;&lt;/a&gt;&lt;br&gt;
d.  The sum of &lt;strong&gt;&lt;em&gt;230 and 890 is 1120&lt;/em&gt;&lt;/strong&gt;, this shows Function App calculation is correct.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HQVhPm6v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1sfecreilpf4rafdfjii.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HQVhPm6v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1sfecreilpf4rafdfjii.png" alt="Image description" width="800" height="91"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pushing Function App Files to GitHub from Visual Studio&lt;/strong&gt;&lt;br&gt;
a.  Click on git changes by the right bottom side of the VS screen.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--otDwCo9B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d5sy9ln9iheaz90xr9cc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--otDwCo9B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d5sy9ln9iheaz90xr9cc.png" alt="Image description" width="392" height="349"&gt;&lt;/a&gt;&lt;br&gt;
b.  Select create git repository.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZjtjhIp8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mqrp96v3khc7qqegzo30.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZjtjhIp8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mqrp96v3khc7qqegzo30.png" alt="Image description" width="355" height="519"&gt;&lt;/a&gt;&lt;br&gt;
c.  The create a Git repo window will appear, enter your repo name and description, uncheck private, and click create and push.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fuHR3Nl1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sf3tynbp27n190btuf9n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fuHR3Nl1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sf3tynbp27n190btuf9n.png" alt="Image description" width="614" height="424"&gt;&lt;/a&gt;&lt;br&gt;
d.  After you have succeeded in pushing, the visual studio right side screen will appear as below. This show a new repository has been created.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_L8LKk2y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/o0f2n3455s7izrwoi9xs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_L8LKk2y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/o0f2n3455s7izrwoi9xs.png" alt="Image description" width="468" height="563"&gt;&lt;/a&gt;&lt;br&gt;
e.  Go to your Github account to confirm if you have successfully created and push your files.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--aHp1oCiY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/agtbeengecgv0zrth12c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aHp1oCiY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/agtbeengecgv0zrth12c.png" alt="Image description" width="760" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZiDr44U---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gfpvasgzkf7nn3z4aea1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZiDr44U---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gfpvasgzkf7nn3z4aea1.png" alt="Image description" width="721" height="377"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Formatting ReadMe&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--d0jJ0HOX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5ixnkc02c16r4781uuz6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--d0jJ0HOX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5ixnkc02c16r4781uuz6.png" alt="Image description" width="800" height="680"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0BOzxb1L--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tkkhgd26gvnjmsy3ld52.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0BOzxb1L--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tkkhgd26gvnjmsy3ld52.png" alt="Image description" width="800" height="289"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Lists of Common Linux Commands</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Fri, 07 Jul 2023 14:51:47 +0000</pubDate>
      <link>https://dev.to/joseph4real/lists-of-common-linux-commands-1kd9</link>
      <guid>https://dev.to/joseph4real/lists-of-common-linux-commands-1kd9</guid>
      <description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;sudo su command: -&lt;/em&gt;&lt;/strong&gt; is often used to switch to the superuser or root account to perform administrative tasks. This command stands for “superuser do,” and it lets you act as a superuser or root user while you’re running a specific command. It’s how Linux protects itself and prevents users from accidentally modifying the machine’s filesystem or installing inappropriate packages. Sudo is commonly used to install software or to edit files outside the user’s home directory: It’ll ask you for the administrator’s password before running the command you typed after it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9XusFtfy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/je17r8mhrw14jvnx19et.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9XusFtfy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/je17r8mhrw14jvnx19et.png" alt="Image description" width="800" height="132"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;apt update command:-&lt;/em&gt;&lt;/strong&gt;The command apt-get update is used to update the package index files on the system, which contain information about available packages and their versions. It downloads the most recent package information from the sources listed in the "/etc/apt/sources. list" file that contains your sources list. To update the packages using apt-get update use the following command:&lt;br&gt;
&lt;strong&gt;&lt;em&gt;apt-get update/apt update&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SpRGxjl6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sk7jvf2af76vgym9m9sp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SpRGxjl6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sk7jvf2af76vgym9m9sp.png" alt="Image description" width="800" height="471"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;apt install : -&lt;/em&gt;&lt;/strong&gt; This command allows you to install packages from the distribution's software repositories. After typing "apt install," you would typically provide the name of the package you wish to install. For example, to install the "nginx" package, you would use the following command:&lt;br&gt;
 &lt;strong&gt;&lt;em&gt;apt install azure-cli&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--sV-1VXJ8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/49dx0ovl7tjcxyrub2v6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--sV-1VXJ8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/49dx0ovl7tjcxyrub2v6.png" alt="Image description" width="800" height="355"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;ls Command:-&lt;/em&gt;&lt;/strong&gt;ls is probably the first command every Linux user typed in their terminal. It allows you to list the contents of the directory you want (the cucd rrent directory by default), including files and other nested directories.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uWzA_D0L--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9s3bbziic9yt8hgsznm1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uWzA_D0L--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9s3bbziic9yt8hgsznm1.png" alt="Image description" width="800" height="71"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;pwd Command:-&lt;/em&gt;&lt;/strong&gt;The pwd command stands for “print working directory,” and it outputs the absolute path of the directory you’re in. For example, if your username is “john” and you’re in your Documents directory, its absolute path would be: /home/john/Documents.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--e2kBfFJE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yogny6rj34p3znu7ydxr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--e2kBfFJE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yogny6rj34p3znu7ydxr.png" alt="Image description" width="745" height="116"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;cd Command:-&lt;/em&gt;&lt;/strong&gt; It refers to “change directory” and, as its name suggests, switches you to the directory you’re trying to access. The cd command is highly popular, along with ls.  For instance, if you’re inside your Documents directory and you’re trying to access one of its subfolders called Documents, you can enter it by typing:&lt;br&gt;
&lt;strong&gt;&lt;em&gt;cd Desktop&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uxMXBDQM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/76velgsfmja6u6au7dbo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uxMXBDQM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/76velgsfmja6u6au7dbo.png" alt="Image description" width="800" height="85"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can also supply the absolute path of the folder&lt;br&gt;
&lt;strong&gt;&lt;em&gt;cd /home/joeubuntu/Documents&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BWLNVZIg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/aa0alx7lkyaupnx47wvo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BWLNVZIg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/aa0alx7lkyaupnx47wvo.png" alt="Image description" width="800" height="77"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are some tricks with the cd command that can save you a lot of time when playing around with it:&lt;br&gt;
1) Go to the home folder: &lt;strong&gt;&lt;em&gt;type cd+one space&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Cd&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--wu6xLjBF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1pl5dr0zm1gm2zv9ezc1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--wu6xLjBF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1pl5dr0zm1gm2zv9ezc1.png" alt="Image description" width="800" height="84"&gt;&lt;/a&gt;&lt;br&gt;
2) Move a level up: documents folder is removed from /home/joeubuntu/Documents&lt;br&gt;
&lt;em&gt;&lt;strong&gt;cd ..&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--YzcqVBHH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zrjjgxdwlj07zaz9klrv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--YzcqVBHH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zrjjgxdwlj07zaz9klrv.png" alt="Image description" width="800" height="84"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;3) Return to the previous directory&lt;br&gt;
&lt;strong&gt;&lt;em&gt;cd –&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--YOFCfgXZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gkrtc1obgag0awgf611w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--YOFCfgXZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gkrtc1obgag0awgf611w.png" alt="Image description" width="800" height="114"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;mkdir Command:-&lt;/em&gt;&lt;/strong&gt; The command is use to create folders, i.e to make directory folder. Just specify the new folder’s name, ensure it doesn’t exist, and you’re ready to go. For example, to make a directory to keep all of your images, just type:&lt;br&gt;
&lt;strong&gt;&lt;em&gt;mkdir Films/&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qboiW539--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y2x0sa2jdmy1wlfgf6v5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qboiW539--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y2x0sa2jdmy1wlfgf6v5.png" alt="Image description" width="616" height="103"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To create subdirectories with a simple command, use the parent (-p) flag:&lt;br&gt;
&lt;em&gt;&lt;strong&gt;mkdir -p Films/2004/&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--IDaCR2sG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wv4e3xejea1kxzab54y3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--IDaCR2sG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wv4e3xejea1kxzab54y3.png" alt="Image description" width="646" height="131"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;Vim Command :-&lt;/strong&gt;&lt;/em&gt; it’s a command use to create, make  and edit a next file. To create a file use &lt;br&gt;
To make a file and Edit (follow the below description)&lt;br&gt;
a. Input vim my name (my name text doc created).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WgV5O4nW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w9oqi6npli692d81wzqm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WgV5O4nW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w9oqi6npli692d81wzqm.png" alt="Image description" width="800" height="44"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;b. To edit:- Blank space will be opened, press “I” on the keyboard to enable “editing” i.e. INSERT texts to the file.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UsasUR1I--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s783hzt6lpbt3nh3goec.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UsasUR1I--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s783hzt6lpbt3nh3goec.png" alt="Image description" width="444" height="414"&gt;&lt;/a&gt;&lt;br&gt;
c. Press the ESC button to leave the inert mode.&lt;br&gt;
d. To save, press Shift colon and type :wq and enter.  File saved, &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--S8sGKPdO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s79981xfuu2co8t1y0be.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--S8sGKPdO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s79981xfuu2co8t1y0be.png" alt="Image description" width="800" height="138"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;e. To exit or quit. Do control C, then type :qa and enter&lt;br&gt;
Note: touch and nano commands can also be used to create txt files in Linux.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--57EDY5gR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lab8hm51z4u1o4haswor.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--57EDY5gR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lab8hm51z4u1o4haswor.png" alt="Image description" width="752" height="105"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;Touch :-&lt;/strong&gt;&lt;/em&gt; to create a file: use &lt;em&gt;&lt;strong&gt;touch file1.txt file2.txt file3.txt&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_iU_5tXg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gq1p2f2wqwu7iio4zv2n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_iU_5tXg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gq1p2f2wqwu7iio4zv2n.png" alt="Image description" width="793" height="87"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;cp Command:-&lt;/strong&gt;&lt;/em&gt; It’s use to copy files and folders directly  from one directory to another. In the Linux terminal, sometimes it can replace conventional file managers.  To use the cp command, just type it along with the source and destination files:&lt;br&gt;
&lt;em&gt;cp my.txt file1.txt&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6TBtitxh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hr0vclac8cvs6r1s5xih.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6TBtitxh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hr0vclac8cvs6r1s5xih.png" alt="Image description" width="800" height="107"&gt;&lt;/a&gt;&lt;br&gt;
The command “cp” copy content (this how to use vim) from file “my” to “file1.txt”.&lt;br&gt;
&lt;em&gt;&lt;strong&gt;cp file1.txt tests&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Llw3V1Od--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r2yia5m58uyh4l9h6rn8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Llw3V1Od--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r2yia5m58uyh4l9h6rn8.png" alt="Image description" width="800" height="260"&gt;&lt;/a&gt;&lt;br&gt;
The command above copied text file file1.txt to tests folder.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;rm Command:-&lt;/em&gt;&lt;/strong&gt; You can use the rm command to remove files and directories. Be careful while using it, though, because it’s very difficult (yet not impossible) to recover files deleted this way.&lt;br&gt;
To delete a regular file, you’d type:&lt;br&gt;
&lt;em&gt;&lt;strong&gt;rm file2.txt&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--AVdnBRKa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vkpe8ucje7cwrpoktqv9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AVdnBRKa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vkpe8ucje7cwrpoktqv9.png" alt="Image description" width="800" height="113"&gt;&lt;/a&gt;&lt;br&gt;
If you want to delete an empty directory, you can use the recursive (-r) flag:&lt;br&gt;
&lt;strong&gt;&lt;em&gt;rm -r Films/&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cuksoYtw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1s3x4i5jogj52niwilx7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cuksoYtw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1s3x4i5jogj52niwilx7.png" alt="Image description" width="800" height="110"&gt;&lt;/a&gt;&lt;br&gt;
On the other hand, to remove a directory with content inside of it, you need to use the force (-f) and recursive flags:&lt;br&gt;
&lt;strong&gt;&lt;em&gt;rm -rf tests/&lt;br&gt;
Tests dir&lt;/em&gt;&lt;/strong&gt; with content*&lt;em&gt;_ file1.txt_&lt;/em&gt;*&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cO02Mxr1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r6i7aitr70p1yq6yiq7g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cO02Mxr1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r6i7aitr70p1yq6yiq7g.png" alt="Image description" width="800" height="74"&gt;&lt;/a&gt;&lt;br&gt;
No more tests directory.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_wsTGkjm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ec03a8lwektnm499add3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_wsTGkjm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ec03a8lwektnm499add3.png" alt="Image description" width="800" height="117"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;cat Command:-&lt;/strong&gt;&lt;/em&gt; Use to view the contents of a text file. &lt;br&gt;
&lt;em&gt;&lt;strong&gt;Cat &lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FiCeY5lk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qz1blume7twyd3e7bc1h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FiCeY5lk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qz1blume7twyd3e7bc1h.png" alt="Image description" width="800" height="47"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;Exit command:-&lt;/strong&gt;&lt;/em&gt; use to terminate terminal current section and return to the root environment.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--CyJKCAGL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rnkm5szbozjk3ncxiaj2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--CyJKCAGL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rnkm5szbozjk3ncxiaj2.png" alt="Image description" width="800" height="81"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;Clear command:-&lt;/strong&gt;&lt;/em&gt; its use to clear screen or the terminal content.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--AkRC532_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/07v53vwej9tlmcnl6849.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AkRC532_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/07v53vwej9tlmcnl6849.png" alt="Image description" width="800" height="197"&gt;&lt;/a&gt;&lt;br&gt;
After executing the clear command.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XUJf7dhC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1jbxtszttcqg6vbrtj3i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XUJf7dhC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1jbxtszttcqg6vbrtj3i.png" alt="Image description" width="800" height="134"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;History command:-&lt;/em&gt;&lt;/strong&gt; its to display lists of already executed commands, i.e. previous commands executed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---bmEkl-A--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ko97qdmvroijmsdh02fp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---bmEkl-A--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ko97qdmvroijmsdh02fp.png" alt="Image description" width="800" height="390"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   LETTER OF CONGRATULATION TO MYSELF
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XUHbK6a6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jl434k3sm2u37m9ew1rk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XUHbK6a6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jl434k3sm2u37m9ew1rk.png" alt="Image description" width="800" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to Create an Index file in Gitbash and Push it to Gitgub</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Sun, 02 Jul 2023 18:00:38 +0000</pubDate>
      <link>https://dev.to/joseph4real/how-to-create-an-index-file-in-gitbash-and-push-it-to-gitgub-1e2b</link>
      <guid>https://dev.to/joseph4real/how-to-create-an-index-file-in-gitbash-and-push-it-to-gitgub-1e2b</guid>
      <description>&lt;p&gt;In this blog I will be using Gitbash, a command line interface to create an in-index html file and push it to the githup repository.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Configure your environment&lt;/strong&gt; &lt;br&gt;
a. Enter this command: &lt;strong&gt;&lt;em&gt;git config –global user.name &lt;/em&gt;&lt;/strong&gt;, press enter.&lt;br&gt;
b. Enter also: &lt;strong&gt;&lt;em&gt;git config –global user.email &lt;/em&gt;&lt;/strong&gt;, press enter.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9lZgaPV---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9hb2wyoqisripc46jt1a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9lZgaPV---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9hb2wyoqisripc46jt1a.png" alt="Image description" width="794" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Make directory/ Create a folder&lt;/strong&gt;&lt;br&gt;
c. Make and change into the directory by Input the command below: &lt;br&gt;
&lt;strong&gt;&lt;em&gt;mkdir joseweb&lt;/em&gt;&lt;/strong&gt; and &lt;strong&gt;&lt;em&gt;cd joeweb&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BodUVf8B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hp7a85wjanwx180oya4p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BodUVf8B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hp7a85wjanwx180oya4p.png" alt="Image description" width="622" height="233"&gt;&lt;/a&gt;&lt;br&gt;
d. Initialize your new git repo in the working directory you created above using the this command: &lt;strong&gt;&lt;em&gt;git init&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--I1W_y7bj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w2pfhbgotldfxw285aps.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--I1W_y7bj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w2pfhbgotldfxw285aps.png" alt="Image description" width="800" height="140"&gt;&lt;/a&gt;&lt;br&gt;
e. Create an html file (index.html) by inputing this command:&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Touch index.html&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2WfoLUxk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oovnri1wff5s6izlj6ie.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2WfoLUxk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oovnri1wff5s6izlj6ie.png" alt="Image description" width="728" height="139"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;f. Input code into the html file using this command: &lt;em&gt;&lt;strong&gt;vi &lt;/strong&gt;&lt;/em&gt;&lt;br&gt;
A blank space will be opened, right click and paste your html code into the git blank space, continue by pressing escape key., and: &lt;strong&gt;&lt;em&gt;wq&lt;/em&gt;&lt;/strong&gt; to save and close the index.html file.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--t-Fn0mz0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j9u0phzsvpifauyr0qx1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--t-Fn0mz0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j9u0phzsvpifauyr0qx1.png" alt="Image description" width="800" height="440"&gt;&lt;/a&gt;&lt;br&gt;
h. View you code by typing this command: &lt;strong&gt;&lt;em&gt;cat .&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--CXFKRspn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lch0fy28ewmj6htowpwm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--CXFKRspn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lch0fy28ewmj6htowpwm.png" alt="Image description" width="800" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Create the Repository in github&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
You will need to create a repo to house your file using you github account&lt;br&gt;
a.  On the githuB page click on create new repo.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KbaCjP8Y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b7utx5a20g1jik705xep.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KbaCjP8Y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b7utx5a20g1jik705xep.png" alt="Image description" width="425" height="274"&gt;&lt;/a&gt;&lt;br&gt;
b. Enter the repository name, give theit a description, select public, initialize by checking add a README file, then click on create repository.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6I4w4cCg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9r3uakmpdidlcp7rb3e8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6I4w4cCg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9r3uakmpdidlcp7rb3e8.png" alt="Image description" width="800" height="795"&gt;&lt;/a&gt;&lt;br&gt;
c. On the repo page, click on Code and copy link under HTTPS.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7pO_BjoT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/57iz1q5z55ank6fijfao.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7pO_BjoT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/57iz1q5z55ank6fijfao.png" alt="Image description" width="800" height="321"&gt;&lt;/a&gt;&lt;br&gt;
d. After successfully creating the repository, copy the HTTPs URL into the Gitbash.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Push to Github&lt;/strong&gt;&lt;br&gt;
a. To add the repo created in the githug into the gitbas we use the command: &lt;strong&gt;&lt;em&gt;git remote add origin&lt;/em&gt;&lt;/strong&gt;, followed by the remote name (&lt;strong&gt;&lt;em&gt;origin&lt;/em&gt;&lt;/strong&gt;) and the URL:&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Git remote add origin &lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--P8zlidQg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tovuzze1iubls2jrta6h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--P8zlidQg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tovuzze1iubls2jrta6h.png" alt="Image description" width="800" height="119"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--W8eeIpA1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hzogjvuun8n45iz5s53o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--W8eeIpA1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hzogjvuun8n45iz5s53o.png" alt="Image description" width="800" height="119"&gt;&lt;/a&gt;&lt;br&gt;
b. Add the index file and press enter with this command: &lt;strong&gt;&lt;em&gt;Git add index.html&lt;/em&gt;&lt;/strong&gt;. type git status to check if the html file has been added.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--hoosVeMZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xnpm3fi8l1c2k4o2dd4h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--hoosVeMZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xnpm3fi8l1c2k4o2dd4h.png" alt="Image description" width="800" height="467"&gt;&lt;/a&gt;&lt;br&gt;
c. Create a new commit in your git repo with a commit message using this command &lt;strong&gt;&lt;em&gt;git commit -m &lt;/em&gt;&lt;/strong&gt;. Check again by using &lt;strong&gt;&lt;em&gt;git status&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1L5FV5wZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3wz6wantb6t9tw1jxp9i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1L5FV5wZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3wz6wantb6t9tw1jxp9i.png" alt="Image description" width="800" height="176"&gt;&lt;/a&gt;&lt;br&gt;
d. You can then use this command &lt;strong&gt;&lt;em&gt;git push origin master&lt;/em&gt;&lt;/strong&gt; to push the commit from the local &lt;em&gt;&lt;strong&gt;master&lt;/strong&gt;&lt;/em&gt; branch (i.e. index file from your loacal system) to the remote repo (githup repo) being specified by the name &lt;strong&gt;&lt;em&gt;origin&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KcUd33jZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9ael6zs71lidxq1dxnc1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KcUd33jZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9ael6zs71lidxq1dxnc1.png" alt="Image description" width="800" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;On the execution of the command above, your loacal commit (index file) will be uploaded to the github repo in your master as shown in the generated result above.&lt;br&gt;
e. On your githb repo, “you will see master had recently been pushed” i.e. the commit you just push, see main as default branch. Select master and you will be able to view the index.html you pushed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---iSRw8eH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/izni53qqk143t41ecx6u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---iSRw8eH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/izni53qqk143t41ecx6u.png" alt="Image description" width="699" height="379"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NOTE:&lt;/strong&gt; The capture above shows the index.html file and the commit message inputted from gitbash, this shows file was successfully pushed to repo.&lt;br&gt;
f. Open the index.html to verify the content.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--AeXFRktq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k6ws0jxgxrpl5j39v1j6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AeXFRktq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k6ws0jxgxrpl5j39v1j6.png" alt="Image description" width="800" height="439"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;:-The blog shows that the web contents (html code) has successfully been pushed from gitbash command line interface to the github repository.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to Create Azure Resource (e.g. Linux VM) using the Quickest Method</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Sun, 02 Jul 2023 17:23:05 +0000</pubDate>
      <link>https://dev.to/joseph4real/how-to-create-azure-resource-eg-linux-vm-using-the-quickest-method-fp</link>
      <guid>https://dev.to/joseph4real/how-to-create-azure-resource-eg-linux-vm-using-the-quickest-method-fp</guid>
      <description>&lt;p&gt;The blog post is about using the fastest or quickest way of creating a Virtual Machine. The fastest way to create a Virtual Machine in Azure is by using a QuickStart Custom Template.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;WHY USING A QUICKSTART CUSTOM TEMPLATE&lt;/strong&gt;&lt;br&gt;
The purpose is to automate deploying resources with Azure Resource Manager templates in a single, coordinated operation and in faster way to meet demand and load balancing issues. QuickStart template is a community contributed template or from a template stored in a template spec. &lt;/p&gt;

&lt;p&gt;Follow the steps below to create one.&lt;br&gt;
a. Search for a &lt;strong&gt;custom template&lt;/strong&gt; and select &lt;strong&gt;Deploy a Custom template.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--3og_4jMf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/au9qrxuoruak8c2ldf8h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--3og_4jMf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/au9qrxuoruak8c2ldf8h.png" alt="Image description" width="384" height="346"&gt;&lt;/a&gt;&lt;br&gt;
b. Click &lt;strong&gt;Create a linux Virtual Machine&lt;/strong&gt; and select &lt;strong&gt;QuickStart template&lt;/strong&gt; as shown below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ohNyxNkr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5tyf2yvz94jtat1k7gfk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ohNyxNkr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5tyf2yvz94jtat1k7gfk.png" alt="Image description" width="595" height="459"&gt;&lt;/a&gt;&lt;br&gt;
c. Being a faster way of creating VM, all project name details and parameters will be automatically given, as seen below, &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--S9jzPKDf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zp2a5d7tlh3eqz4tkz3i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--S9jzPKDf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zp2a5d7tlh3eqz4tkz3i.png" alt="Image description" width="704" height="630"&gt;&lt;/a&gt;&lt;br&gt;
Only the resource group will be inputted or recreated, Linux version and authentication type can be changed. You can also choose to edit template and parameters by clicking edit template. Click Next: review and create.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--EzwgIGC2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kk8ucytzmjg8cqu9jkrm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--EzwgIGC2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kk8ucytzmjg8cqu9jkrm.png" alt="Image description" width="800" height="355"&gt;&lt;/a&gt;&lt;br&gt;
d. When Deployment is complete as seen below, go to resource to see the overview of the QuickStart created VM called (SimpleLinuxVM).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--06_wsv7F--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dm72hvq1hn9u6n5n5igt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--06_wsv7F--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dm72hvq1hn9u6n5n5igt.png" alt="Image description" width="800" height="418"&gt;&lt;/a&gt;&lt;br&gt;
The VM Overview below&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WdQhTmuu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oww7rhu1uvu6z7bpnpm3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WdQhTmuu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oww7rhu1uvu6z7bpnpm3.png" alt="Image description" width="800" height="224"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;e. Open PowerShell and ssh into the VM using the IP address and password, the capture below shows I have successfully connected to the VM.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Qh677SUW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vjljjzxauu4hregmgzx0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Qh677SUW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vjljjzxauu4hregmgzx0.png" alt="Image description" width="800" height="227"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion:&lt;/strong&gt; The above description above shows I have successfully used QuickStart template to create a VM using the faster method.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to Add a Data Disk to a Virtual Machine and Initialize it for use</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Sat, 01 Jul 2023 17:09:14 +0000</pubDate>
      <link>https://dev.to/joseph4real/how-to-add-a-data-disk-to-a-virtual-machine-and-initialize-it-for-use-572e</link>
      <guid>https://dev.to/joseph4real/how-to-add-a-data-disk-to-a-virtual-machine-and-initialize-it-for-use-572e</guid>
      <description>&lt;p&gt;The blog shows how to create a data disk and add it to the Virtual Machine. &lt;br&gt;
a. Create a VM with the following project details below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Qm_0_cly--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ezui5gqvsusayvtcvuvm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Qm_0_cly--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ezui5gqvsusayvtcvuvm.png" alt="Image description" width="710" height="544"&gt;&lt;/a&gt;&lt;br&gt;
b.  When development is complete, click go to resource.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--21bB6SAV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ozeejrs5ow7wyixheeyr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--21bB6SAV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ozeejrs5ow7wyixheeyr.png" alt="Image description" width="696" height="288"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;c.  Click Disks under Settings, you will see only OS disk, no data disk, click on “plus sign create and attach a new disk” to create data disk.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vgJYZbyQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8pefp7hl1fiaixv7ueg5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vgJYZbyQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8pefp7hl1fiaixv7ueg5.png" alt="Image description" width="587" height="403"&gt;&lt;/a&gt;&lt;br&gt;
d.  Enter disk name, choose standard SSD and size you want, click save.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vh7EwS_E--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/66p3o9zk9hnrsag7u6j6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vh7EwS_E--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/66p3o9zk9hnrsag7u6j6.png" alt="Image description" width="800" height="171"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;e. You remotely connect to the Virtual Machine Project6VM to initialize the disk and make it usable, by inputting the Virtual Machine public IP and click connect, the desktop window appears after login.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xhrSXWbV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/51zpm0ofi1cg3r1ovrd1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xhrSXWbV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/51zpm0ofi1cg3r1ovrd1.png" alt="Image description" width="800" height="266"&gt;&lt;/a&gt;&lt;br&gt;
f.  Go to disk management of the newly open VM by right clicking this PC and select manage.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9VOwROPf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k7376mrme9hd4ut6803m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9VOwROPf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k7376mrme9hd4ut6803m.png" alt="Image description" width="767" height="275"&gt;&lt;/a&gt;&lt;br&gt;
g.  The new disk will be auto initialized as Disk2, but unallocated.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iURqRkhT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3rsoemrmr8f2s5jhv9ss.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iURqRkhT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3rsoemrmr8f2s5jhv9ss.png" alt="Image description" width="499" height="433"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;h.  Format the disk2 by creating a new volume, to make it useable.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Hla8iQJp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l678byc2gn042hecvcmr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Hla8iQJp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l678byc2gn042hecvcmr.png" alt="Image description" width="638" height="594"&gt;&lt;/a&gt;&lt;br&gt;
i.  The capture below show the data disk is now ready for use.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kr8mK24H--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p1gggmz6cps9dlfh9j5l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kr8mK24H--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p1gggmz6cps9dlfh9j5l.png" alt="Image description" width="800" height="201"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to host a static website in the Azure Blob storage</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Sat, 01 Jul 2023 16:55:30 +0000</pubDate>
      <link>https://dev.to/joseph4real/how-to-host-a-static-website-in-the-azure-blob-storage-262e</link>
      <guid>https://dev.to/joseph4real/how-to-host-a-static-website-in-the-azure-blob-storage-262e</guid>
      <description>&lt;p&gt;Hosting a static website on azure storage (Blob Storage), save costs and one can enjoy a straightforward hosting solution that ensures your website is easily accessible and efficient. Below are step by step guides on how to host a static website.&lt;/p&gt;

&lt;p&gt;a.  First and foremost, create a storage account with project details below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---jp9C13C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/foq8wca4ll37g1w5p56c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---jp9C13C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/foq8wca4ll37g1w5p56c.png" alt="Image description" width="624" height="405"&gt;&lt;/a&gt;&lt;br&gt;
b.  After deployment is complete, go to resource to locate the storage account created.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--sjuglYuu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kbq1pszaorf6ooh0ghim.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--sjuglYuu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kbq1pszaorf6ooh0ghim.png" alt="Image description" width="661" height="235"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Enable the Static website from the storage account&lt;/strong&gt;&lt;br&gt;
c.  Under Data management, click static website and enable the website as seen below. Type index.html and error.html into the boxes bar as seen below, then click save. The primary endpoint contains your URL.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Ldr8EwPc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lcp11xjaddxfawo6f744.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ldr8EwPc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lcp11xjaddxfawo6f744.png" alt="Image description" width="434" height="407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Upload Files and Folders to the Static website&lt;/strong&gt;&lt;br&gt;
d.  Click container under data storage, you will see a file called $web, its auto created when enabling static website under data management, double click $web and upload your website files one after the other.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ePkO6A0w--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qfvwtz0zhy0oy69pm75o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ePkO6A0w--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qfvwtz0zhy0oy69pm75o.png" alt="Image description" width="299" height="297"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--QHo11zdV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/om735p8gfxawdasnsuzn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--QHo11zdV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/om735p8gfxawdasnsuzn.png" alt="Image description" width="454" height="345"&gt;&lt;/a&gt;&lt;br&gt;
e.  Upload website folders by using the advanced tab, expand the advanced tab, give your folder a name. browse for files, select all files,and click upload as seen below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ApR6S1qR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1dfznxhedhupef2f7xui.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ApR6S1qR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1dfznxhedhupef2f7xui.png" alt="Image description" width="738" height="529"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use Visual Code to connect to your Azure account and upload your website folders&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;a.  Open the visual code, and click extension,&lt;br&gt;
b.  Search for azure account and click install.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--LXQG7-eG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n9h1szmwnb82jz1dt51x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--LXQG7-eG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n9h1szmwnb82jz1dt51x.png" alt="Image description" width="721" height="166"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;c.  Click on azure symbol, under resource and sign in into your azure account.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--DKiNZUqj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uvrgyfeu343y0l2s9c98.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--DKiNZUqj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uvrgyfeu343y0l2s9c98.png" alt="Image description" width="800" height="350"&gt;&lt;/a&gt;&lt;br&gt;
d.  You will get a message prompting you to close the browser. Close the browser and go back to Visual Studio Code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--T0ZMO1Fz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/la2nqypdgui0ophn4f4p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--T0ZMO1Fz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/la2nqypdgui0ophn4f4p.png" alt="Image description" width="530" height="295"&gt;&lt;/a&gt;&lt;br&gt;
e.  Click on subscription and select the storage account, blob container where your $web file is stored. Right click deploy to static website via azure storage.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pnkVAi6W--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/isvbfphhyod67al9kohr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pnkVAi6W--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/isvbfphhyod67al9kohr.png" alt="Image description" width="800" height="685"&gt;&lt;/a&gt;&lt;br&gt;
f.  A prompt to select the folders to deploy  the static website files appear at the top of the screen, browse to select all the files.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VPGIjc2y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gn5f5bf6u07lhf4zqi2z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VPGIjc2y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gn5f5bf6u07lhf4zqi2z.png" alt="Image description" width="800" height="397"&gt;&lt;/a&gt;&lt;br&gt;
Wait for the Website files be deployed. After done uploading you see seel all the website files as shown below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--jT0fbrW---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hdg4jyzrgco8smf151oz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--jT0fbrW---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hdg4jyzrgco8smf151oz.png" alt="Image description" width="284" height="445"&gt;&lt;/a&gt;&lt;br&gt;
g.  Click on Browse website or open a web browser and type in your primary endpointt (URL) and press enter.&lt;br&gt;
h.  You can then edit your web code to suit your web page&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--d3RkGTH6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2vdup4b8c6qqji1zxr3c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--d3RkGTH6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2vdup4b8c6qqji1zxr3c.png" alt="Image description" width="694" height="397"&gt;&lt;/a&gt;&lt;br&gt;
i.  Find the web page below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zncRLqsJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t0nwnsf0xovi0vkqo77p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zncRLqsJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t0nwnsf0xovi0vkqo77p.png" alt="Image description" width="768" height="430"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Share Your URL of the website Hosted on Azure&lt;/strong&gt;&lt;br&gt;
This URL can be found from the under the data management (static website)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--hJCIIaxQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n2oxukopzxvmeayxrlu0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--hJCIIaxQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n2oxukopzxvmeayxrlu0.png" alt="Image description" width="634" height="257"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to Create a blob Storage (Azure storage Account)</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Sat, 01 Jul 2023 16:26:39 +0000</pubDate>
      <link>https://dev.to/joseph4real/how-to-create-a-blob-storage-azure-storage-account-o8m</link>
      <guid>https://dev.to/joseph4real/how-to-create-a-blob-storage-azure-storage-account-o8m</guid>
      <description>&lt;p&gt;The blog is about creating blob storage. An Azure storage account contains all your Azure Storage data objects: blobs, files, queues, and tables.  The storage account provides a unique namespace for your Azure Storage data that's accessible from anywhere in the world over HTTP or HTTPS. Data in your storage account is durable and highly available, secure, and massively scalable.&lt;br&gt;
I will be creating an azure storage account with a blob access level; Blob Storage is optimized for storing massive amounts of unstructured data. In the storage a container will be created and unstructured doc will be uploaded. The URl will be shared and made public for easy accessibility.&lt;br&gt;
The doc that will be stored in the blob will be able to be accessed and used daily, 30 days and 180 days.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Create your Storage account.&lt;/strong&gt;&lt;br&gt;
a.  Sign into azure environment, in the search bar, type "storage account, select storage account and then click create. &lt;br&gt;
Enter your Project details as indicated in the pic below. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--U5gl0dfq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w8slozt2ieg0j2vc93qk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--U5gl0dfq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w8slozt2ieg0j2vc93qk.png" alt="Image description" width="800" height="512"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;b.  On the advanced tab, leave security, hierarchical Namespace, access protocols as default while selecting Hot access under blob storage access tier.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Wyq1Rkql--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mym1u2xmia9s2uj0a3yi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Wyq1Rkql--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mym1u2xmia9s2uj0a3yi.png" alt="Image description" width="786" height="240"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;c.  Select “enable public access from all networks”.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--hpp5iOOD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jivl7xvgbg9idvlfglh9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--hpp5iOOD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jivl7xvgbg9idvlfglh9.png" alt="Image description" width="800" height="232"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;d.  Leave other parameters as default, review the summary of the storage and click create.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vPafs3JV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nn4hoy9zbhbqjf85jfvj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vPafs3JV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nn4hoy9zbhbqjf85jfvj.png" alt="Image description" width="555" height="621"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;e.  When deployment is complete, click on "Go to resource” and click your Virtual Machine.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cn8zYtB4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hq6lynz2xy6chdsqup6z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cn8zYtB4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hq6lynz2xy6chdsqup6z.png" alt="Image description" width="761" height="275"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Creating a container and upload the unstructured document.&lt;/strong&gt;&lt;br&gt;
a.  On the left, go to Data storage and select container, create a new container where you upload your file, give the container a name and set the access level to BLOB, then click create button. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bB1sj_ic--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nack9bdjio0ri32y107t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bB1sj_ic--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nack9bdjio0ri32y107t.png" alt="Image description" width="614" height="387"&gt;&lt;/a&gt;&lt;br&gt;
b.  Upload file into the container.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--hKKgZhvL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k3o3nja6nju2nq2lzfhy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--hKKgZhvL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k3o3nja6nju2nq2lzfhy.png" alt="Image description" width="539" height="350"&gt;&lt;/a&gt;&lt;br&gt;
c.  Click on the file stored in the container to get the URL to share with the public. Share the URL of the doc and make it publicly accessible.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KihkMLeY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9yascvez18god8qbx4kt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KihkMLeY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9yascvez18god8qbx4kt.png" alt="Image description" width="616" height="271"&gt;&lt;/a&gt;&lt;br&gt;
d.  To access the file for everyday usage, you select the file and click on change tier, select hot access tier and save. This has the highest storage cost.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--f9kI5s5g--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s9pcvn54tx0ii0zj8kz3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--f9kI5s5g--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s9pcvn54tx0ii0zj8kz3.png" alt="Image description" width="469" height="280"&gt;&lt;/a&gt;&lt;br&gt;
e.  To access the file for 30 days usage, select cool tier and save, i.e., infrequently accessed or viewed once in a month.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--e0Xr9ikJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rgdsiwz19xq0kige9g0s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--e0Xr9ikJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rgdsiwz19xq0kige9g0s.png" alt="Image description" width="546" height="369"&gt;&lt;/a&gt;&lt;br&gt;
f.  To access the file for 180 days usage, select archive tier and save, i.e. rarely accessed or viewed once in 180 days.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--dbROKGXD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qa23skynt3prvtta8jhn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dbROKGXD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qa23skynt3prvtta8jhn.png" alt="Image description" width="558" height="378"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>HOW TO USE AZURE CLI COMMANDS TO DEPOLOY WEB APP FROM GITHUB REPO TO AZURE</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Fri, 23 Jun 2023 11:47:30 +0000</pubDate>
      <link>https://dev.to/joseph4real/how-to-use-azure-cli-commands-to-depoloy-web-app-from-github-repo-to-azure-1421</link>
      <guid>https://dev.to/joseph4real/how-to-use-azure-cli-commands-to-depoloy-web-app-from-github-repo-to-azure-1421</guid>
      <description>&lt;p&gt;Create a sample web app application in github repo, use the azure cli commands to deploy the web app content from github into azure porta i.e push the web app code from github to the deployment center of azure app service.&lt;/p&gt;

&lt;p&gt;a.  On the githuB page click on create new repo, &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cRCIIKbT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/piok4olfivnfilojmhlq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cRCIIKbT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/piok4olfivnfilojmhlq.png" alt="Image description" width="425" height="274"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;b.  Enter the repo name, give the repo a description, select public, initialize by checking add a README file, then click on create repo.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5OYbz9ow--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/urjazdew4meoxd8qqp0e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5OYbz9ow--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/urjazdew4meoxd8qqp0e.png" alt="Image description" width="679" height="631"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;c.  Click on add-file to upload or create file html or php web files, index.php file added as shown below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZIDuTEH8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yis7v80y3h44wwou19ki.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZIDuTEH8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yis7v80y3h44wwou19ki.png" alt="Image description" width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;*&lt;em&gt;Create resource group, web app plan and web app using the azure cli commands *&lt;/em&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;d.  Create the resource group using the command below, after az login in your powershell: AppServiceRG &lt;br&gt;
&lt;strong&gt;az group create --name AppServiceRG --location eastus&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--GgHkXlm2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lgtf7dkp1t3pprfyj5sh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--GgHkXlm2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lgtf7dkp1t3pprfyj5sh.png" alt="Image description" width="800" height="221"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;e.  Create an app plan using the command: appservicePlan&lt;br&gt;
&lt;strong&gt;az appservice plan create --name AppservicePlan --resource-group AppServiceRG&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--CEkKKsWO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uu5aq1mpabjc6g0jcs1j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--CEkKKsWO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uu5aq1mpabjc6g0jcs1j.png" alt="Image description" width="800" height="255"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;f.  Create a web app using this command: Project10WebApp&lt;br&gt;
&lt;strong&gt;az webapp create --name Project10WebApp --resource-group AppServiceRG --plan AppServicePlan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--wpGGovcs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eyhbuv94tf9gx3jbmzxk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--wpGGovcs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eyhbuv94tf9gx3jbmzxk.png" alt="Image description" width="800" height="255"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;g.  On the azure portal are the AppServiceRG, AppServicePlan and the Project10WebApp we created using the commands. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--OmHcf73s--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ux7d542tlljq033q8hv9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--OmHcf73s--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ux7d542tlljq033q8hv9.png" alt="Image description" width="800" height="293"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;h.  Deploy code from a public GitHub repository using the command below&lt;br&gt;
&lt;strong&gt;az webapp deployment source config --name Project10WebApp --resource-group AppServiceRG --repo-url &lt;a href="https://github.com/joseph4real/php-docs-hello-world"&gt;https://github.com/joseph4real/php-docs-hello-world&lt;/a&gt; --branch master --manual-integration&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Note: the repo URL is from the githup repo.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--NGMkhXzt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9gdv6pj0ka3lzy81r6gn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--NGMkhXzt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9gdv6pj0ka3lzy81r6gn.png" alt="Image description" width="800" height="225"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;i.  Below are Pictures before deploying from github and after deploying form github, i.e. before running the deploy command and after running the deploy command.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rISZmDp---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0ormzqipvx38s2z7fuiy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rISZmDp---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0ormzqipvx38s2z7fuiy.png" alt="Image description" width="800" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--j2YlY8aO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2pa25kdseu8d1zoh1vfv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--j2YlY8aO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2pa25kdseu8d1zoh1vfv.png" alt="Image description" width="708" height="497"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2cruqWP6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fhg4ck03m72ev7asq0aq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2cruqWP6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fhg4ck03m72ev7asq0aq.png" alt="Image description" width="800" height="231"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NOTE: After deploy, one can comfirm from the picture, the source as external git and github repo URL.&lt;/strong&gt;&lt;br&gt;
J.  Run the web app you created by opening the ULR or click the browser button.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--029Mvjny--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tm2bslja7i1g69yll6jp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--029Mvjny--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tm2bslja7i1g69yll6jp.png" alt="Image description" width="800" height="179"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;k.  Find the result below after opening the website.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--APpbQh-E--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xaranet5wurweaty1r0f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--APpbQh-E--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xaranet5wurweaty1r0f.png" alt="Image description" width="800" height="192"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;With the above blog I have successfully deployed my web app from github repo into my azure portal.&lt;/strong&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>HOW TO CREATE DEPLOTMENT SLOT AND MAKE A SWAP IN AZURE</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Fri, 23 Jun 2023 11:24:33 +0000</pubDate>
      <link>https://dev.to/joseph4real/how-to-deploy-web-app-using-deplotment-slot-and-make-a-swap-in-azure-50mm</link>
      <guid>https://dev.to/joseph4real/how-to-deploy-web-app-using-deplotment-slot-and-make-a-swap-in-azure-50mm</guid>
      <description>&lt;p&gt;Deployment slot is a process where you deploy apps in slots (1,2 and 3) i.e in a different version of the app, in order to test, make changes before deploying the app. &lt;br&gt;
This help to prevent downtime or interruption on the running app when rolling out an update on the app. When you want to carry out an update/upgrade on an app already running, or available to users, which is always in production slot1, in order to prevent downtime or interruption of that app in slot1. The already running app will need to be cloned, edit and updated, deploy to azure and tested, then do a swapped for it to be available to users. &lt;/p&gt;

&lt;p&gt;a.  Create a deployment slot: go to your web app page, click on deployment slot, you will need to upgrade to standard or premium if your free dev/test is used up, &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rpXYDVkj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8q6ga25fkxpsyoj6h2db.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rpXYDVkj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8q6ga25fkxpsyoj6h2db.png" alt="Image description" width="646" height="230"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;b.  To upgrade, click on scale up (app service plan) and upgrade to standard under production workload, then click select and upgrade pricing plan. With this you can be able to create slot.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--J8wtWw1m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j89lzzcajvs8hpyf1g0i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--J8wtWw1m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j89lzzcajvs8hpyf1g0i.png" alt="Image description" width="800" height="363"&gt;&lt;/a&gt;&lt;br&gt;
c.  Go back and click deployment slot again, you would see the web app running in production mode, production slot is default slot where your app is running, for users to see and use. So we will need to create another slot for testing and deployment of an update of your web app before being deployed for user to use.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--JSiGgnxF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qtw7tdwqe4caob1ptpmk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JSiGgnxF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qtw7tdwqe4caob1ptpmk.png" alt="Image description" width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;d.  Creating 2nd slot, an instance of the your webapp), click add slot, give a new name (as Staging), choose “clone setting from” i.e. clone your original web app (project10webapp) from production slot1 to the slot2 that we added. From the right the domain URL will change from project10webapp.azurewebsites.net (slot1) to project10webapp-staging.azurewebsites.net (slot2. You then click add.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--gZIFOv1a--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vyu2ul3llyy9cexlilt0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--gZIFOv1a--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vyu2ul3llyy9cexlilt0.png" alt="Image description" width="800" height="266"&gt;&lt;/a&gt;&lt;br&gt;
e.  Below pic showing the staging deployment slot2 just created, has been added). Project10webapp in production slot, the slot users are using,&lt;br&gt;
Project10webapp-staging (newly created slot) the app we need to test before deploying.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vRzEEKUY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0jwpbi1ioljjb214wtxx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vRzEEKUY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0jwpbi1ioljjb214wtxx.png" alt="Image description" width="800" height="273"&gt;&lt;/a&gt;&lt;br&gt;
f.  URL for the project10webapp in production slot is project10webapp.azurewebsites.net&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--oB0O8PSj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0xtzagvn64e07kfg88u1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--oB0O8PSj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0xtzagvn64e07kfg88u1.png" alt="Image description" width="800" height="216"&gt;&lt;/a&gt;&lt;br&gt;
URL for the Project10webapp-staging in staging slot project10webapp-staging.azurewebsites.net  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--jt4tEf-U--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1inr9oay08i1mn0dn3nb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--jt4tEf-U--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1inr9oay08i1mn0dn3nb.png" alt="Image description" width="800" height="202"&gt;&lt;/a&gt;&lt;br&gt;
Openning the URLs, show your web app is running, but its waiting for content to be added, as shown &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--v-ZwR5fF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x7q98tnkets8uyvoytaf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--v-ZwR5fF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x7q98tnkets8uyvoytaf.png" alt="Image description" width="576" height="299"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Adding web content to Azure web apps&lt;/strong&gt;&lt;br&gt;
g.  Use Visual Studio to add Web app code into your azure web apps.. By using publish tool, i.e. deploying  code to the azure app service. 1st load web code into Visual Studio by selecting file menu, open, Websites, file system and then Project10WebApp web code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FnTjb6B6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zd0izlgdwsnx1qhwsgv7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FnTjb6B6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zd0izlgdwsnx1qhwsgv7.png" alt="Image description" width="800" height="229"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UCUbWMyg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/msrfoly0c1n169mgi18y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UCUbWMyg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/msrfoly0c1n169mgi18y.png" alt="Image description" width="514" height="456"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;h.  Web code from the project file loaded into Visual studio&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5j5EjSjs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/a4t11r247wr8n3i1pqkx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5j5EjSjs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/a4t11r247wr8n3i1pqkx.png" alt="Image description" width="800" height="427"&gt;&lt;/a&gt;&lt;br&gt;
i.  Right click project10webapp and select publish to the azure web, select Azure and click next, then select select Azure app service and click next.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fjXSCDJ6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s0ovpvdtnxxccw4wgscn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fjXSCDJ6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s0ovpvdtnxxccw4wgscn.png" alt="Image description" width="594" height="338"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Zht5qE95--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xamnkpmk97wf0wdptosd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Zht5qE95--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xamnkpmk97wf0wdptosd.png" alt="Image description" width="590" height="266"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;j.  Expand the  resource-group “AppServiceRG”,  and select Project10AppWeb, then click finish, &lt;br&gt;
Publish in progress comes up, after click close.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0bTHrEG0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hduxfthxmj38d3dtqzz4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0bTHrEG0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hduxfthxmj38d3dtqzz4.png" alt="Image description" width="685" height="526"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fHkgzSCo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p5s0jwgm9khuvezyworc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fHkgzSCo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p5s0jwgm9khuvezyworc.png" alt="Image description" width="733" height="235"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;k.  Web app being deployed to Azure, after successful deployment, displayed below is the URL, the web app resource group and web app name gotten from the azure web services.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--yZhc67yi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mjgj0cflwnvv78f7xal6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--yZhc67yi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mjgj0cflwnvv78f7xal6.png" alt="Image description" width="800" height="282"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Z-UKNtsr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ywpysipowu2nbsfrnkfl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Z-UKNtsr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ywpysipowu2nbsfrnkfl.png" alt="Image description" width="719" height="441"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;l.  Click on the URL, and the web app appears as below, this is the web app running in the production skot1.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--n57VsZKy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wer0hzw3jm1v8urhjtm5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--n57VsZKy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wer0hzw3jm1v8urhjtm5.png" alt="Image description" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;m.  We then deploy the clone code of production slot1 into staging slot2 by publishing it in the Visual Studio, by edit only the name above to differentiate and save it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6A4l2poo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/79c4tsses3wrj9nvmvd4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6A4l2poo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/79c4tsses3wrj9nvmvd4.png" alt="Image description" width="800" height="343"&gt;&lt;/a&gt;&lt;br&gt;
n.  Redeploy (republish in VS) again into azure by selecting staging slot2 as shown below. Click new profile to republish, select azure, azure web service and click next, same as what we did above.&lt;br&gt;
o.  Expand the web app service group and select staging slot2, then click finish.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--m1gkr4U4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fvb0g4mmlhm8g4xuvryw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--m1gkr4U4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fvb0g4mmlhm8g4xuvryw.png" alt="Image description" width="800" height="286"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;p.  After successful deployment, click on site URL, in the web app, the name would have been modified as shown below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--35PK8c-4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/iz5c7zqmnyk34fzaumou.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--35PK8c-4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/iz5c7zqmnyk34fzaumou.png" alt="Image description" width="491" height="324"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;q.  Click on the URL, and the web app appears as below, this is the web app running in the staging slot2, the bold name we edited from &lt;strong&gt;joseph oyewale&lt;/strong&gt; to &lt;strong&gt;jesse miracle&lt;/strong&gt;   has change to Jesse Testimony. NOTE: it shows the test was successful and can be deployed &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--93RRjXPk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/soovpixf26awu579i39s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--93RRjXPk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/soovpixf26awu579i39s.png" alt="Image description" width="641" height="319"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SWAP FROM STAGING SLOT2 TO PRODUCTION SLOT1&lt;/strong&gt;&lt;br&gt;
Swaping the web app (tested app) from staging slot2 (source URL: project10webapp-staging.azurewebsites.net) to production slot1 ( target URL: project10webapp.azurewebsites.net) by using swap tool in deployments tool. &lt;/p&gt;

&lt;p&gt;a.  Below are URL pictures: showing “&lt;strong&gt;Im Joseph Oyewale&lt;/strong&gt;” is in production slot ( web app running for users to see).  Showing “&lt;strong&gt;Im Jessy Miracle&lt;/strong&gt;” is in the staging slot (the web app we are testing, need to be deployed and swapped).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZrLOP0aa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hzfn8d8fwxqx4nzllmlf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZrLOP0aa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hzfn8d8fwxqx4nzllmlf.png" alt="Image description" width="741" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--RhUuSJoW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mih84o3gv5zfqqk411vp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--RhUuSJoW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mih84o3gv5zfqqk411vp.png" alt="Image description" width="790" height="434"&gt;&lt;/a&gt;&lt;br&gt;
b.  Click swap button ande then select the source as (project10webapp-staging) staging slot2 the new version of the app that will be swapped into the target as ( project10webapp) production slot1. After click swap.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--gssbaV6b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9vw2f3yme6dfxz9if5x3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--gssbaV6b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9vw2f3yme6dfxz9if5x3.png" alt="Image description" width="408" height="350"&gt;&lt;/a&gt;&lt;br&gt;
c.  After success swap, close the window, click on the URL in the production slot1, i.e. &lt;a href="https://project10webapp.azurewebsites.net/"&gt;https://project10webapp.azurewebsites.net/&lt;/a&gt;&lt;br&gt;
Based on the pictures below, the URL of the web app “Project10WebApp” in the production slot1, has successfully swapped the web content project10webapp-staging of staging slot to production slot. The name “JOSEPH OYEWALE” has changed to the name “JESSE TESTIMONY”.&lt;br&gt;
NOTE: same URL but content has change using the swapping tool of deployment slot&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--lkPSOj8Q--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oe2uv6lpx0eihjyw4h0u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lkPSOj8Q--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oe2uv6lpx0eihjyw4h0u.png" alt="Image description" width="700" height="355"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--3jT_mkrM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j8rcsldpau6gatcogckk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--3jT_mkrM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j8rcsldpau6gatcogckk.png" alt="Image description" width="700" height="387"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With the blog post, I have successfully deployed and swapped my tested and upgraded web content into the slot where users can have access to.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to Create Web app in Azure Using Azure cli</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Fri, 23 Jun 2023 10:24:34 +0000</pubDate>
      <link>https://dev.to/joseph4real/how-to-create-web-app-in-azure-using-azure-cli-2nmn</link>
      <guid>https://dev.to/joseph4real/how-to-create-web-app-in-azure-using-azure-cli-2nmn</guid>
      <description>&lt;p&gt;The blog post is about using Azure cli commands to create web application&lt;br&gt;
a.  Open powershell terminal and login using  “az login”, you will be directed to a web browser to sign in. after that use the following commands to create:-&lt;br&gt;
b.  Create the resource group using the command below, after doing az login in your powershell: AppServiceRG &lt;br&gt;
az group create --name AppServiceRG --location eastus.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UzlQHeF3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hafh8njfekroe03emj5c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UzlQHeF3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hafh8njfekroe03emj5c.png" alt="Image description" width="800" height="221"&gt;&lt;/a&gt;&lt;br&gt;
c.  Create an app plan using the command: appservicePlan&lt;br&gt;
az appservice plan create --name appservicePlan --resource-group appServiceRG&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--JtCa7Hd7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2ep5eip3qa2det5i2tue.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JtCa7Hd7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2ep5eip3qa2det5i2tue.png" alt="Image description" width="800" height="255"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;d.  Create a web app using this command: Project10WebApp&lt;br&gt;
az webapp create --name Project10WebApp --resource-group AppServiceRG --plan AppServicePlan&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--U00Sl9Fh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6irghoehv90pd7gfjls6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--U00Sl9Fh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6irghoehv90pd7gfjls6.png" alt="Image description" width="800" height="255"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;e.  Go to the azure portal to confirm that you have successfully created your resource group: AppServiceRG, web plan: AppServicePlan and the web app: Project10WebApp. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--McfHf52q--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vifl6b3jbz0ky3y2v8fg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--McfHf52q--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vifl6b3jbz0ky3y2v8fg.png" alt="Image description" width="800" height="293"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Under the app plan we can see CPU, Memory. Data in/out, region, instance size, scale count, SKU/Pricing tier this shows the app plan does the computing work of a VM.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zc06Pqt8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bhwglz4ax6fk1vcon4a4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zc06Pqt8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bhwglz4ax6fk1vcon4a4.png" alt="Image description" width="800" height="309"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Azure Mobile App and Its Functions</title>
      <dc:creator>joseph4real</dc:creator>
      <pubDate>Sat, 10 Jun 2023 14:49:37 +0000</pubDate>
      <link>https://dev.to/joseph4real/azure-mobile-app-and-its-functions-47lj</link>
      <guid>https://dev.to/joseph4real/azure-mobile-app-and-its-functions-47lj</guid>
      <description>&lt;p&gt;Azure mobile apps is a very powerful tool that help one to manage azures services on the go in a mobile environment., if you are not using the mobile app, you are might not be that effective in using azure services, the following are the benefits of azure mobile usage&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It helps you access all your azure resources in your environment 
from the convenient of your phone.&lt;/li&gt;
&lt;li&gt;It helps you quickly diagnose and fix issues that may arise in 
your environment.&lt;/li&gt;
&lt;li&gt;Monitor resources and get Azure Service Health alerts.&lt;/li&gt;
&lt;li&gt;Manage your resources through Azure Cloud Shell&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s a home build, dashboard like field that has multiples latest list and chart. Showing up services that are most important in an environment adapter. With the azure mobile app one can see recent resources that one has created, you can start and stop you VMs and other services. You can see and view service health of your resources and resource groups. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Azure Mobile Apps features&lt;/strong&gt;&lt;br&gt;
The following features are important to cloud-enabled mobile development:&lt;br&gt;
•       Authentication and authorization: Use Azure Mobile Apps to &lt;br&gt;
        sign-in users using social and enterprise provides. Azure &lt;br&gt;
        App Service supports Azure Active Directory, Facebook™, &lt;br&gt;
        Google®, Microsoft, Twitter®, and OpenID Connect®. Azure &lt;br&gt;
        Mobile Apps supports any authentication scheme that is &lt;br&gt;
        supported by ASP.NET Core.&lt;/p&gt;

&lt;p&gt;• Data access: Azure Mobile Apps provides a mobile-friendly &lt;br&gt;
        OData v4 data source that's linked to a compatible &lt;br&gt;
        database via Entity Framework Core. Any compatible &lt;br&gt;
        database can be used including Azure SQL, Azure Cosmos DB, &lt;br&gt;
        or an on-premises Microsoft SQL Server.&lt;/p&gt;

&lt;p&gt;• Offline sync: Build robust and responsive mobile &lt;br&gt;
        applications that operate with an offline dataset. You can &lt;br&gt;
        sync this dataset automatically with service, and handle &lt;br&gt;
        conflicts with ease.&lt;/p&gt;

&lt;p&gt;• Client SDKs: There's a complete set of client SDKs that &lt;br&gt;
        cover cross-platform development (.NET, and Apache &lt;br&gt;
        Cordova™). Each client SDK is available with an MIT &lt;br&gt;
        license and is open-source.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Azure App Service features&lt;/strong&gt;&lt;br&gt;
The following platform features are useful for mobile production sites:&lt;br&gt;
• Autoscaling: With App Service, you can quickly scale up or &lt;br&gt;
        scale out to handle any incoming customer load. Manually &lt;br&gt;
        select the number and size of VMs, or set up autoscaling &lt;br&gt;
        to scale your service based on load or schedule.&lt;/p&gt;

&lt;p&gt;• Staging environments: App Service can run multiple &lt;br&gt;
        versions of your site. You can perform A/B testing and do &lt;br&gt;
        in-place staging of a new mobile service.&lt;/p&gt;

&lt;p&gt;• Continuous deployment: App Service can integrate with &lt;br&gt;
        common source control management (SCM) systems, allowing &lt;br&gt;
        you to easily deploy a new version of your mobile service.&lt;/p&gt;

&lt;p&gt;• Virtual networking: App Service can connect to on-premises &lt;br&gt;
        resources by using virtual network, Azure ExpressRoute, or &lt;br&gt;
        hybrid connections.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
