Patents Assigned to Chef Software Inc.
  • Patent number: 10430317
    Abstract: Techniques are described for managing creation and/or implementation of compliance-based procedures and policies for computing environments executing software programs using computing resources. In at least some situations, the described techniques include performing one or more defined compliance tests on a target computing environment by employing user-defined and/or predefined compliance profiles to test one or more computing resources in the target computing environment. Profiles typically include one or more user-defined or predefined controls that each includes one or more compliance tests, which in turn utilize one or more user-defined or predefined testing-implementation modules to execute the tests. Profiles can introduce dependencies so that one profile can access and utilize the controls or testing-implementation modules in other profiles. A user can dynamically execute a profile, and/or profiles can be scheduled for execution (e.g.
    Type: Grant
    Filed: October 31, 2017
    Date of Patent: October 1, 2019
    Assignee: Chef Software, Inc.
    Inventors: Christian Dominik Richter, Christoph Thomas Hartmann
  • Patent number: 10380365
    Abstract: Techniques are described for managing creation and/or execution of distributed programs, such as for a group of multiple interrelated programs that are part of a service-oriented architecture or that otherwise interact during execution to provide a desired type of functionality. In at least some situations, the described techniques include performing decentralized choreographed distributed execution of a group of related programs, by using executing supervisor components for some or all such programs to manage execution-related behavior of the programs. The execution-related behavior that is managed by supervisor components for a group of programs may include, for example, managing interactions between the programs, managing run-time dependencies and other relationships between at least some of the programs, managing update strategies for updating some or all of the programs of the group while the group continues to provide functionality (e.g.
    Type: Grant
    Filed: June 1, 2016
    Date of Patent: August 13, 2019
    Assignee: Chef Software, Inc.
    Inventors: Adam B. Jacob, Julian C. Dunn, Jamie Winsor, Fletcher Nichol, Alexandre Ethier, Nathan Smith, Ryan Keairns, David Parfitt, Joshua Timberman
  • Patent number: 10346210
    Abstract: Embodiments are directed towards push signaling to run jobs on available servers. Users may provide jobs or job instructions to a job control node. Job control node may determine one or more available job target nodes from among a plurality of managed nodes associated with the job control node. The job target nodes may be determined based on information included in the provided job instructions. If there are available job target nodes, the job control node may provide the job instructions to each available job target node. Further, the job control node may receive communications from one or more available job target nodes that indicates that the job target node is prepared and ready to execute the received job instructions. Next, the job control node may issue a job start command that triggers the prepared job target nodes to begin executing the provided job instructions.
    Type: Grant
    Filed: February 27, 2017
    Date of Patent: July 9, 2019
    Assignee: Chef Software, Inc.
    Inventors: Mark Andrew Anderson, Christopher James Brown, Kevin Allen Smith, John Braden Keiser
  • Patent number: 10069685
    Abstract: Embodiments are directed towards employing a configuration management system to report one or more assumptions based on whether or not prerequisites for a resource are satisfied. The configuration management system may determine at least one prerequisite that corresponds to a provided resource. The prerequisites may indicate what the resource requires in order to put the system into the target state. If the prerequisites are unsatisfied, then assumptions regarding the system may be determined and reported to a user of the system. The assumptions may include at least a state transition that upon occurrence puts the system into the target state. If the system is in a non-operational mode, such that state actions and state transitions are simulated, rather than being executed, the system may be enabled to perform other actions as if the prerequisites were satisfied and the state transition occurred, even if it is not.
    Type: Grant
    Filed: May 10, 2017
    Date of Patent: September 4, 2018
    Assignee: Chef Software Inc.
    Inventors: Daniel Stephen DeLeo, Adam Brent Jacob, Christopher James Brown, Marc Alan Paradise
  • Patent number: 9674109
    Abstract: Embodiments are directed towards employing a configuration management system to report one or more assumptions based on whether or not prerequisites for a resource are satisfied. The configuration management system may determine at least one prerequisite that corresponds to a provided resource. The prerequisites may indicate what the resource requires in order to put the system into the target state. If the prerequisites are unsatisfied, then assumptions regarding the system may be determined and reported to a user of the system. The assumptions may include at least a state transition that upon occurrence puts the system into the target state. If the system is in a non-operational mode, such that state actions and state transitions are simulated, rather than being executed, the system may be enabled to perform other actions as if the prerequisites were satisfied and the state transition occurred, even if it is not.
    Type: Grant
    Filed: June 27, 2016
    Date of Patent: June 6, 2017
    Assignee: Chef Software Inc.
    Inventors: Daniel Stephen DeLeo, Adam Brent Jacob, Christopher James Brown, Marc Alan Paradise
  • Patent number: 9584361
    Abstract: Embodiments are directed towards push signaling to run jobs on available servers. Users may provide jobs or job instructions to a job control node. Job control node may determine one or more available job target nodes from among a plurality of managed nodes associated with the job control node. The job target nodes may be determined based on information included in the provided job instructions. If there are available job target nodes, the job control node may provide the job instructions to each available job target node. Further, the job control node may receive communications from one or more available job target nodes that indicates that the job target node is prepared and ready to execute the received job instructions. Next, the job control node may issue a job start command that triggers the prepared job target nodes to begin executing the provided job instructions.
    Type: Grant
    Filed: December 10, 2013
    Date of Patent: February 28, 2017
    Assignee: Chef Software Inc.
    Inventors: Mark Andrew Anderson, Christopher James Brown, Kevin Allen Smith, John Braden Keiser
  • Patent number: 9507582
    Abstract: Embodiments are directed towards managing application delivery over a network. Change information that corresponds to changes to an application may be provided to a delivery pipeline. The change information may be verified in part based on a static analysis of the content of the change information, compiling, and unit testing. Reviewers may be notified to approve the change information. A version of the application that includes the change information may be generated. Acceptance testing may be performed that includes provisioning computing resources in an acceptance computing environment. And, deploying a version of application that includes the change information into the acceptance computing environment. If the acceptance testing passes, a shipping operation may be enabled pausing the delivery pipeline until an authorized user activates the shipping operation restarting the delivery pipeline and deploying the application to one or more computing environments.
    Type: Grant
    Filed: April 27, 2015
    Date of Patent: November 29, 2016
    Assignee: Chef Software, Inc.
    Inventors: Adam Brent Jacob, Seth Yosef Falcon, Lamont Curtis Granquist, Jon Morrow, Christopher Brown, Kevin Smith
  • Patent number: 9379954
    Abstract: Embodiments are directed towards employing a configuration management system to report one or more assumptions based on whether or not prerequisites for a resource are satisfied. The configuration management system may determine at least one prerequisite that corresponds to a provided resource. The prerequisites may indicate what the resource requires in order to put the system into the target state. If the prerequisites are unsatisfied, then assumptions regarding the system may be determined and reported to a user of the system. The assumptions may include at least a state transition that upon occurrence puts the system into the target state. If the system is in a non-operational mode, such that state actions and state transitions are simulated, rather than being executed, the system may be enabled to perform other actions as if the prerequisites were satisfied and the state transition occurred, even if it is not.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: June 28, 2016
    Assignee: Chef Software Inc.
    Inventors: Daniel Stephen DeLeo, Adam Brent Jacob, Christopher James Brown, Marc Alan Paradise
  • Patent number: 9021458
    Abstract: Embodiment are directed towards managing application delivery over a network. Change information that corresponds to changes to an application may be provided to a delivery pipeline. The change information may be verified in part based on a static analysis of the content of the change information, compiling, and unit testing. Reviewers may be notified to approve the change information. A version of the application that includes the change information may be generated. Acceptance testing may be performed that includes provisioning computing resources in an acceptance computing environment. And, deploying a version of application that includes the change information into the acceptance computing environment. If the acceptance testing passes, a shipping operation may be enabled pausing the delivery pipeline until an authorized user activates the shipping operation restarting the delivery pipeline and deploying the application to one or more computing environments.
    Type: Grant
    Filed: June 25, 2014
    Date of Patent: April 28, 2015
    Assignee: Chef Software, Inc.
    Inventors: Adam Brent Jacob, Seth Yosef Falcon, Lamont Curtis Granquist, Jon Morrow, Christopher Brown, Kevin Smith
  • Publication number: 20140280958
    Abstract: Embodiments are directed towards employing a configuration management system to report one or more assumptions based on whether or not prerequisites for a resource are satisfied. The configuration management system may determine at least one prerequisite that corresponds to a provided resource. The prerequisites may indicate what the resource requires in order to put the system into the target state. If the prerequisites are unsatisfied, then assumptions regarding the system may be determined and reported to a user of the system. The assumptions may include at least a state transition that upon occurrence puts the system into the target state. If the system is in a non-operational mode, such that state actions and state transitions are simulated, rather than being executed, the system may be enabled to perform other actions as if the prerequisites were satisfied and the state transition occurred, even if it is not.
    Type: Application
    Filed: March 15, 2013
    Publication date: September 18, 2014
    Applicant: Chef Software Inc.
    Inventors: Daniel Stephen DeLeo, Adam Brent Jacob, Christopher James Brown, Marc Alan Paradise
  • Publication number: 20140280843
    Abstract: Embodiments are directed towards push signaling to run jobs on available servers. Users may provide jobs or job instructions to a job control node. Job control node may determine one or more available job target nodes from among a plurality of managed nodes associated with the job control node. The job target nodes may be determined based on information included in the provided job instructions. If there are available job target nodes, the job control node may provide the job instructions to each available job target node. Further, the job control node may receive communications from one or more available job target nodes that indicates that the job target node is prepared and ready to execute the received job instructions. Next, the job control node may issue a job start command that triggers the prepared job target nodes to begin executing the provided job instructions.
    Type: Application
    Filed: December 10, 2013
    Publication date: September 18, 2014
    Applicant: Chef Software Inc.
    Inventors: Mark Andrew Anderson, Christopher James Brown, Kevin Allen Smith, John Braden Keiser