{"id":27558,"date":"2018-02-19T10:00:56","date_gmt":"2018-02-19T15:00:56","guid":{"rendered":"https:\/\/simpleprogrammer.com\/?p=27558"},"modified":"2018-02-19T08:01:39","modified_gmt":"2018-02-19T13:01:39","slug":"cloud-computing-aws-developer-tools","status":"publish","type":"post","link":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/","title":{"rendered":"Pioneering Your Way to Cloud Computing With AWS Developer Tools"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-27603 alignright\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/Pioneering-Your-Way-to-Cloud-Computing-With-AWS-Developer-Tools-square.png\" alt=\"\" width=\"282\" height=\"282\" \/>There\u2019s a journey happening right now as more and more organizations migrate to cloud platforms.<\/p>\n<p>According to <a href=\"https:\/\/www.rightscale.com\/blog\/cloud-industry-insights\/cloud-computing-trends-2017-state-cloud-survey\">Right Scale\u2019s February 2017 \u201cState of the Cloud\u201d survey<\/a>, 79 percent of organizations now have systems running in either public or private cloud infrastructure and 95 percent are going to pursue cloud adoption.<\/p>\n<p>Astute programmers have recognized the shift and have already begun their trek towards cloud proficiency.<\/p>\n<p>As a programmer, you can see the wagons loading up and heading out. Will you be in the lead on this journey? Don\u2019t dig in your heels and get left behind in a lonely ghost town. Don\u2019t make the <a href=\"https:\/\/simpleprogrammer.com\/lp\/5-learning-mistakes-1\/\">5 Learning Mistakes Software Developers Make<\/a>.<\/p>\n<p><strong>Saddle up! It\u2019s time to become a Cloud Computing Pioneer.<\/strong><\/p>\n<p>Like any pioneer looking at the wilderness in front of them, knowing the right trail to take is critical.<\/p>\n<h2>The AWS Developer Tools Map<\/h2>\n<p>Amazon Web Services Developer tools consist of two main territories: CodeCommit and CodeBuild. Each territory focuses on a specific development area, including source code management and build automation. Together, these tools deliver you to your destination of a mature development platform, fully integrated with your systems infrastructure.<\/p>\n<p>Briefly, let\u2019s cover the concepts of the two developer tools. Afterwards, we\u2019ll explore both in more detail by walking through several hands-on exercises to set up and use each one in your own little micro-project, the \u201cWheel of Lunch!\u201d This basic application will demonstrate each component of the AWS Developer Tools suite.<\/p>\n<p>In the end, you will have a basic understanding of what both tools do and how to make use of them. You will be ready to strike out on your own for undiscovered country and leverage these tools in your own development projects.<\/p>\n<h3>CodeCommit<\/h3>\n<p>Source code management is always the first leg on any journey to a mature development destination because without a solid footing of stable source code you\u2019re treading on quicksand. Source code that is not well managed can drag you down into a pit of troubleshooting and firefighting that kills forward momentum \u2014 and can kill a project altogether. The AWS developer tool that helps you stay out of the quicksand is AWS <a href=\"http:\/\/aws.amazon.com\/codecommit\">CodeCommit<\/a>.<\/p>\n<p>AWS CodeCommit is built on the familiar <a href=\"https:\/\/git-scm.com\/\">git source control management platform<\/a>. So, if you are already familiar with git and git practices, you can leverage that knowledge to get off to a running start with CodeCommit. If you are unfamiliar with git, there are plenty of <a href=\"http:\/\/natthompson.com\/git-resources-for-developers\/\">git resources and tutorials to help you get started<\/a>.<\/p>\n<p>If you work in a team environment, CodeCommit can be configured for multiple team members to work from the same repository. Depending on the complexity of your team, you can either configure approval levels in CodeCommit or rely on adherence to procedure to govern which commits reach the main trunk of your code that will eventually enter production.<\/p>\n<p>On top of git functionality, CodeCommit allows you to integrate with the next territory on the map, CodeBuild. With a single commit to your repository, it becomes possible to build, package a deployment change for a QA environment for manual testing, and then deploy to your production environment.<\/p>\n<h3>CodeBuild<\/h3>\n<p>Every good wagon train has them. The severely critical, detail-oriented, \u201cmy way or the highway\u201d trail boss who won\u2019t be happy until every detail has been scrutinized, every strap buckled, and every wheel tightened before the journey even begins.<\/p>\n<p><a href=\"http:\/\/aws.amazon.com\/codebuild\">CodeBuild<\/a> is that trail boss but in automated form; it makes sure your code is truly ready for primetime. When you integrate CodeBuild into your software delivery pipeline, you are inviting a relentless machine to pick apart your code, look for deficiencies, and provide you with a list of just how poor your code quality is. For this critical analysis, you are undyingly grateful.<\/p>\n<p>This relentless evaluation of each commit to your repository ensures your code is up to the performance, architectural, and regression standards needed for a successful release. In days gone by, this analysis was done with peer reviews and manual testing, which took far longer and was prone to error.<\/p>\n<p>With CodeBuild, every step is automated. Each build is carried out exactly as instructed and just like the build before. All of this process happens in a fraction of the time that rounds of manual review used to take. No chance that a peer is tired and has missed something. <strong>An exact result is produced every time.<\/strong><\/p>\n<p>Continuous integration of builds means more issues are discovered before any manual review or testing takes place. Issues found in this stage are far less costly to correct than errors found during manual testing or, worse yet, after release to production. A clean build of your code after every commit means you can be confident your code is ready for production.<\/p>\n<h2>Developer Tools, Step by Step<img loading=\"lazy\" decoding=\"async\" class=\" wp-image-27601 alignright\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/Developer-Tools-Step-by-Step-1.png\" alt=\"\" width=\"284\" height=\"284\" \/><\/h2>\n<p>You\u2019ve surveyed the map, but before you set off, you need a trip to the AWS general store to get provisioned for this trip.<\/p>\n<p>You will need an AWS account to get started. Fortunately, <a href=\"https:\/\/aws.amazon.com\/free\/\">for first time, AWS offers Amazon customers a free tier<\/a> of usage for your first twelve months with the service. It\u2019s enough capacity to cover everything we\u2019re going to talk about in this article and explore a bit more on your own.<\/p>\n<h3>Setting Up Your AWS Account<\/h3>\n<p>The AWS console is your starting point for all things Amazon Web Services related. Head over to <a href=\"http:\/\/aws.amazon.com\">http:\/\/aws.amazon.com<\/a> and click on the \u201cCreate an AWS Account\u201d button which takes you to the account registration screen.<\/p>\n<p>Fill out the forms and click the \u201cCreate Account and Continue\u201d button when you are ready to proceed.<\/p>\n<p>Even though you are going to be using the 12-month free tier, you will need to enter a payment option to proceed. Amazon will only bill this card if you exceed your free usage threshold.<\/p>\n<p>You will be presented with a screen to provide a phone number and verify that you are human and not a bot. Once you put in your information, you will receive a phone call with a PIN; look for the notification on the screen and enter the PIN.<\/p>\n<p>After that, you will see a welcome banner and be prompted to sign into the AWS console.<\/p>\n<p>Enter the email address you used to create your account, then enter the password you used when you created the account.<\/p>\n<p>Congratulations! Your supplies are bought. Your wagon is loaded. It\u2019s time to roll out and start using AWS.<\/p>\n<p>You\u2019re heading for the first marker along the trail. It is a destination called CodeCommit. Let\u2019s take the path turn by turn to get you there.<\/p>\n<h3>Setting Up CodeCommit<\/h3>\n<p>In the \u201cAWS services\u201d search box, enter CodeCommit and click on the selection that appears.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-27560 size-full\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/011-AWSServicesConsole.png\" alt=\"AWS developer tools\" width=\"624\" height=\"195\" \/><\/p>\n<p>You\u2019re now at the CodeCommit console, where you should click the \u201cGet started\u201d button.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27561\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/013-CodeCommitGetStarted.png\" alt=\"AWS developer tools\" width=\"353\" height=\"201\" \/><\/p>\n<p>You will need to enter a repository name and an optional description for the repository. Once you\u2019ve entered those, click the \u201cCreate repository\u201d button.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27562\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/014-CreateRepository.png\" alt=\"AWS developer tools\" width=\"440\" height=\"339\" \/><\/p>\n<p>You will be asked if you want to be notified via email of events and any comments on your repository. If you have a team of developers working together, this option can improve communication to be notified of changes in source code as they are pushed to the server.<\/p>\n<p>AWS will complete the creation of your repository and present you with a pop-up that contains information on security and connecting to your CodeCommit repository. The danger it is warning you of is worthy to note.<\/p>\n<p>It is explaining that the account you are using has full control over all of your <a href=\"http:\/\/www.amazon.com\/exec\/obidos\/ASIN\/B01CIV6QLU\/makithecompsi-20\">AWS account<\/a>. If it were to be compromised, bandits could make off with all the donations your wagon train is hauling west for the orphans in the Nevada territories. We will be addressing this concern a little later on.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27563\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/016-ConnectRepository.png\" alt=\"AWS developer tools\" width=\"624\" height=\"483\" \/><\/p>\n<p>If you don\u2019t have Git installed, you must install it before proceeding (<a href=\"https:\/\/git-for-windows.github.io\/\">https:\/\/git-for-windows.github.io\/<\/a>). Because of the distributed nature of Git, every computer running Git is a fully sufficient and independent node in your repository network. Full recovery of your Git repository is possible as long as any one node remains intact, which means it is necessary to install Git on your local machine to enable it to become a node in the network.<\/p>\n<p>You will also need to install the AWS Command Line Interface, CLI. Select either the <a href=\"https:\/\/s3.amazonaws.com\/aws-cli\/AWSCLI64.msi\">64-bit<\/a> or the <a href=\"https:\/\/s3.amazonaws.com\/aws-cli\/AWSCLI32.msi\">32-bit<\/a> operating system installer.<\/p>\n<p>Before you can complete the setup and clone the repository, you will need to create an account, called an IAM User, with lower permission levels than the root account you created and logged in with when you set up AWS. This account will allow you to connect to your CodeCommit repository over an HTTPS connection and not worry that if that connection is compromised an attacker will have access to your root level account.<\/p>\n<h3>Create an IAM User<\/h3>\n<p>Time to get your hands dirty. You\u2019re at the foot of the pass, heading into mountain territory. The concepts you\u2019ll be working with next go beyond your experience with non-cloud development. You may feel the hairs on the back of your neck prick up and ask yourself, \u201cAre there bears here? What about mountain lions?\u201d<\/p>\n<p>There\u2019s nothing that will eat you on this trail, but the footing is a little tricky. Not to worry, I\u2019m here to guide you. If you follow my lead, you\u2019ll make it through unharmed, wiser, and with tales to tell your grandchildren.<\/p>\n<p>From the services drop-down menu in the \u201cSecurity, Identity &amp; Compliance\u201d section, click the IAM link.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27564\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/017-SecurityIdentityCompliance.png\" alt=\"AWS developer tools\" width=\"205\" height=\"219\" \/><\/p>\n<p>In the IAM navigation panel, click the \u201cUsers\u201d link.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27565\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/018-UsersLink.png\" alt=\"AWS developer tools\" width=\"111\" height=\"332\" \/><\/p>\n<p>Click the \u201cAdd User\u201d button.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27566\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/019-AddUser.png\" alt=\"AWS developer tools\" width=\"399\" height=\"196\" \/><\/p>\n<p>Enter a name for your user.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27567\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/020-UserName.png\" alt=\"AWS developer tools\" width=\"579\" height=\"108\" \/><\/p>\n<p>Make sure the \u201cProgrammatic Access\u201d checkbox is selected.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27569\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/94533300.png\" alt=\"AWS developer tools\" width=\"847\" height=\"124\" \/><\/p>\n<p>Click the \u201cNext: Permissions\u201d button.<\/p>\n<p>Let\u2019s grant our user permissions to CodeCommit. If your team is large or team members come and go, another option is to set up a developers group and grant it permissions to CodeCommit. You can then add and remove users from the group as needed. For this exercise, granting permissions directly to the user will be sufficient.<\/p>\n<p>Select the \u201cAttach existing policies directly\u201d option. Type \u201cCodeCommit\u201d in the search text box.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27568\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/022-AttachPolicy.png\" alt=\"AWS developer tools\" width=\"624\" height=\"284\" \/><\/p>\n<p>Select the \u201cAWSCodeCommitFullAccess\u201d policy and click the \u201cNext: Review\u201d button.<\/p>\n<p>Confirm everything meets your expectations and click the \u201cCreate user\u201d button.<\/p>\n<p>You will be presented with an option to download the user\u2019s security credentials as a CSV file. Go ahead and click the \u201cDownload .csv\u201d button and store the file in a safe location.<\/p>\n<p>You now need to configure your AWS CLI to store your IAM credentials. Launch a command prompt and type \u201caws configure\u201d to launch the AWS CLI configuration.<\/p>\n<p>Enter the AWS access key ID you downloaded in the .csv file for the IAM user you created.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27570\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/027-AWSConfigureAccessKeyID.png\" alt=\"AWS developer tools\" width=\"624\" height=\"35\" \/><\/p>\n<p>Enter the Secret Access key.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27571\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/028-AWSConfigureSecretAccessKey.png\" alt=\"AWS developer tools\" width=\"459\" height=\"62\" \/><\/p>\n<p>Accept the default Region and output format.<\/p>\n<p>Now you are ready to clone your repository to your local computer. As discussed previously, Git is a distributed system of nodes. Cloning the repository makes your local computer the second node in the repository and a complete backup to the first node, the CodeCommit repository on Amazon\u2019s cloud.<\/p>\n<p>To start the cloning process, create a directory that you would like to use to store your source code in.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27572\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/029-MakeDirectory.png\" alt=\"AWS developer tools\" width=\"212\" height=\"113\" \/><\/p>\n<p>Step down from your root directory to the directory you just created. Git actions are relative to the directory you are working in, so changing to the new directory is important to prevent unintended changes in the root directory.<\/p>\n<p>In your CodeCommit repository, click on the \u201cConnect to repository\u201d link to display your connection information. Copy the URL from the git clone command to your clipboard.<\/p>\n<p>Type \u2018git clone\u2019 followed by the URL you copied at the command prompt.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27574\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/030-GitClone.png\" alt=\"AWS developer tools\" width=\"624\" height=\"143\" \/><\/p>\n<p>This action will create a local git repository connected to your AWS CodeCommit repository.<\/p>\n<p>You will be prompted to log in with your git username and password. Enter those credentials from your IAM user.<\/p>\n<p>Once the clone operation is complete, you will receive a message that you\u2019ve cloned an empty repository.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27573\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/031-CloneResult.png\" alt=\"AWS developer tools\" width=\"624\" height=\"128\" \/><\/p>\n<p>We will get to a coding example shortly. For now, let\u2019s start with a simple text file to demonstrate that CodeCommit is working.<\/p>\n<p>Change to the subdirectory Git created in your folder.<\/p>\n<p>Type \u201cnotepad HowdyPartner.txt\u201d at the command prompt<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27575\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/032-NotepadTextFile.png\" alt=\"AWS developer tools\" width=\"370\" height=\"100\" \/><\/p>\n<p>You\u2019ll receive a message that the file doesn\u2019t exist. You will be asked if you want to create a new file. Choose \u201cyes.\u201d<\/p>\n<p>You\u2019ll now be in the Notepad application. Type, \u201cHi! How are you doing?\u201d or your preferred text into Notepad, save, and close the file.<\/p>\n<p>Back at the command prompt, type \u201cgit status\u201d. You will receive a message indicating you have new files ready to be staged and committed.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27576\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/034-GitStatus.png\" alt=\"AWS developer tools\" width=\"622\" height=\"317\" \/><\/p>\n<p>You need to stage the files by typing \u201cgit add *.txt\u201d at the command prompt. Typing \u201cgit status\u201d again will show your file staged and ready to be committed.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27577\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/035-PostAddStatus.png\" alt=\"AWS developer tools\" width=\"425\" height=\"240\" \/><\/p>\n<p>Commit the file by typing \u201cgit commit -m \u2018Adding HowdPartner.txt\u2019 to git repository\u201d<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27578\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/036-GitCommitResult.png\" alt=\"AWS developer tools\" width=\"624\" height=\"99\" \/><\/p>\n<p>At this point, your new file lives in the local Git repository on your computer. To sync it to the repository in the cloud on CodeCommit, you need to issue a push command. Type \u201cgit push\u201d at the command prompt.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27579\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/037-GitPushResult.png\" alt=\"AWS developer tools\" width=\"571\" height=\"205\" \/><\/p>\n<p>Now you have a copy of your file in the cloud on CodeCommit. Refresh your repository screen in the CodeCommit console to see your new file.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27580\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/038-CodeBuildRepositoryUpdated.png\" alt=\"AWS developer tools\" width=\"589\" height=\"380\" \/><\/p>\n<p>You now have the first building block in your developer tool pipeline in place. From here, the next step is integrating your CodeCommit repository with automated builds and testing with CodeBuild.<\/p>\n<h3>Setting Up CodeBuild<\/h3>\n<p>You\u2019ve found your way through some tough country at this point. You\u2019ve earned some calluses and trail wisdom. You\u2019re nearing the trail\u2019s end, but you have to be careful. Now that you are on the downhill side, you can\u2019t afford to get complacent. A wrong turn will leave you snowed in on the mountain without sufficient food to survive the winter.<\/p>\n<p>CodeBuild is the tool to that will make sure you keep your wits about you. Its purpose is to systematize discipline so that when you\u2019re tired or in a hurry, you don\u2019t miss something critical in the process.<\/p>\n<p>To fully understand what CodeBuild is capable of, you need a coding project to work with. We\u2019ll be using my example project \u201cWheel of Lunch!\u201d It\u2019s a .Net Core console application, so it runs on both Windows and Unix operating systems. No coding required for this exercise; you can download the full <a href=\"http:\/\/natthompson.com\/dotnetcoretutorialproject\">.Net Core tutorial project<\/a> to be up and running right away.<\/p>\n<p>Download the files and place them in your CodeCommit directory on your local computer. You\u2019ll need to backtrack a little and retrace your steps. Repeat the steps above to add, commit, and push these files to Git. Now when you refresh your CodeCommit repository console, you will see these new files ready to go.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27581\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/039-ProjectFilesAdded.png\" alt=\"AWS developer tools\" width=\"549\" height=\"407\" \/><\/p>\n<p>Now you are ready to set up an automated build with CodeBuild.<\/p>\n<p>Before setting up a build with CodeBuild, we will need a location to store the artifacts output from the build to be used later on when you are ready to deploy your application. We will use S3, Simple Storage Service. S3 storage containers are called buckets. Let\u2019s quickly set up a bucket for CodeBuild to use.<\/p>\n<h3>Setting up S3 Buckets<\/h3>\n<p>From the AWS services drop-down menu, select S3.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27582\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/040-S3CreateBucket.png\" alt=\"AWS developer tools\" width=\"378\" height=\"175\" \/><\/p>\n<p>We will name our bucket \u201cbuild_output\u201d. Click the \u201cCreate bucket\u201d button to get started.<\/p>\n<p>Enter a unique bucket name. This name must be unique to all S3 buckets anywhere, not just your account, because this name will be used as part of the URL used to access this bucket.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27583\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/041-S3BucketName.png\" alt=\"AWS developer tools\" width=\"624\" height=\"95\" \/><\/p>\n<p>Click the \u201cNext\u201d button.<\/p>\n<p>Accept the default settings and click the \u201cNext\u201d button again for the \u201cSet Properties\u201d and \u201cSet Permissions\u201d screens. Review everything to confirm it meets your expectations and click the \u201cCreate bucket\u201d button.<\/p>\n<p>You will be shown your new bucket in the S3 console. Now you can proceed with creating your build definition in CodeBuild.<\/p>\n<h3>Back to CodeBuild<\/h3>\n<p>From the services drop-down menu in the AWS console, select CodeBuild.<\/p>\n<p>Click the \u201cGet started\u201d button.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27584\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/044-AWSCodeBuildGetStarted.png\" alt=\"AWS developer tools\" width=\"624\" height=\"267\" \/><\/p>\n<p>Give your CodeBuild project a name.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27585\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/045-ConfigureCodeBuildProject.png\" alt=\"AWS developer tools\" width=\"624\" height=\"129\" \/><\/p>\n<p>Now you\u2019re ready to tell CodeBuild what you want to build. The information in the screenshot below indicates that the source code we want to build is housed in CodeCommit in the tutorials repository. Selecting a clone depth of \u201cFull\u201d ensures that all files in the repository are made available to the build, avoiding any missing dependencies.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27586\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/046-SourceAndRepositoryConfig.png\" alt=\"AWS developer tools\" width=\"419\" height=\"223\" \/><\/p>\n<p>Next, we\u2019ll specify the environment that we want CodeBuild to use. Select the \u201cUse an image managed by AWS CodeBuild\u201d radio button. Select the appropriate Operating System from the drop-down box (Ubuntu). Specify the Runtime as .NET Core and the Runtime version as dot-net-core-2.0.<\/p>\n<p>In the source code files for the project, I have included a build specification file, buildspec.yml, that includes the instructions to CodeBuild on which project to build. To make use of this file, make sure the \u201cUse the buildspec.yml file in the source code root directory\u201d is selected.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27587\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/047-EnvironmentHowToBuildConfig.png\" alt=\"AWS developer tools\" width=\"624\" height=\"592\" \/><\/p>\n<p>In the next section, we specify that we want the artifacts that the build produces to be placed in the S3 bucket we created above.<\/p>\n<p>In the \u201cArtifacts\u201d section, select \u201cAmazon S3\u201d from the Type drop-down menu.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27588\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/048-ArtifactStorageConfig.png\" alt=\"AWS developer tools\" width=\"624\" height=\"111\" \/><\/p>\n<p>In the remaining boxes, enter values appropriate to your liking.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27589\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/049-S3BucketStructureConfig.png\" alt=\"AWS developer tools\" width=\"579\" height=\"337\" \/><\/p>\n<p>In the \u201cBucket name\u201d drop-down, select the first bucket you created in S3. Click the \u201cUpdate\u201d button to save your changes.<\/p>\n<p>Now when your build runs, it will copy the artifacts, like executables and library files, to the S3 bucket.<\/p>\n<p>We will need a Service Role to execute this build. Select the \u201cCreate a service role in your account\u201d radio button. Enter a name for your role in the \u201cRole name\u201d text box.<\/p>\n<p>We will not be using a Virtual Private Cloud (VPC) for this example. Select \u201cNo VPC\u201d from the dropdown box.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27590\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/051-ServiceRoleAndVPNConfig.png\" alt=\"AWS developer tools\" width=\"624\" height=\"305\" \/><\/p>\n<p>Click the \u201cContinue\u201d button, then review your build configuration and click the \u201cSave\u201d button.<\/p>\n<p>You now have a fully defined build pointing to your CodeCommit repository that will extract and build your code for you. To launch your build, select it from your CodeBuild \u201cBuild Projects\u201d console.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27591\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/054-BuildProjectsConfig.png\" alt=\"AWS developer tools\" width=\"624\" height=\"193\" \/><\/p>\n<p>Click the \u201cStart Build\u201d button to trigger the build. This action will display the \u201cStart new build\u201d screen. Select the \u201cmaster\u201d branch from the \u201cBranch\u201d drop-down menu.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27592\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/055-StartNewBuild.png\" alt=\"AWS developer tools\" width=\"624\" height=\"272\" \/><\/p>\n<p>From the \u201cGit clone depth\u201d drop-down, make sure the option \u201cFull\u201d is selected. This selection will retrieve the entire repository to make sure no critical files are missing that the build will need to in order to succeed.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27593\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/056-SelectGitCloneDepth.png\" alt=\"AWS developer tools\" width=\"589\" height=\"264\" \/><\/p>\n<p>Click the \u201cStart build\u201d button to launch your build definition. The build will run. When it completes, you will see a report on the end result.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27594\" src=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/058-BuildResultReport.png\" alt=\"AWS developer tools\" width=\"624\" height=\"308\" \/><\/p>\n<p>The status row should indicate \u201cSucceeded.\u201d If you have a different result, the log files provided below this report should tell you what failed.<\/p>\n<p>In the details section, the label \u201cOutput artifacts\u201d is beside a link to the S3 repository where these artifacts have been stored. You can click on it to see the result of your efforts.<\/p>\n<p>With this output, you can deploy and test your code. When it passes all tests and meets quality standards, it is ready for production deployment.<\/p>\n<h2>Next Steps<\/h2>\n<p>You\u2019ve made it! Across the plains and over the mountains, you\u2019ve arrived at your new homestead or gold claim or orphanage. With cloud computing, the possibilities are too many to count.<\/p>\n<p>You\u2019ve survived the journey and mastered new skills that will serve you well in your new endeavors.<\/p>\n<p>With CodeCommit, you ensure your source code is well managed and controlled. A complete version history is available to you, and the powerful branching capabilities of Git are at your fingertips.<\/p>\n<p>CodeBuild enables you to build and validate the production readiness of your source code. As soon as your code is committed to your CodeCommit repository, it becomes available for CodeBuild to put it through its paces.<\/p>\n<p>All of these tools barely scratch the surface of the services AWS has to offer. From voice and image recognition via AI to cloud-based Relational and NoSQL databases, it\u2019s difficult to name a technology that\u2019s not available in some form from AWS.<\/p>\n<p>There\u2019s a lot of horsepower within the developer tools offered by AWS. Getting comfortable and capable with them is a valuable skill for you as a programmer.<\/p>\n<p>If you are interested in more AWS topics and are looking for a good starting point to get introduced to the essential concepts, a good place to start is this <a href=\"http:\/\/natthompson.com\/freeawscourse\">AWS Essentials<\/a> page or <a href=\"http:\/\/www.amazon.com\/exec\/obidos\/ASIN\/\/makithecompsi-20\">Amazon Web Services in Action<\/a>. If you want a strategy on how to learn the technology of AWS as fast as possible, the video <a href=\"https:\/\/simpleprogrammer.com\/learn-new-programming-language-fast\/\">How to Learn a NEW Programming Language FAST!<\/a> shows you how.<\/p>\n<p>Now, get out there and commit to building something great with CodeCommit and CodeBuild!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>There\u2019s a journey happening right now as more and more organizations migrate to cloud platforms. According to Right Scale\u2019s February 2017 \u201cState of the Cloud\u201d survey, 79 percent of organizations now have systems running in either public or private cloud infrastructure and 95 percent are going to pursue cloud adoption. Astute programmers have recognized the&#8230;<\/p>\n","protected":false},"author":1030,"featured_media":27602,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[2185,415,162229803,162229823,162229253,1981,2260],"tags":[],"class_list":["post-27558","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-best-practices","category-guest-post","category-programming","category-software","category-technical","category-tools","category-web-development"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Pioneering Your Way to Cloud Computing With AWS Developer Tools - Simple Programmer<\/title>\n<meta name=\"description\" content=\"Modern programming is coming to terms with the cloud. New tools, infrastructure, and strategies all pose new challenges to overcome. This article provides programmers with a familiar starting point to begin learning cloud computing concepts in the context of AWS developer tools.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pioneering Your Way to Cloud Computing With AWS Developer Tools - Simple Programmer\" \/>\n<meta property=\"og:description\" content=\"Modern programming is coming to terms with the cloud. New tools, infrastructure, and strategies all pose new challenges to overcome. This article provides programmers with a familiar starting point to begin learning cloud computing concepts in the context of AWS developer tools.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/\" \/>\n<meta property=\"og:site_name\" content=\"Simple Programmer\" \/>\n<meta property=\"article:published_time\" content=\"2018-02-19T15:00:56+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/Pioneering-Your-Way-to-Cloud-Computing-With-AWS-Developer-Tools.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/\"},\"author\":{\"name\":\"\",\"@id\":\"\"},\"headline\":\"Pioneering Your Way to Cloud Computing With AWS Developer Tools\",\"datePublished\":\"2018-02-19T15:00:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/\"},\"wordCount\":3518,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2018\\\/02\\\/Pioneering-Your-Way-to-Cloud-Computing-With-AWS-Developer-Tools.png\",\"articleSection\":[\"Best Practices\",\"Guest Post\",\"Programming\",\"Software\",\"Technical\",\"Tools\",\"Web Development\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/\",\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/\",\"name\":\"Pioneering Your Way to Cloud Computing With AWS Developer Tools - Simple Programmer\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2018\\\/02\\\/Pioneering-Your-Way-to-Cloud-Computing-With-AWS-Developer-Tools.png\",\"datePublished\":\"2018-02-19T15:00:56+00:00\",\"author\":{\"@id\":\"\"},\"description\":\"Modern programming is coming to terms with the cloud. New tools, infrastructure, and strategies all pose new challenges to overcome. This article provides programmers with a familiar starting point to begin learning cloud computing concepts in the context of AWS developer tools.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/#primaryimage\",\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2018\\\/02\\\/Pioneering-Your-Way-to-Cloud-Computing-With-AWS-Developer-Tools.png\",\"contentUrl\":\"https:\\\/\\\/simpleprogrammer.com\\\/wp-content\\\/uploads\\\/2018\\\/02\\\/Pioneering-Your-Way-to-Cloud-Computing-With-AWS-Developer-Tools.png\",\"width\":1280,\"height\":720},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/cloud-computing-aws-developer-tools\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/simpleprogrammer.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Pioneering Your Way to Cloud Computing With AWS Developer Tools\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/simpleprogrammer.com\\\/#website\",\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/\",\"name\":\"Simple Programmer\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/simpleprogrammer.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"\",\"url\":\"https:\\\/\\\/simpleprogrammer.com\\\/author\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Pioneering Your Way to Cloud Computing With AWS Developer Tools - Simple Programmer","description":"Modern programming is coming to terms with the cloud. New tools, infrastructure, and strategies all pose new challenges to overcome. This article provides programmers with a familiar starting point to begin learning cloud computing concepts in the context of AWS developer tools.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/","og_locale":"en_US","og_type":"article","og_title":"Pioneering Your Way to Cloud Computing With AWS Developer Tools - Simple Programmer","og_description":"Modern programming is coming to terms with the cloud. New tools, infrastructure, and strategies all pose new challenges to overcome. This article provides programmers with a familiar starting point to begin learning cloud computing concepts in the context of AWS developer tools.","og_url":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/","og_site_name":"Simple Programmer","article_published_time":"2018-02-19T15:00:56+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/Pioneering-Your-Way-to-Cloud-Computing-With-AWS-Developer-Tools.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Written by":"","Est. reading time":"18 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/#article","isPartOf":{"@id":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/"},"author":{"name":"","@id":""},"headline":"Pioneering Your Way to Cloud Computing With AWS Developer Tools","datePublished":"2018-02-19T15:00:56+00:00","mainEntityOfPage":{"@id":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/"},"wordCount":3518,"commentCount":0,"image":{"@id":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/#primaryimage"},"thumbnailUrl":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/Pioneering-Your-Way-to-Cloud-Computing-With-AWS-Developer-Tools.png","articleSection":["Best Practices","Guest Post","Programming","Software","Technical","Tools","Web Development"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/","url":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/","name":"Pioneering Your Way to Cloud Computing With AWS Developer Tools - Simple Programmer","isPartOf":{"@id":"https:\/\/simpleprogrammer.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/#primaryimage"},"image":{"@id":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/#primaryimage"},"thumbnailUrl":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/Pioneering-Your-Way-to-Cloud-Computing-With-AWS-Developer-Tools.png","datePublished":"2018-02-19T15:00:56+00:00","author":{"@id":""},"description":"Modern programming is coming to terms with the cloud. New tools, infrastructure, and strategies all pose new challenges to overcome. This article provides programmers with a familiar starting point to begin learning cloud computing concepts in the context of AWS developer tools.","breadcrumb":{"@id":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/#primaryimage","url":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/Pioneering-Your-Way-to-Cloud-Computing-With-AWS-Developer-Tools.png","contentUrl":"https:\/\/simpleprogrammer.com\/wp-content\/uploads\/2018\/02\/Pioneering-Your-Way-to-Cloud-Computing-With-AWS-Developer-Tools.png","width":1280,"height":720},{"@type":"BreadcrumbList","@id":"https:\/\/simpleprogrammer.com\/cloud-computing-aws-developer-tools\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/simpleprogrammer.com\/"},{"@type":"ListItem","position":2,"name":"Pioneering Your Way to Cloud Computing With AWS Developer Tools"}]},{"@type":"WebSite","@id":"https:\/\/simpleprogrammer.com\/#website","url":"https:\/\/simpleprogrammer.com\/","name":"Simple Programmer","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/simpleprogrammer.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"","url":"https:\/\/simpleprogrammer.com\/author\/"}]}},"_links":{"self":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/posts\/27558","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/users\/1030"}],"replies":[{"embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/comments?post=27558"}],"version-history":[{"count":0,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/posts\/27558\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/media\/27602"}],"wp:attachment":[{"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/media?parent=27558"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/categories?post=27558"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/simpleprogrammer.com\/wp-json\/wp\/v2\/tags?post=27558"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}