Automated development and staging environments with Coder + Shipyard
The benefits of DevOps and automated deployments are clear for most organizations. Many also leverage containerized workloads to make applications more reproducible and portable. In this post, we’ll discuss shifting further left with ephemeral development and staging environments with Coder + Shipyard.
Today, setting up your machine to develop software projects isn’t a great experience. Too often, long, manual steps are required and your workspace can quickly shift and behave differently from a coworker’s, resulting in configuration drift. Cloud development platforms such as Coder make it possible to automate developer workspaces following DevOps best practices: ephemeral workspaces defined by code.
Once a developer creates a new branch and commits code (a new feature), automated ephemeral environments make it possible for developer, product, and QA teams alike to test applications before they are deployed to production. This is where Shipyard comes in. Ephemeral environments shorten feedback cycles and automate processes for testing PRs, giving WIP feedback, and deploying to production. Using Coder with Shipyard allows organizations to supercharge their workflows from development to production.
How it works: automating development workflows
1) When onboarding to a project, developers use Coder to create their workspace from a template defined by the team. This workspace includes the IDEs (VS Code, IntelliJ IDEA, PyCharm, etc.), libraries, and tools necessary for development.
2) Once a feature is added, developers commit code to source control (e.g. GitHub) and create a pull request for review.
3) From the pull request, Shipyard automatically deploys a unique shareable ephemeral environment. These Shipyard managed environments are completely independent of one another allowing your teams to iterate on a given feature without needing DevOps intervention or creating problems that can block other teams.
4) End-to-end tests can be run against these environments using your favorite tools (Cypress, Mabl, CircleCI, ArgoCD etc.) Developers, QA teams, and stakeholders can securely and independently validate new features pre-merge asynchronously. By tightening the feedback loop with Coder + Shipyard features are tested more thoroughly resulting in faster, more stable releases!
As demonstrated, automating your environments with Coder and Shipyard will make your environments more consistent & accessible for teams.