AWS CodeStar and deployment with CloudFormation
Published: 2023-10-02 01:46:30

As software developers, there are constant onslaughts of new technologies to help streamline our job. AWS(Amazon Web Services) is a platform that provides access to secure servers all over the country to help store and deliver data for end users. They also offer a series of development tools to provide design, testing, and deployment all in one location. 


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q6qpdz3tjpccxltyg5hg.png)

## AWS CodeStar
CodeStar simplifies the entire development process by providing building, testing, and deployment capabilities all within one browser. It provides templates with numerous coding languages, like CI/CD (continuous integration/continuous deployment) pipelines to quickly update application distribution and collaboration tools. 

Within the AWS dev tools, find the create project under AWS CodeStar.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7udafmha29b0il8k2pwn.png)

This offers numerous options for pre built project templates, but today we will be using node.js. 

## AWS CodeCommit
CodeCommit lets us use the common Git tools to store and examine changes within our code, but is stored and managed within the AWS service. You can still use GitHub if you'd like your code to stay more private.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rh0rforydvykewxt6tvq.png)

##AWS Cloud9 IDE environment
Cloud9 is an IDE(integrated development environment) provider through the AWS dev tools that let us create code through the web browser. This enables users to access their code anywhere they have internet access! Once our project is created, navigate to the IDE tab and create a new work environment using the chosen code language. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oxxx9zl040ffrb6w9s4m.png)

Once in the dev environment, code can be created and debugged like a typical IDE. I've made some edits to the provided AWS node.js template to display changes we can make.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0dpohp7wzfb52i6reest.png)

After your code has been written or edited, we can use our classic git commands to stage and push into our online storage using CodeCommit. Once git push has been used, your code will immediately engage the code pipeline. This will cause AWS to test the pushed code with CodeBuild and after passing, sends to CloudFormation. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mzguz34srl9m0f3xjr4c.png)

##AWS CloudFormation
CloudFormation allows users to define specific server traffic guidelines to help continuous flow to end point with no breaks for your users. CloudFormation will then automate the deployment. So as soon as the code is pushed, the chain will begin for deployment. Once your code has passed the test, you can view your app by clicking view application. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4apgigu1eq2l450c7jju.png)

AWS CodeStar with the help of CloudFormation deployment is a continually changing, helpful tool for developers to automate their developments and deliver a high quality applications.