Automated Software Deployment via Version Tagging and Merge Validation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional cloud-based platforms face inefficiencies in deploying large applications due to lack of version control, package size constraints, and limited rollback capabilities, leading to increased deployment times and errors across environments.

Innovation Solution

Automated software deployment techniques that merge code changes with quality checks, reduce deployment package size through version tagging, and enable complete rollbacks by utilizing merge request logic, non-production deployment logic, and production deployment logic to efficiently deploy and revert software code in cloud-based environments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional cloud-based platforms are used for deploying large applications, then deployment can be performed using existing tools, but deployment execution time increases and productivity decreases

Engineering Contradiction:
Improvedeployment execution timeVSAvoiddeployment time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The deployment process is segmented into distinct phases: merge request validation, automated testing, merge execution, and deployment to specific environments. This segmentation allows parallel processing of validation and testing while preparing deployment packages, reducing overall deployment execution time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Validation and testing of merge requests are performed preliminarily before actual deployment. Automated tests validate code changes and integration quality in advance, ensuring deployment readiness without extending deployment execution time during production releases.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If version tagging is implemented to reduce deployment package size, then package size constraints are satisfied, but system complexity increases

Engineering Contradiction:
Improvedeployment package sizeVSAvoidsystem complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

Instead of deploying entire application packages, the system creates lightweight version tags that copy only the necessary metadata and change identifiers. These tags reference the actual code in the repository, reducing deployment package size from megabytes to kilobytes while maintaining version control capabilities.

Inventive Principle:
Principle #26Copying

3Reliability

If automated testing and validation are performed before merging code changes, then reliability improves, but deployment execution time increases

Engineering Contradiction:
Improvedeployment reliabilityVSAvoiddeployment execution time
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Automated testing and validation run continuously in the background during the merge request phase, rather than blocking the deployment process. This continuous validation ensures reliability while allowing parallel preparation of deployment packages, maintaining high productivity throughout the deployment pipeline.

Inventive Principle:
Principle #20Continuity of useful action

4Reliability

If complete rollback support is implemented, then reliability improves, but device complexity increases

Engineering Contradiction:
Improverollback capabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements automated feedback mechanisms that track deployment state and version tags. When rollback is needed, the system automatically identifies the previous stable version tag and executes the reversal process, providing reliable rollback capability through automated feedback loops rather than complex manual procedures.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12112154B2Automated software deployment techniques
Publication Date: 2024.10.08 DELL PROD LP
  • US12112154B2 patent drawing
  • US12112154B2 patent drawing
  • US12112154B2 patent drawing

AI summary

Methods, apparatus, and processor-readable storage media for automated software deployment are provided herein. An example computer-implemented method includes obtaining at least one request to merge one or more code changes associated with a first branch of software code with a second branch of software code; performing one or more tests to validate the at least one request; in response to validating the request, performing a merge operation that merges the one or more code changes with the second branch of software code; and deploying the second branch of software code to at least one cloud-based computing environment based at least in part on a version tag that identifies the merge operation corresponding to the request and a previous version tag that identifies a most recent merge operation completed for a previously deployed version of the second branch of software code.