Wiki source code of Setting up a deployment plan

Last modified by Danniar Firdausy on 2024/09/09 15:46

Hide last authors
Erik Bakker 23.1 1 {{container}}{{container layoutStyle="columns"}}(((
eMagiz 1.1 2
Erik Bakker 41.1 3 In this microlearning, we’ll explore setting up a deployment plan within eMagiz, covering key considerations and steps to ensure a smooth deployment process. By considering various environment needs and best practices, you’ll learn to configure your deployment plan effectively.
eMagiz 1.1 4
Erik Bakker 23.1 5 Should you have any questions, please contact [[academy@emagiz.com>>mailto:academy@emagiz.com]].
eMagiz 1.1 6
7 == 1. Prerequisites ==
8
9 * Basic knowledge of the eMagiz platform
10 * Understand eMagiz releases in basics
Erik Bakker 41.1 11 * Have an environment where you can add operational releases to try out the deployment plan
eMagiz 1.1 12
13 == 2. Key concepts ==
14
Erik Bakker 41.1 15 This microlearning centers around the Deployment plan. The deployment plan is a series of steps that must be executed on a TAP environment to deploy the (active) release. The release is active in that all changes made to it compared to the running environment are applied effectively before executing the deployment.
eMagiz 1.1 16
Erik Bakker 41.1 17 The Deployment plan is defined in the Deployment Plan section under Deploy. Each Test, Acceptance, and Production environment has its plan, which may vary across the environments. The deployment plan is executed from the release itself using Release options.
eMagiz 1.1 18
Erik Bakker 23.1 19 [[image:Main.Images.Microlearning.WebHome@crashcourse-platform-deploy-setup-deployment-plan-pic1.png]]
eMagiz 1.1 20
21 == 3. Defining the Deployment plan ==
22
Danniar Firdausy 50.1 23 Below is a screenshot of a basic Deployment plan. In the next section, we'll look at the configuration options available. As seen below, these steps can be added with the button New.
eMagiz 1.1 24
Erik Bakker 32.1 25 [[image:Main.Images.Microlearning.WebHome@crashcourse-platform-deploy-setup-deployment-plan--default-deployment-plan-gen3.png]]
eMagiz 1.1 26
Erik Bakker 41.1 27 Running a deployment plan means machines are stopped, and new images are deployed. eMagiz does this by comparing your currently running release and the recent release you have activated. To learn more about how eMagiz determines whether a runtime has changed, check out this [[microlearning>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-deploy-execute-deployment-plan-gen3.WebHome||target="blank"]]. Consequently, the runtimes are unavailable shortly.
Erik Bakker 32.1 28
Erik Bakker 41.1 29 === 3.1 Disable triggers ===
eMagiz 1.1 30
Erik Bakker 49.1 31 One of the steps available to you is to disable all triggers that are defined in the Manage phase. You can find this step under the “Monitoring Trigger“ step type. During the execution of the deployment plan, depending on the alerting approach, some specific alerts can be triggered that may lead to false-positive alerts. To prevent this, this step is set as one of the first steps in any deployment plan. There are two configurations available within this step:
eMagiz 1.1 32
Erik Bakker 47.1 33 * The "Disable" option under this step type comes with two options.
34 ** End Action. Here, you can opt for the following three options
35 *** Auto-enable triggers
36 *** Send email
37 *** Both
Erik Bakker 49.1 38 ** Duration. Here, you can define a waiting period that states how long eMagiz should wait before executing the end action. The value of this field needs to lie between 15 and 120 minutes. Note that the timer starts when your deployment plan's "disable" step is finished.
eMagiz 1.1 39
Erik Bakker 47.1 40 [[image:Main.Images.Release Blog.WebHome@release-229-disable-option.png]]
41
42 {{warning}}Note that when you disable triggers, no alerting will be triggered; consequently, no notifications will be sent. Note that the end action is only triggered when the deployment plan cannot complete all steps. When all steps are completed, the timer is **stopped**.{{/warning}}
43
Erik Bakker 41.1 44 === 3.2 Enable triggers ===
eMagiz 1.1 45
Erik Bakker 47.1 46 The last step of your default plan will re-enable triggers automatically. In case you don't have this step you can add it manually or revert back to the default plan by pressing the "Default Plan" button.
Erik Bakker 48.1 47
Erik Bakker 47.1 48 {{warning}}Should your deployment get stuck before it is able to finish all steps there are various mechanisms in place that will automatically re-enable triggers via eMagiz.
eMagiz 1.1 49
Erik Bakker 47.1 50 * Triggers are automatically enabled **once** you move away from the page showing the deployment plan execution.
51 ** Consequently, this also means that the triggers will not be enabled when you stay on that page for a long time after the deployment is finished.
52 * Utilize the functionality on the "Disable trigger" step that automatically re-enables triggers after a certain period of time.{{/warning}}
53
Erik Bakker 41.1 54 === 3.3 Deploy Machine ===
55
56 In Architecture, you can deploy the machine for every separate machine defined in your Deploy Architecture. You also have the option to start, stop, or restart machines that run in the AWS Cloud.
57
Erik Bakker 32.1 58 * Deploy Machine
59 * Start Machine (only AWS)
60 * Stop Machine (only AWS)
61 * Restart Machine (only AWS)
eMagiz 1.1 62
Erik Bakker 32.1 63 [[image:Main.Images.Microlearning.WebHome@crashcourse-platform-deploy-setup-deployment-plan--deploy-machine-options.png]]
eMagiz 1.1 64
Erik Bakker 41.1 65 When you execute actions via Deploy Architecture, you can manually disable the triggers by going to Manage -> Alerting -> Triggers -> Notification Settings and pressing "Pause Notifications." Alternatively, you can start a deployment but don't continue with it beyond the "disable triggers" step.
Erik Bakker 32.1 66
Erik Bakker 41.1 67 {{info}}Note that when you alter the configuration of a machine (i.e., add or remove a runtime), all runtimes on that machine **need to be redeployed**. Downtime depends on the runtime size and necessary changes for that runtime.{{/info}}
68
eMagiz 1.1 69 === 3.4 Manual steps ===
70
Erik Bakker 41.1 71 All the above options are automated steps. In case a specific action needs to be taken before the next automated step, a manual step can be added. The description helps to describe it, and the deployment steps will halt at this part. It is, however, often used for pre-deployment and post-deployment reminders.
eMagiz 1.1 72
73 === 3.5 Keep the deployment plan up to date ===
74
75 The following ways will help to keep the plan up to date:
76
77 * Use the Default plan option to handle 90% of all cases so that every new runtime is automatically added
Erik Bakker 32.1 78 * Copy the plan to the following environment to align all plans similarly.
Erik Bakker 41.1 79 * Prepare the deployment step in your work definition (sprint) and improve the deployment at each iteration.
eMagiz 1.1 80
Erik Bakker 34.1 81 == 4. Key takeaways ==
eMagiz 1.1 82
83 * The deployment plan is part of the Release Management feature set of eMagiz
84 * Using the deployment plan, you are always sure that the release defined is the release that runs on any environment (notably the production environment)
85 * The deployment plan is a must-have to deploy all the changes in an active release on an environment
Erik Bakker 41.1 86 * Keeping the plan current is easy and takes away the manual effort to deploy flows at different runtimes.
eMagiz 1.1 87
Erik Bakker 34.1 88 == 5. Suggested Additional Readings ==
eMagiz 1.1 89
Carlijn Kokkeler 36.1 90 * [[Crash Courses (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.WebHome||target="blank"]]
91 ** [[Crash Course Platform (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.WebHome||target="blank"]]
Erik Bakker 42.1 92 *** [[Create a release (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-deploy-create-new-release||target="blank"]]
Carlijn Kokkeler 37.1 93 *** [[Deploy a release (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-deploy-execute-deployment-plan-gen3.WebHome||target="blank"]]
Carlijn Kokkeler 38.1 94 * [[Intermediate (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.WebHome||target="blank"]]
95 ** [[Grouping and Failover (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Grouping and Failover.WebHome||target="blank"]]
96 *** [[Deploy Possibilities (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Grouping and Failover.intermediate-grouping-and-failover-deploy-possibilities.WebHome||target="blank"]]
Erik Bakker 43.1 97 * [[Deployment Plan (Search Result)>>url:https://docs.emagiz.com/bin/view/Main/Search?sort=score&sortOrder=desc&highlight=true&facet=true&r=1&f_space_facet=0%2FMain.&f_type=DOCUMENT&f_locale=en&f_locale=&f_locale=en&text=%22deployment+plan%22||target="blank"]]
eMagiz 1.1 98
Erik Bakker 23.1 99 )))((({{toc/}}))){{/container}}{{/container}}