DETAILED ACTION
This office action is responsive to claims 1 - 20 filed in this application Chibon et al., U.S. Patent Application No. 18/345,546, (Filed June 30, 2023).
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Information Disclosure Statement
The information disclosure statement(s) (IDS) filed on June 30, 2023 in compliance with the provisions of 37 CFR 1.97, 1.98 and MPEP § 609. The references listed therein have been considered, and placed in the application file.
Claim Rejections 35 U.S.C. §103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claims 1 – 20 are rejected under 35 U.S.C. 103 as being unpatentable over Bregman et al., United States Patent Application Publication No. 2019/0190776 (Published June 20, 2019, filed December 15, 2017) (“Bregman”) in view of Abraham et al., United States Patent Application Publication No. 20200059420 (Published February 20, 2020, filed September 14, 2018) (“Abraham”), and Howley et al., United States Patent Application Publication No. 20230259390 (Published August 17, 2023, filed February 15, 2022) (“Howley”).
Claims 1, 8, and 15
With respect to claims 1, 8, and 15 Bregman teaches the invention as claimed including a system comprising: a processing device; and a non-transitory memory comprising instructions that are executable by the processing device for causing the processing device to:
detect, at a first time, a code modification made to a first configuration file on a particular node of a plurality of nodes, wherein the first configuration file is executable by a control node to deploy a software entity to each node of the plurality of nodes;… detect, at a second time, the control node executing the first configuration file to deploy the software entity to each node of the plurality of nodes according to a second configuration file for the software entity; and in response to detecting the control node executing the first configuration file, {Modifications to the current deployment state of a container is detected by a state daemon which may incorporate changes made at the container into a configuration record for the container to be used in future deployments, such as via an Ansible playbook, to redeploy the container using the detected and incorporated configuration modifications. Bregman at ¶¶ 0032 – 0034 and 0041 – 0043; id. at ¶ 0027 (configurations include metadata).}
However, Bregman doesn’t explicitly teach the limitation:
convert the code modification from a first format associated with the control node to a second format associated with the software entity; {Abraham does teach this limitation. Abraham teaches that detecting and capturing modifications to container configurations, as taught in Bregman, may include identifying modifications to the state of a deployed topology, converting the topology to a second agnostic format, and then converting that into a third format, such as an ansible playbook, that is configured to redeploy the topology to particular nodes requiring the state changes. Abraham at ¶¶ 0059, 0510, 0511, 0714 & 0715.
Bregman and Abraham are analogous art because they are from the “same field of endeavor” and are both from the same “problem-solving area.” Specifically, they are both from the field of software deployment, and both are trying to solve the problem of to configure a deployment.
It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to combine detecting and capturing modifications to container configurations, as taught in Bregman with converting configurations, as taught in Abraham. Abraham teaches that post deployment configuration changes are common and require reconciliation. Id. at ¶ 0001. Therefore, one having ordinary skill in the art would have been motivated to combine detecting and capturing modifications to container configurations, as taught in Bregman with converting configurations, as taught in Abraham, for the purpose of using a known configuration change detection and reconciliation method with a configuration change detection system.}
However, Bregman and Abraham doesn’t explicitly teach the limitation:
apply, for the particular node, the code modification in the second format to the second configuration file, wherein the control node is configured to deploy the software entity to the particular node using the code modification applied to the second configuration file. {Howley does teach this limitation. Howley teaches that detecting and capturing modifications to container configurations, as taught in Bregman and Abraham, may include updatable templates that perform ansible deployments using user customized deployment parameters for a particular node(s). Howley at ¶¶ 0030 – 0036 (parameters includes details for a particular node deployment).
Bregman, Abraham, and Howley are analogous art because they are from the “same field of endeavor” and are both from the same “problem-solving area.” Specifically, they are both from the field of software deployment, and both are trying to solve the problem of to configure a deployment.
It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to combine detecting and capturing modifications to container configurations, as taught in Bregman and Abraham with redeploying the changes as required, as taught in Howley. Howley teaches that manual cloud deployments can lead to error. Id. at ¶ 0001. Therefore, one having ordinary skill in the art would have been motivated to combine detecting and capturing modifications to container configurations, as taught in Bregman and Abraham with redeploying the changes as required, as taught in Howley, for the purpose of using a known method for automated configuration change re-deployment with a method that automatically captures configuration changes for future re-deployment.}
Claims 2, 9, and 16
With respect to claims 2, 9, and 16 Bregman, Abraham, and Howley, teach the invention as claimed including:
wherein the memory further comprises instructions that are executable by the processing device for causing the processing device to, subsequent to converting the code modification from the first format to the second format: generate, based on the first configuration file and the code modification, an updated second configuration file; and store the updated second configuration file for use in deploying the software entity with the code modification to the particular node. {Modifications to the current deployment state of a container is detected by a state daemon which may incorporate changes made at the container into a configuration for the container to be used in future deployments, such as via an Ansible playbook, to redeploy the container using the detected and incorporated configuration modifications. Bregman at ¶¶ 0032 – 0034 and 0041 – 0043; id. at ¶ 0027 (configurations include metadata).}
Claims 3, 10, and 17
With respect to claims 3, 10, and 17 Bregman, Abraham, and Howley, teach the invention as claimed including:
wherein the memory further comprises instructions that are executable by the processing device for causing the processing device to: detect the control node deploying the software entity to the particular node using the updated second configuration file; and remove metadata associated with the code modification from the first configuration file based on detecting the control node deploying the software entity to the particular node using the updated second configuration file. {Modifications to the current deployment state of a container is detected by a state daemon which may incorporate changes made at the container into a configuration for the container to be used in future deployments, such as via an Ansible playbook, to redeploy the container using the detected and incorporated configuration modifications. Bregman at ¶¶ 0032 – 0034 and 0041 – 0043; id. at ¶ 0027 (configurations include metadata).}
Claims 4, 11, and 18
With respect to claims 4, 11, and 18 Bregman, Abraham, and Howley, teach the invention as claimed including:
wherein the memory further comprises instructions that are executable by the processing device for causing the processing device to, subsequent to converting the code modification from the first format to the second format: generate metadata for the first configuration file comprising a mapping between the particular node and the code modification; and apply the code modification in the second format to the second configuration file for the particular node based on the metadata. {Modifications to the current deployment state of a container is detected by a state daemon which may incorporate changes made at the container into a configuration for the container to be used in future deployments, such as via an Ansible playbook, to redeploy the container using the detected and incorporated configuration modifications. Bregman at ¶¶ 0032 – 0034 and 0041 – 0043; id. at ¶ 0027 (configurations include metadata).}
Claims 5, 12, and 19
With respect to claims 5, 12, and 19 Bregman, Abraham, and Howley, teach the invention as claimed including:
wherein the memory further comprises instructions that are executable by the processing device for causing the processing device to [convert] the code modification from the first format to the second format based on a mapping between control node commands and software entity commands. {Modifications to the current deployment state of a container is detected by a state daemon which may incorporate changes made at the container into a configuration for the container to be used in future deployments, such as via an Ansible playbook, to redeploy the container using the detected and incorporated configuration modifications. Bregman at ¶¶ 0032 – 0034 and 0041 – 0043; id. at ¶ 0027 (configurations include metadata).}
convert {Identifying modifications to the state of a deployed topology, converting the topology to a second agnostic format, and then converting that into a third format, such as an ansible playbook, that is configured to redeploy the topology to particular nodes requiring the state changes. Abraham at ¶¶ 0059, 0510, 0511, 0714 & 0715.}
Claims 6, 13, and 20
With respect to claims 6, 13, and 20 Bregman, Abraham, and Howley, teach the invention as claimed including:
wherein the control node is configured to deploy the software entity to a set of nodes of the plurality of nodes that does not comprise the particular node by using the second configuration file without the applied code modification. {Deployments of software may be made to a plurality of containers. Bregman at ¶¶ 0012 & 0013.}
Claims 7 and 14
With respect to claims 7 and 14 Bregman, Abraham, and Howley, teach the invention as claimed including:
wherein the first configuration file is an Ansible playbook, the second configuration file is a Containerfile, and the software entity is a container. {Modifications to the current deployment state of a container is detected by a state daemon which may incorporate changes made at the container into a configuration for the container to be used in future deployments, such as via an Ansible playbook, to redeploy the container using the detected and incorporated configuration modifications. Bregman at ¶¶ 0032 – 0034 and 0041 – 0043; id. at ¶ 0027 (configurations include metadata).}
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to THEODORE E HEBERT whose telephone number is (571)270-1409. The examiner can normally be reached on Monday to Friday 9:00 a.m. to 6:00 p.m..
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Lewis Bullock can be reached on 571-272-3759. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
//T.H./ January 10, 2026
Examiner, Art Unit 2199
/LEWIS A BULLOCK JR/Supervisory Patent Examiner, Art Unit 2199