Information
-
Patent Application
-
20230297366
-
Publication Number
20230297366
-
Date Filed
March 18, 20223 years ago
-
Date Published
September 21, 2023a year ago
-
Inventors
-
Original Assignees
-
CPC
-
-
International Classifications
- G06F8/70
- G06F8/36
- G06F8/35
Abstract
Disclosed are techniques for two-way synchronization of infrastructure-as-code templates and instances, including a method comprising detecting changes to a run-time state of a system and, in response to detecting a change, triggering an update of a current run-time state model. The method may further comprise, in response to updating the run-time state model, comparing the updated model to a current model using a template in a local repository instantiated as the current model. The method may further comprise, in response to the comparison determining a structural difference between the updated model and the current model, merging the updated model and the current model into a new model; and updating a local clone of a repository of the template with the new model. The method may further comprise, in response to the comparison determining no structural difference between the updated model and the current model, pushing changes to a remote repository.
Claims
- 1. A computer-implemented method for two-way synchronization of infrastructure-as-code (IaC) templates, comprising:
detecting, by a run-time monitor, a change event to a run-time state of a system;in response to detecting a change, triggering an update of a current run-time state model;in response to updating the run-time state model, comparing the updated model to a current model using a template in a local repository instantiated as the current model;in response to the comparison determining a structural difference between the updated model and the current model:
merging the updated model and the current model into a new model;updating a local clone of a repository of the template with the new model;in response to the comparison determining no structural difference between the updated model and the current model, pushing changes to a remote repository.
- 2. The method of claim 1, wherein the run-time monitoring is performed during run-time state synchronization (RTSS) phase.
- 3. The method of claim 1, wherein the change event comprises information to identify a resource and a type of modification.
- 4. The method of claim 1, further comprising:
in response to a determination the change event did not provide sufficient information to perform the update, receiving additional information resulting from a request to an underlying cloud; andmapping the information and the additional information to the one or more transformation actions.
- 5. The method of claim 1, further comprising in response to the comparison determining a structural difference between models:
converting the new model into a textual representation conforming to a notation model;mapping concepts of the converted model and the notation to create a result file.
- 6. The method of claim 1, further comprising in response to a determination of no structural difference between models:
converting the updated model into a set of input parameters containing current values; andperforming an operation using the current values of at least one of updating the template instance and creating a new version in a template management software.
- 7. The method of claim 1, wherein the update comprises mapping the change event to one or more transformation actions from a catalog of supported transformations associated with model-at-runtime (MART) instance updates.
- 8. A system for two-way synchronization of infrastructure-as-code (IaC) templates, the system comprising:
one or more processors; anda memory communicatively coupled to the one or more processors;wherein the memory comprises instructions which, when executed by the one or more processors, cause the one or more processors to perform a method comprising:
detecting, by a run-time monitor, changes to a run-time state of a system;in response to detecting a change, triggering an update of a current run-time state model;in response to updating the run-time state model, comparing the updated model to a current model using a template in a local repository instantiated as the current model;in response to the comparison determining a structural difference between the updated model and the current model:
merging the updated model and the current model into a new model;updating a local clone of a repository of the template with the new model;in response to the comparison determining no structural difference between the updated model and the current model, pushing changes to a remote repository.
- 9. The system of claim 8, wherein the run-time monitoring is performed during run-time state synchronization (RTSS) phase.
- 10. The system of claim 8, wherein the change event comprises information to identify a resource and a type of modification.
- 11. The system of claim 8, wherein the method further comprises:
in response to a determination the event did not provide sufficient information to perform the update, receiving additional information resulting from a request to an underlying cloud; andmapping the information and the additional information to the one or more transformation actions.
- 12. The system of claim 8, wherein the method further comprises in response to the comparison determining a structural difference between models:
converting the new model into a textual representation conforming to a notation model;mapping concepts of the converted model and the notation to create a result file.
- 13. The system of claim 8, wherein the method further comprises in response to a determination of no structural difference between models:
converting the updated model into a set of input parameters containing current values; andperforming an operation using the current values of at least one of updating the template instance and creating a new version in a template management software.
- 14. The system of claim 8, wherein the update comprises mapping the change event to one or more transformation actions from a catalog of supported transformations associated with model-at-runtime (MART) instance updates.
- 15. A computer program product for two-way synchronization of infrastructure-as-code (IaC) templates, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a computer to perform a method comprising:
detecting, by a run-time monitor, changes to a run-time state of a system;in response to detecting a change, triggering an update of a current run-time state model;in response to updating the run-time state model, comparing the updated model to a current model using a template in a local repository instantiated as the current model;in response to the comparison determining a structural difference between the updated model and the current model:
merging the updated model and the current model into a new model;updating a local clone of a repository of the template with the new model;in response to the comparison determining no structural difference between the updated model and the current model, pushing changes to a remote repository.
- 16. The computer program product of claim 15, wherein the run-time monitoring is performed during run-time state synchronization (RTSS) phase.
- 17. The computer program product of claim 15, wherein the method further comprises:
in response to a determination the change event did not provide sufficient information to perform the update, receiving additional information resulting from a request to an underlying cloud; andmapping the information and the additional information to the one or more transformation actions.
- 18. The computer program product of claim 15, wherein the method further comprises in response to the comparison determining a structural difference between models:
converting the new model into a textual representation conforming to a notation model;mapping concepts of the converted model and the notation to create a result file.
- 19. The computer program product of claim 15, wherein the method further comprises in response to a determination of no structural difference between models:
converting the updated model into a set of input parameters containing current values; andperforming an operation using the current values of at least one of updating the template instance and creating a new version in a template management software.
- 20. The computer program product of claim 15, wherein the update comprises mapping the change event to one or more transformation actions from a catalog of supported transformations associated with model-at-runtime (MART) instance updates.