# US 11,029,943 B1 · Processing framework for in-system programming in a containerized environment

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,029,943 B1
- Document ID: US11029943B1
- Status: Granted
- Kind: B1
- Application number: 16/912,840
- Filed: 2020-06-26
- Granted: 2021-06-08
- Earliest claimed: 2020-06-26
- Assignees: Sap SE
- Applicants: Sap SE
- Inventors: Nedelcho Nedyalkov Delchev; Mitko Kolev; Yordan Pavlov Pavlov; Georgi Dimitrov Pavlov
- Web page: https://patentgrep.com/patent/US11029943B1

## CPC

- G06F 8/656: while running
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 8/20: Software design
- G06F 8/65: Updates (security arrangements therefor G06F21/57)
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/34: {involving the movement of software or configuration parameters (network booting or remote initial program loading [RIPL] G06F9/4416)}
- G06F 8/35: model driven
- G06F 2009/45562: {Creating, deleting, cloning virtual machine instances}
- G06F 2009/4557: {Distribution of virtual machine instances; Migration and load balancing}
- G06F 2009/45575: {Starting, stopping, suspending or resuming virtual machine instances}
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The present disclosure relates to computer-implemented methods, software, and systems for lifecycle processing of declarative artifacts. Declarative artifacts defining a target state for application content related to a software application are read. When running, the software application includes runtime artifacts executing in a containerized environment. Model definition objects for processing during runtime of the software application based on the declarative artifacts are created and stored in a model repository at a container associated with the software application. The model repository is scanned as well as the runtime artifacts executing as part of the software application in the containerized runtime environment to identify a model definition object from the model repository for processing at runtime of the software application. An operation related to a runtime artifact to run as part of the running software application at the containerized runtime environment is executed based on input from the identified model definition object.

## Claims

### Claim 1

A computer implemented method for lifecycle processing of declarative artifacts, the method comprising:
reading declarative artifacts defining a target state for application content related to a software application that, when running, includes runtime artifacts executing in a containerized runtime environment;
in response to reading the declarative artifacts, creating model definition objects for processing during runtime of the software application based on the declarative artifacts, wherein the model definition objects are created based on and include information from the declarative artifacts, wherein the created model definition objects are stored in a model repository at a container associated with the software application;
scanning, by a processing framework at the container, the model repository and the runtime artifacts executing as part of the software application in the containerized runtime environment to identify a model definition object from the model repository for processing at runtime of the software application, wherein the model definition object is identified as relevant for performing an update at the containerized runtime environment to place the running software application into the target state; and
in response to identifying the model definition object for processing, executing an operation, by the processing framework, related to a runtime artifact to run as part of the running software application at the containerized runtime environment, wherein the operation is executed based on processing logic implemented at the processing framework and is based on input from the identified model definition object, wherein the runtime artifact corresponds to a particular declarative artifact associated with the model definition object.

### Claim 2 (depends on 1)

The method of claim 1, wherein the declarative artifacts define target states for runtime artifacts running in the containerized runtime environment, wherein the artifacts are associated with at least one of database components or an application service of the software application.

### Claim 3 (depends on 1)

The method of claim 1, wherein the executed operation related to the runtime artifact is associated with placing the runtime artifact in a runtime state corresponding to a target state defined within the particular declarative artifact associated with the model definition object.

### Claim 4 (depends on 1)

The method of claim 1, wherein the declarative artifacts are read in response to a trigger initiated from a scheduled job for managing the software application, and wherein the created model definition objects include information relevant for deploying one or more of the created model definition objects.

### Claim 5 (depends on 1)

The method of claim 1, wherein the identified model definition objects are associated with declarative artifacts that are not processed and are related to performing operations for creating, altering, or deleting runtime artifacts at the running software application, and wherein the execution of the operations is based on corresponding invoking the processing logic to execute the operations according to data invoked from the identified model definition objects.

### Claim 6 (depends on 1)

The method of claim 1, wherein scanning the model repository and the runtime artifacts executing as part of the software application in the containerized runtime environment comprises:
comparing the model definition objects with metadata for running artifacts of the running software application, wherein comparing is based on hash codes defined for the running artifacts in a meta-data repository and within the model definition objects to determine whether the declarative artifacts corresponding to the model definition objects have been previously processed.

### Claim 7 (depends on 1)

The method of claim 1, wherein the declarative artifacts are created at a design time process for the software application and represent a technical state of a component of the software application, and wherein the declarative artifacts are declarative text-based artifacts.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
building the container as a deployable instance for execution at the running software application on a cloud infrastructure setup, wherein the container at runtime comprises one or more runtime artifacts corresponding to one or more of the declarative artifacts as built-in artifacts.

### Claim 9 (depends on 1)

The method of claim 1, wherein scanning the model repository and the runtime artifacts executing as part of the software application in the containerized runtime environment comprises:
processing the model definition object for in-system programming in the containerized runtime environment to unify states defined correspondingly in the declarative artifacts with states of runtime artifacts at the running software application and to update the running software application to a new state, wherein unifying the states comprises:
creating a new runtime artifact for a model definition object that do not correspond to running artifacts at the software application;
altering a running runtime artifact in response to determining that model definition objects mapped to the running runtime artifact are associated with altering operations; and
deleting a running runtime artifact at the software application, wherein the deleted running runtime artifact is an artifact that is not associated with a model definition object from the model repository for the software application.

### Claim 10 (depends on 1)

The method of claim 1, wherein the runtime artifact that is associated with the executed operation is part of the running software application prior scanning by the processing framework.

### Claim 11

A non-transitory, computer-readable medium coupled to one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations, the operations comprising:
reading declarative artifacts defining a target state for application content related to a software application that, when running, includes runtime artifacts executing in a containerized runtime environment;
in response to reading the declarative artifacts, creating model definition objects for processing during runtime of the software application based on the declarative artifacts, wherein the model definition objects are created based on and include information from the declarative artifacts, wherein the created model definition objects are stored in a model repository at a container associated with the software application;
scanning, by a processing framework at the container, the model repository and the runtime artifacts executing as part of the software application in the containerized runtime environment to identify a model definition object from the model repository for processing at runtime of the software application, wherein the model definition object is identified as relevant for performing an update at the containerized runtime environment to place the running software application into the target state; and
in response to identifying the model definition object for processing, executing an operation, by the processing framework, related to a runtime artifact to run as part of the running software application at the containerized runtime environment, wherein the operation is executed based on processing logic implemented at the processing framework and is based on input from the identified model definition object, wherein the runtime artifact corresponds to a particular declarative artifact associated with the model definition object.

### Claim 12 (depends on 11)

The computer-readable medium of claim 11, wherein the declarative artifacts are read in response to a trigger initiated from a scheduled job for managing the software application, and wherein the created model definition objects include information relevant for deploying one or more of the created model definition objects, wherein the declarative artifacts define target states for runtime artifacts running in the containerized runtime environment, wherein the artifacts are associated with at least one of database components or an application service of the software application, and wherein the identified model definition objects are associated with declarative artifacts that are not processed and are related to performing operations for creating, altering, or deleting runtime artifacts at the running software application, and wherein the execution of the operations is based on corresponding invoking the processing logic to execute the operations according to data invoked from the identified model definition objects.

### Claim 13 (depends on 11)

The computer-readable medium of claim 11, wherein the declarative artifacts are created at a design time process for the software application and represent a technical state of a component of the software application, and wherein the declarative artifacts are declarative text-based artifacts, and wherein the executed operation related to the runtime artifact is associated with placing the runtime artifact in a runtime state corresponding to a target state defined within the particular declarative artifact associated with the model definition object.

### Claim 14 (depends on 11)

The computer-readable medium of claim 11, wherein scanning the model repository and the runtime artifacts executing as part of the software application in the containerized runtime environment comprises:
comparing the model definition objects with metadata for running artifacts of the running software application, wherein comparing is based on hash codes defined for the running artifacts in a meta-data repository and within the model definition objects to determine whether the declarative artifacts corresponding to the model definition objects have been previously processed,
wherein the runtime artifact that is associated with the executed operation is part of the running software application prior scanning by the processing framework.

### Claim 15 (depends on 11)

The computer readable medium of claim 11, wherein the operations comprise:
building the container as a deployable instance for execution at the running software application on a cloud infrastructure setup, wherein the container at runtime comprises one or more runtime artifacts corresponding to one or more of the declarative artifacts as built-in artifacts.

### Claim 16 (depends on 11)

The computer-readable medium of claim 11, wherein scanning the model repository and the runtime artifacts executing as part of the software application in the containerized runtime environment comprises:
processing the model definition object for in-system programming in the containerized runtime environment to unify states defined correspondingly in the declarative artifacts with states of runtime artifacts at the running software application and to update the running software application to a new state, wherein unifying the states comprises:
creating a new runtime artifact for a model definition object that do not correspond to running artifacts at the software application;
altering a running runtime artifact in response to determining that model definition objects mapped to the running runtime artifact are associated with altering operations; and
deleting a running runtime artifact at the software application, wherein the deleted running runtime artifact is an artifact that is not associated with a model definition object from the model repository for the software application.

### Claim 17

A system comprising
a computing device; and
a computer-readable storage device coupled to the computing device and having instructions stored thereon which, when executed by the computing device, cause the computing device to perform operations, the operations comprising:
reading declarative artifacts defining a target state for application content related to a software application that, when running, includes runtime artifacts executing in a containerized runtime environment;
in response to reading the declarative artifacts, creating model definition objects for processing during runtime of the software application based on the declarative artifacts, wherein the model definition objects are created based on and include information from the declarative artifacts, wherein the created model definition objects are stored in a model repository at a container associated with the software application;
scanning, by a processing framework at the container, the model repository and the runtime artifacts executing as part of the software application in the containerized runtime environment to identify a model definition object from the model repository for processing at runtime of the software application, wherein the model definition object is identified as relevant for performing an update at the containerized runtime environment to place the running software application into the target state; and
in response to identifying the model definition object for processing, executing an operation, by the processing framework, related to a runtime artifact to run as part of the running software application at the containerized runtime environment, wherein the operation is executed based on processing logic implemented at the processing framework and is based on input from the identified model definition object, wherein the runtime artifact corresponds to a particular declarative artifact associated with the model definition object.

### Claim 18 (depends on 17)

The system of claim 17, wherein the declarative artifacts are read in response to a trigger initiated from a scheduled job for managing the software application, and wherein the created model definition objects include information relevant for deploying one or more of the created model definition objects, wherein the declarative artifacts define target states for runtime artifacts running in the containerized runtime environment, wherein the artifacts are associated with at least one of database components or an application service of the software application, and wherein the identified model definition objects are associated with declarative artifacts that are not processed and are related to performing operations for creating, altering, or deleting runtime artifacts at the running software application, and wherein the execution of the operations is based on corresponding invoking the processing logic to execute the operations according to data invoked from the identified model definition objects.

### Claim 19 (depends on 17)

The system of claim 17, wherein the system further comprises instructions which when executed causes the compute the computing device to perform operations comprising:
building the container as a deployable instance for execution at the running software application on a cloud infrastructure setup, wherein the container at runtime comprises one or more runtime artifacts corresponding to one or more of the declarative artifacts as built-in artifacts.

### Claim 20 (depends on 17)

The system of claim 17, wherein scanning the model repository and the runtime artifacts executing as part of the software application in the containerized runtime environment comprises:
processing the model definition object for in-system programming in the containerized runtime environment to unify states defined correspondingly in the declarative artifacts with states of runtime artifacts at the running software application and to update the running software application to a new state, wherein unifying the states comprises:
creating a new runtime artifact for a model definition object that do not correspond to running artifacts at the software application;
altering a running runtime artifact in response to determining that model definition objects mapped to the running runtime artifact are associated with altering operations; and
deleting a running runtime artifact at the software application, wherein the deleted running runtime artifact is an artifact that is not associated with a model definition object from the model repository for the software application.
