A computer-implemented method, comprising: capturing logs reflecting operational characteristics of a cloud deployment, wherein the cloud deployment comprises a plurality of remote services running on one or more hardware devices, and wherein the operational characteristics comprise one or more metrics indicative of a health status of the cloud deployment, the one or more metrics relating to at least one of usage, call response time, build failures, or number of error logs; obtaining a current status of the cloud deployment based on the captured logs reflecting the operational characteristics of the cloud deployment; transmitting the current status to a central upgrade server; receiving , from the central upgrade server, a deployment plan comprising a plurality of tasks to be performed by the plurality of remote services to achieve a target deployment state of the cloud deployment, wherein the deployment plan satisfies a pre-condition constraint that specifies a proper progression of upgrades for maintaining dependencies between the plurality of remote services; and effectuating the deployment plan to achieve the target deployment state, wherein effectuating the deployment plan comprises performing the plurality of tasks in a designated order, wherein the plurality of tasks comprise tasks instructing the system to upgrade one or more nodes of the cloud deployment in accordance with target traffic ratio, the target traffic ratio reflecting a first subset of the one or more nodes being upgraded to a new product version and a second subset of the one or more nodes being maintained at a current product version and the central upgrade server instructs the system to roll-back to a previous product version upon a determination that the health or stability of the first subset of the one or more nodes does not meet a determined threshold. capturing logs reflecting operational characteristics of a cloud deployment, wherein the cloud deployment comprises a plurality of remote services running on one or more hardware devices, and wherein the operational characteristics comprise one or more metrics indicative of a health status of the cloud deployment, the one or more metrics relating to at least one of usage, call response time, build failures, or number of error logs; obtaining a current status of the cloud deployment based on the captured logs reflecting the operational characteristics of the cloud deployment; transmitting the current status to a central upgrade server; receiving , from the central upgrade server, a deployment plan comprising a plurality of tasks to be performed by the plurality of remote services to achieve a target deployment state of the cloud deployment, wherein the deployment plan satisfies a pre-condition constraint that specifies a proper progression of upgrades for maintaining dependencies between the plurality of remote services; and effectuating the deployment plan to achieve the target deployment state, wherein effectuating the deployment plan comprises performing the plurality of tasks in a designated order, wherein the plurality of tasks comprise tasks instructing the system to upgrade one or more nodes of the cloud deployment in accordance with target traffic ratio, the target traffic ratio reflecting a first subset of the one or more nodes being upgraded to a new product version and a second subset of the one or more nodes being maintained at a current product version and the central upgrade server instructs the system to roll-back to a previous product version upon a determination that the health or stability of the first subset of the one or more nodes does not meet a determined threshold. <EOS>