rdeploy
Design
The goal of this script will be to create a program that can watch a folder for a specially crafted tar file containing a manifest that provides the script all the information it will need to automatically deploy a fix. The fix will be placed in a directory that is constantly watched by the script. When a new fix file is dropped in it will automatically be picked up and put in the queue for deployment. The user accesses a webport which will present a GUI containing all the fixes in the queue. At this point the user can select the specific fix to be deployed and where it should be deployed to (QA/Stage/Prod). Once accepted, the script will process all the deployements selected. First it will read the manifest file from the .tar to propagate important deployment information. i
Process
- Scan dir for fixes
- Extract master-manifest
- Add fixes to queue
- Access webport to approve deployments to desired pool
- Process queue
- Send email to QA for PLV
- PLV IF Stage GOTO: 3 ELSE GOTO: 8
- Delete or move fix files
Manifest Example
---
comments: asdf
date: 1-1-01
ttp: 12354
deployments:
- fixid: 1
comment: fixid 1 comment
type: Web
stage:
group: Stage Web
clear-template: true
restart-apache: true
production:
group: Prod Web
clear-template: true
restart-apache: true
- fixid: 2
comment: fixid 2 comment
type: Ecomdb
stage:
group: Stage Ecomdb
production:
group: Prod Ecomdb
- fixid: 3
comment: fixid 3 comment
type: Dispatcher
stage:
group: Stage Dispatcher
production:
group: Prod Dispatcher