April 7, 2023
Cloud

Streamlining Drupal Development with AWS Services

Author photo
Bene Ádám
Cloud engineer

Discover how AWS services like CodeCommit, CodeBuild, CodeDeploy, CodePipeline, Copilot, and CodeStar can help streamline your Drupal development workflows and deliver high-quality applications faster and more efficiently. Simplify your deployment process and automate your development workflow with AWS.

Streamlining Drupal Development with AWS Services

Amazon Web Services (AWS) provides a variety of tools that make it easier for developers to build, test, and deploy Drupal applications. With the help of AWS CodeCommit, CodeBuild, CodeDeploy, CodePipeline, Copilot, and CodeStar, developers can streamline their development workflows and deliver high-quality Drupal applications faster and more efficiently.

AWS CodeCommit

Fully managed - including scaling - source control management, based on git. Supports artifacts as well.

AWS CodeBuild

AWS CodeBuild is a fully managed build service that compiles source code, runs tests, and produces software packages that are ready for deployment. With CodeBuild, developers can automate the build process, which helps to reduce build times, ensure consistency, and reduce the risk of human error. This allows developers to quickly identify and fix bugs and ensure that the code is always in a deployable state.

Advantages

  • Pricing based on minutes of resource usage.
  • Defining what AWS resources to use during build is easiest with AWS CodeBuild

AWS CodeDeploy

For Drupal development, CodeDeploy can be used to automatically deploy Drupal applications to compute services - including on-premise machines - in production, staging, and development environments. This allows developers to deploy new code changes to production quickly and efficiently, without disrupting the end user experience, while reducing the risk of errors and downtime.

CodeDeploy also provides pre- and post-deployment hooks that can help with integration testing.

Advantages

It is completely free.

AWS CodePipeline

AWS CodePipeline is very much like github actions or gitlab CI; changes in a source code repository trigger building, unit testing, deployment etc.

CodePipeline can be used to create a release pipeline that includes CodeCommit, CodeBuild, and CodeDeploy. This allows developers to automate the entire build, test, and deploy process for Drupal applications, which helps to reduce errors, ensure consistency, and deliver new features and bug fixes quickly.

AWS CodePipeline

What makes it stand out from similar tools?

  • Pay $1/month/active pipeline.
  • No long-term commitments
  • The best integration with other AWS services. In order to continuously deploy your application to AWS with another CD tool, let's say Gitlab CI or Github actions for the sake of example, you’ll need to give the runner-manager a role with the right permissions. If you need to deploy multiple applications that run on different services, you’ll need to provide additional permissions to your runner or to spawn multiple runners, giving them the minimum access required (note that, by doing so, the number of the resources will increase, along with costs). By using IAM roles, you can avoid using tokens and access keys as well.
  • Traceability - via CloudTrail - is included and configured by default, for no additional cost.
  • More methods of authentication for no additional costs. AWS CodePipeline uses the same authentication and authorization layer of AWS: it features Active Directory, SAML, and SAML SSO for groups, which is not available in the free tier of either Gitlab CI or Github Actions.
  • Support for multizonal deployment out-of-the-box

SlackOps

AWS

AWS Copilot

AWS Copilot is a CLI tool for Amazon Elastic Container Service (Amazon ECS).

What can AWS Copilot help you with?

Extending the capabilities of AWS CodePipelineAWS Copilot can enhance your experience with (Amazon ECS), by taking care of lower-level infrastructure and deployment for you.

This means that you don't have to concern yourself with setting up infrastructure, building and deploying the latest version of your app and container orchestration.

Copilot concepts

  • Application: corresponds to a component of your system, which usually corresponds to a team in your organization.
  • Environment: different environments for testing and production
  • Service: A long-running code process in a container.

AWS CodeStar

CodeStar provides pre-configured project templates for popular languages and frameworks, including Drupal. These templates include built-in AWS services like AWS Lambda, AWS Elastic Beanstalk, and Amazon S3, which can greatly simplify the deployment process. By using these templates, developers can focus on writing code instead of setting up infrastructure.

Moreover, CodeStar integrates with other AWS services like AWS CloudFormation, AWS CodeCommit, AWS CodePipeline, and AWS CodeDeploy to automate the development workflow. This automation eliminates the need for manual intervention and reduces the chances of errors during deployment.

Finally, CodeStar provides collaboration features that allow teams to work together on the same project. This feature includes integrations with third-party tools like JIRA and Slack, which enables teams to communicate and collaborate more efficiently.

There is no additional cost for CodeStar itself, you only pay for infra needed for developing and running your app.

CodeStar provides a unified dashboard for all of its underlying services:

CodeStar provides a unified dashboard

Related posts

Maximizing the Value of AWS: Lesser-Known Services You Need to Know
Author
2023-04-14
Cloud

Learn about the lesser-known but incredibly useful additional services that AWS provides, including AWS Web Application Firewall and a comprehensive set of monitoring tools that enable you to track the performance of your applications and infrastructure.

Deploy a High-Availability Drupal Website on Elastic Beanstalk
Author
2023-04-04
Cloud

Deploying a high-availability Drupal website on Elastic Beanstalk is made easy with its horizontal scalability, customizability, and wider range of language and application support. Learn how to configure your environment, upload your Drupal site, and set up a database with this step-by-step guide.

Streamlining Drupal Development with AWS Services
Author
2023-04-07
Cloud

Learn how AWS services like CodeCommit, CodeBuild, CodeDeploy, CodePipeline, Copilot, and CodeStar can help developers streamline their Drupal development workflows and deliver high-quality applications faster and more efficiently.

Improving Drupal Performance on AWS with ProxySQL and Amazon Aurora MySQL
Author
2023-04-06
Cloud

Learn how to overcome Drupal's MySQL scalability issues on AWS and achieve horizontal scaling using ProxySQL and Amazon Aurora MySQL read replicas.

AWS AppRunner console showing the deployment of a Drupal website.
Author
2023-04-03
Cloud

Learn how Amazon Lightsail and AWS AppRunner can simplify the process of hosting and managing your Drupal website, from preconfigured instances to fully managed containerized applications.

Drupal website using AWS cloud services for scalability, reliability, and security with Cheppers' expert guidance
Author
2023-04-02
Cloud

Discover the benefits of running Drupal on AWS. Learn best practices for setting up and managing a Drupal environment in the Cloud.