Launching “AiTest” soon. A Cross-Browser performance testing SaaS platform. Automated but real load testing of your application. Stay tuned!

One tool for test automation for every service, application, and platform. aiTest Launching Soon - Secure Your FREE Spot (Limited to the First 100 Signups)!

One tool for test automation for every service, application, and platform. aiTest Launching Soon - Secure Your FREE Spot (Limited to the First 100 Signups)! | Join us on Tuesday, 25th August 2023, for an insightful webinar on 'Enhance the efficiency of Cloud monitoring using LogicMonitor' and optimize your cloud operations like never before!

Top Logistics software company accelerates releases by direct feature branch deployment strategy

Streamlining Development with Our New Dev Deployment Strategy

In the fast-paced world of software development, efficient and reliable deployment processes are crucial. A Logistic software company faced challenges with their existing deployment strategy, particularly when it came to testing service dependencies before deploying to QA. To address these issues and enhance their workflow, we devised a new Dev Deployment Strategy that directly deploys feature branches to the Dev environment. Here’s a breakdown of why we made these changes, what they entail, and how they are implemented.

Why a Change Was Needed

Our client’s previous deployment process often led to failures when deploying directly to the QA environment. This was mainly because service dependencies were not thoroughly tested beforehand. The team wanted a way to test their code in a lower environment before merging it to QA, without the added complexity of merging into the dev branch first. The primary goal was to streamline the testing and deployment process, making it faster and more reliable.

What the New Strategy Involves

After extensive discussions, we established a Dev Deployment Strategy that allows feature branches to be deployed directly to the Dev environment. This approach offers several benefits:

  • Risk Reduction: It minimizes the risk of untested code being merged into the QA environment.
  • Efficiency: It speeds up the testing process by allowing developers and testers to work on feature branches without needing to merge them into a central dev branch.
  • Dependency Testing: It facilitates microservice dependency testing on feature branches, ensuring that any issues are caught early.
  • Simplified Merging:By eliminating the need to merge feature branch code into a specific branch for testing, we save valuable time and reduce complexity.

How We Implemented the New Strategy

To set up the Dev deployment workflow quickly, we leveraged GitHub Action reusable workflows. Here’s a step-by-step look at our implementation:

  • Java JAR Versioning: We automated the process of changing the Java JAR version from V2 to V1 , ensuring that both JARs remain separate.
  • Repository Integration: We integrated the new DEV deploy workflow into over 30 repositories.
  • Daily Refresh: Using cron jobs in GitHub Action, we refresh the Dev environment with the latest changes from QA every morning.

This setup ensures that the Dev environment is consistently up-to-date with the latest stable code from QA, while also allowing feature branches to be tested independently.

The Value of Our New Strategy

Implementing this new Dev Deployment Strategy has brought significant improvements:

  • Reduced Deployment Failures: By catching issues in the Dev environment before they reach QA, we’ve reduced the risk of deployment failures.
  • Faster Testing: The streamlined process speeds up testing, allowing developers and testers to work more efficiently.
  • Enhanced Dependency Testing:Feature branches can now be tested with their dependencies in a realistic environment, improving overall code quality.
  • Improved Release Process:By reducing the need for frequent merges between the dev and QA branches, we’ve made our release process smoother and more predictable.
  • Better Time Utilization:Developers can now test their code directly in the Dev environment, optimizing their time and efforts.
In summary, our new Dev Deployment Strategy has revolutionized our client’s development workflow. By directly deploying feature branches to the Dev environment, we’ve created a faster, more reliable, and more efficient process that benefits both their development and testing teams. This strategy not only enhances the ability to catch issues early but also ensures a smoother and more streamlined path from development to production.

More To Explore