# SIQ Execution Check List :spiral_note_pad: ## :memo: Where do I start? ### :checkered_flag: CheckPoint 1 - General Guidelines:rocket: - [ ] Make sure change number is replaced with EPIC Number - [ ] Make sure all occurrences of **Environment Reference:** are marked as PROD/Non-Prod as per PROD/QA SIQ Doc - [ ] When migrating to QA make sure that SIQ states **<feature_branch> to develop** branch in migration steps - [ ] When migrating to PROD make sure that SIQ states **develop to <release_YYYYMMDD>** branch in migration steps - [ ] When migrating from QA to Prod make sure to mention correct date in release branch on the SIQ document. The migration takes place every **Wednesday**. Therefore, the release branch is created with following naming convention **release_YYYYMMDD** e.g. **release_20211123**. ***Note:-*** *Here date is the date of a Wednesday falling in the prod migration week*. - [ ] Check system cofiguration variables for system name, repo name, build pipeline path, release pipeline path and deploy branch name - [ ] Make sure to mention the service account in use and specific Ops team service account eg for Syndicated Projects we use **svc-cdls-p-patserv** as dev and **svc-cop-loadprod** for Ops service account similarly for MA-360 we use **svc-cdlma-p-dtag** as dev and **svc-cop-p-prod** - [ ] Change deplyment group in accordance to the Repository and with respect to QA/PROD migrations e.g. *For Prod Migrations in Syndicated we write it as **CDL-SYNDICATED-PROD*** - [ ] Make sure all build and release pipelines are named as per standards: ```csv= For Build Pipelines: cdl-<repo-name>-build-<project_name>-<folder_name> E.g.:- cdl-syndicated-build-resolving-multiple-patient-id-sha-spsn-configuration For Release Pipelines: cdl-<repo-name>-release-<project_name>-<folder_name> E.g.:- cdl-syndicated-build-resolving-multiple-patient-id-sha-spsn-configuration ``` ### :checkered_flag: CheckPoint 2: Build Pipelines - [ ] Add build pipelines path from Azure devops till Yaml file. Make sure your PR is merged to avoid comments from Ops/Admin teams regarding unavailability of files in DevOps e.g. [Link](https://dev.azure.com/abbvie-devops-lab/Abbvie%20BTS/_apps/hub/ms.vss-build-web.ci-designer-hub?pipelineId=949&branch=develop) - [ ] Only add pipelines path for folders that require migration ### :checkered_flag: CheckPoint 3: Release Pipelines - [ ] Add release pipeline paths for all folders under migration. Make sure all paths end on the config page where all the path details are present, Refer: [Link](https://dev.azure.com/abbvie-devops-lab/Abbvie%20BTS/_releaseDefinition?definitionId=1369&_a=definition-tasks&environmentId=6026) - [ ] Make sure All backup and rollback folders are dated as per release dates of the migration and are in **YYYYMMDD** format e.g. backup/rollback folder name: hive_20220216 - [ ] Make sure to provide rollback stages path in the rollback execution steps w.r.t rollback stage folders. ### :checkered_flag: CheckPoint 4: Steps To check when creating New DBs - [ ] Create DB's for all raw,refined, work and consumption layers in all DEV, QA and PROD environments - [ ] Make sure to include DB storage quota details when requesting DB creation in both CAB meetings and DB creation script - [ ] Add grant all on uri command for all required groups - [ ] Sample DB creation Shell script [Link](https://dev.azure.com/abbvie-devops-lab/Abbvie%20BTS/_git/CommercialDatalake-market-access?path=/src/arf/shell/prod/arf_prod_evoucher_db_creation_script.sh) - [ ] Sample DB creation Hive Script [Link](https://dev.azure.com/abbvie-devops-lab/Abbvie%20BTS/_git/CommercialDatalake-market-access?path=/src/arf/hive/prod/arf_prod_accumulator_maximiser_db_creation_script.hql) - [ ] Mention DB Creation scripts after release pipelines steps with execution command - [ ] Mention in steps to execute Shell script e.g.: ```shell= Execute below shell script for DB path creation sh -v /code_repository/prod/comm/market-access/src/arf/shell/arf_prod_evoucher_db_creation_script.sh ``` - [ ] Mention in steps to execute Hive script e.g.: ```shell= Execute below hive script for DB creation hive -f /code_repository/prod/comm/market-access/src/arf/hive/arf_prod_evoucher_db_creation_script.hql ``` - [ ] On the newly created DB make sure to raise **rwx** accesses for OPS and Team service account ### :checkered_flag: Checkpoint 5: Steps To check when using Existing DBs - [ ] If No New DB is created make sure to raise DB specific access as needed - [ ] Make sure to raise requests for both Team and Ops service accounts ### :checkered_flag: Checkpoint 6: Steps To check when performing Ingestion - [x] Raise **recursive** RX access to Ingestion framework folders i.e. **"/code_repository/prod/comm/framework/src/"** - [x] Raise **landing path creation** request if not already present - [ ] Make sure to **raise recursive RWX access** request steps for all DBs for both team and Ops service account - [x] Make sure to **raise RWX access to audit db** if not already present - [x] Create Config HDFS Paths as central location paths as part of configurations e.g. **/ConfigRepository/prod/comm/syndicated/src/caremark/adherence** - [x] Raise recursive access on above mentioned paths for both Ops and team service account - [x] Add **execution path creation step** and raise recursive RWX on the same for both team and Ops service account - [x] Make sure team/Ops service account have **required access on JCEKS** file if not add the steps to raise the same - [ ] Make sure the JCEKS being used has sufficent access to S3 buckets being used in the Ingestion framework - [ ] Make sure team/Ops service account have required access on S3 if not add the steps to raise the same ### :checkered_flag: Checkpoint 7: Final Checks - [x] Make sure to add **autosys logs and error path creation steps** in Prod SIQ - [ ] Add **Alation portal DB Refresh** details if applicable ### :gift: SIQ Samples: Folder Link: [Link to Documents](https://zsassociates.sharepoint.com/:f:/r/Sites/0153IL4484/Shared%20Documents/4.%20MA360%20(including%20Augmentation)/00_MA360_onboarding/SIQs?csf=1&web=1&e=Fffc8Y) DOC 1: SIQ with DB Creation script execution DOC 2: SIQ with Ingestion related Steps