Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


esr-etl-ETL-param-cron-stage a cron job in jenkins
  • This uses the STAGE inventory
  • It runs ansible/esr-etl.yml with --extra-vars="LOAD_TYPE=${LOAD_TYPE}"
  • Depending on the time, the value of LOAD_TYPE varies
  • This deprecates the below tis-esr-param-XXXXX jenkins jobs
  • param-apc-import
  • disabled because tis-esr-etl does the same thing
  • uses TIS-ESR-ETL git repo
  • runs mvn

    ProjectJenkins jobPurposeSCM triggeredcronAction
    ANYservice-env-deploy
    • This is a manual job only
    • Can deploy any service in any environment
    • Deploys the version in platform.yml
    nonoKEEP






    ANYservice-pipeline
    • Run by other jenkins jobs
    • Creates JAR and Docker images
    • Put them into the registry
    nonoKEEP






    ESR
    • This is the main job for esr
    • It is triggered by a push into TIS-ESR git repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys esr-etl into dev
    yesnoKEEPESR/ESR-ETLtis-esr
    • This is the main job for esr
    • It is triggered by a push into TIS-ESR
    • git repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys esr-etl into dev
    yesnoKEEP

    tis-esr-parameterized
    • This is for manual run only
    • One runs it to pass a parameter like the date or the type of load needed
    • It does not create any JAR file or docker image
    • It just deploys whatever is in platform.yml into the selected environment
    • One can pass any parameter to the job, unlike service-env-deploy
    nono

    DUPLICATE OF service-env-deploy

    DELETE








    ESR-ETLtis-esr-etl
    • This is
    no"yes"
    • the main job for esr
    • It is triggered by a push into TIS-ESR-ETL git repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys esr-etl into dev
    yesnoKEEP

    tis-esr-etl-param-cron-prodDISABLED as of May 10th 2018
    • This uses the STAGE inventory
    • It runs ansible/esr-etl.yml with --extra-vars="LOAD_TYPE=${LOAD_TYPE}"
    • Depending on the time, the value of LOAD_TYPE varies
    • This deprecates the below tis-esr-param-XXXXX jenkins jobs
    noyesyesKEEP

    tis-esr-etl-
    • This is a cron job in jenkins
    • It runs tis-esr-parameterized with LOAD_TYPE=apc-import
    • Disabled while tis-esr-etl-param-cron is being tested
    no
    • 20h00
    • daily
    DELETEparameterized
    • uses TIS-DEVOPS
    • deploys the version of esr-etl mentionned in platform.yml in any environment using any chosen load_type
    • useful for testing and if the cron job missed its target
    nono

    tis-esr-etl-paramfull-applicant-load
    • This is a cron job in jenkins
    • It runs tis-esr-parameterized with LOAD_TYPE=applicant-load
    • Disabled while tis-esr-etl-param-cron is being tested
    no
    • 15h00
    • daily
    DELETEnotificationnono






    TIS-ESR-FTPSYNCtis-esr-etl-param-applicant-export
  • This is a cron job in jenkins
  • It runs tis-esr-parameterized with LOAD_ftpsync-manual
    • This allows running of ftpsync any time manually
    • ftpsync can list the content of FTP server, Blob storage; it can also transfer files from FTP server to Azure blob server and vice versa
    nono

    tis-esr-ftpsync-cron-prod
    • This runs ftpsync at predefined times in prod
    • ftpsync can list the content of FTP server, Blob storage; it can also transfer files from FTP server to Azure blob server and vice versa
    noyes

    tis-esr-ftpsync-cron-stage
    • This runs ftpsync at predefined times in prod
    • ftpsync can list the content of FTP server, Blob storage; it can also transfer files from FTP server to Azure blob server and vice versa
    noyes
    ESR Not used any more





    tis-esr-etl-param-cron-stage

    • This is a cron job in jenkins
    • This uses the STAGE inventory
    • It runs ansible/esr-etl.yml with --extra-vars="LOAD_TYPE=${LOAD_TYPE}"
    • Depending on the time, the value of LOAD_TYPE varies
    • This deprecates the below tis-esr-param-XXXXX jenkins jobs
    • DELETED
    no"yes"KEEP

    tis-esr-etl-jenkinsfile

    Test of new pipeline

    nono

    tis-esr-etl-param-cron-prod


    • DISABLED as of May 10th 2018 
    • This uses the STAGE inventory
    • It runs ansible/esr-etl.yml with --extra-vars="LOAD_TYPE=${LOAD_TYPE}"
    • Depending on the time, the value of LOAD_TYPE varies
    • This deprecates the below tis-esr-param-XXXXX jenkins jobs
    • Replaced by https://build.tis.nhs.uk/jenkins/job/tis-esr-etl-cron/
    • DELETED
    noyesKEEP

    esr-etl
    • DELETED on 2018-08-22
    • This is the main job for esr
    • It is triggered by a push into TIS-ESR-ETL git repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys esr-etl into dev
    yesno

    tis-esr-etl-param-apc-import
    • This is a cron job in jenkins
    • It runs tis-esr-parameterized with LOAD_TYPE=apc-import
    • Disabled
    no
    • 20h00
    • daily

    DELETE

    Deleted on 2018/08


    tis-esr-etl-param-applicant-load
    • This is a cron job in jenkins
    • It runs tis-esr-parameterized with LOAD_TYPE=applicant-load
    • Disabled
    • DELETED
    no
    • 15h00
    • daily
    DELETE

    tis-esr-etl-param-applicant-export
    • This is a cron job in jenkins
    • It runs tis-esr-parameterized with LOAD_TYPE=applicant-export
    • Disabled while
    • DELETED
    no
    • 17h00
    • daily
    DELETE

    tis-esr-etl-param-notification-cron is being testedexport
    • This is a cron job in jenkins
    • It runs tis-esr-parameterized with LOAD_TYPE=notification-export
    • Disabled
    • DELETED
    no
    • 17h00
    • daily
    DELETE

    tis-esr-etl-param-notification-daily-exportload
    • This is a cron job in jenkins
    • It runs tis-esr-parameterized with LOAD_TYPE=notification-export
    • Disabled while
    • DELETED
    no
    • 02h00
    • daily
    DELETE

    esr-etl
    • disabled because tis-esr-etl
    -param-cron is being tested
    no
    • 17h00
    • daily
    DELETE
    • does the same thing
    • uses TIS-ESR-ETL git repo
    • runs mvn

      Code Block
      clean install -e


    • then triggers mvn2docker jenkins job
    • DELETED
    yesno-param-notification-daily-load






    NDW-ETLtis-ndw-etl
    • This is a cron job in jenkins
    • It runs tis-esr-parameterized with LOAD_TYPE=notification-export
    • Disabled while tis-esr-etl-param-cron is being tested
    no
    • 02h00
    • daily
    DELETEesr-etl
    Code Block
    clean install -e
  • then triggers mvn2docker jenkins job
  • yesnoNDW-ETLndw-etl
    • This is the main job for NDW-ETL
    • It is triggered by a push into TIS-NDW-ETL git repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys esr-etl into dev
    yesno
    • KEEP
    • Rename to tis-ndw-etlthe main job for NDW-ETL
    • It is triggered by a push into TIS-NDW-ETL git repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys esr-etl into dev
    yesno
    • KEEP
    • Rename to tis-ndw-etl

    tis-ndw-etl-cron-uat
    • This is a cron job in Jenkins
    • It can take a parameter: the environment
    • It runs ansible/ndw-etl.yml playbook
    • It uses UAT inventory
    yesyes

    tis-ndw-etl-cron-prod
    • This is a cron job in Jenkins
    • It can take a parameter: the environment
    • It runs ansible/ndw-etl.yml playbook
    • It uses PROD inventory
    yesyes

    tis-ndw-etl-parameterized
    • This is a manualjob in Jenkins
    • It can take a parameter: the environment
    • It runs ansible/ndw-etl.yml playbook
    • It uses PROD inventory
    yesno






    NDW not used anymoretis-ndw-etl-parameterized-prod
    • This is a cron job in Jenkins
    • It can take a parameter: the environment
    • It runs ansible/ndw-etl.yml playbook
    • It uses PROD inventory
    • DELETED
    no
    • 07h00
    • daily
    KEEP

    tis-ndw-etl-parameterized-uat


    • This is a cron job in Jenkins
    • It can take a parameter: the environment
    • It runs ansible/ndw-etl.yml playbook
    • It uses UAT inventory
    • DELETED
    no
    • 07h00
    • daily
    KEEP
    chris-tis-ndw
    • Uses jenkinsfile
    • Can run against all our github repositories
    • configured to use tis-ndw-etl github repo
    nono
    • NO IDEA FOR NOW
    • Can be used as future implementation ??

    service-pipeline-ndw-etl

    disabled because this was a poor attempt to change service-pipeline

    DELETED

    nonoDELETE





    Generic Uploadtis-generic-upload-parameterized
    • This is for manual run only
    • One runs it to pass a DEBUG parameter which allows one to attach to port 5005TCP
    • It does not create any JAR file or docker image
    • It just deploys whatever is in platform.yml into the selected environment
    • One can pass the debug parameter to the job, unlike service-env-deploy
    nono
    tis-generic-upload
    • This is the main job for generic-upload
    • It is triggered by a push into TIS-GENERIC-UPLOAD repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    yesnoKEEP





    TCStcs
    • This is the main job for tcs
    • It is triggered by a push into TIS-TCS git repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    yesnoKEEP
    tcs-paramameterized

    disabled because this was a poor attempt to change service-pipeline

    DELETED



    DELETE





    admins-uiadmins-ui
    • This is the main job for admins-ui
    • It is triggered by a push into TIS-ADMINS-UI github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    yesnoKEEP
    TIS-ADMINS-UI
    • User chooses which of our github repositories to run
    • Uses jenkinsfile branch of TIS-ADMINS-UI git repo
    • In that jenkinsfile branch, there is a file named Jenkinsfile
    • That Jenkinsfile file is actually a groovy script with three stages: build the image(BUILD_ID), run tests, then push to registry
    nono
    admins-ui-e2eyesno
    • NO IDEA FOR NOW
    • This needs to happen so we better fix this somehow?

    admins-ui-uat
    • This is a clone of the main job for admins-ui
    • It used to be triggered by a push into TIS-ADMINS-UI github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    • DECISION REQUIRED - last run was on 2018 March 7th
    nono
    chris-admins-ui
    • this is a different implementation of a pipeline
    • It uses groovy pipeline directly implemented in the GUI
    • It never succeded, last run was on 2018 March 18th
    • Last error: java.lang.NoSuchMethodError: No such DSL method 'post' found among steps
    • DECISION REQUIRED
    nono
    • KEEP as POC??
    • Can lead to new pipeline

    TIS-ADMINS-UI
    • Uses jenkinsfile
    • Can run against all our github repositories
    • configured to use TIS-ADMINS-UI github reporepoNone / Automatic
    nono
    • KEEP






    referencereference
    • This is the main job for reference
    • It is triggered by a push into TIS-REFERENCE github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    yesno
    • KEEP






    profileprofile
    • This is the main job for profile
    • It is triggered by a push into TIS-PROFILE github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    yesno
    • KEEP
    • Rename as tis-profile ??

    profile-parent
    • This is the main job for profile
    • It is triggered by a push into TIS-PROFILE github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    • triggers profile
    • DUPLICATE ???
    yesno
    • DISABLE??






    assessmentsassessments
    • This is the main job for assessments
    • It is triggered by a push into TIS-ASSESSMENTS github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    yesno
    • KEEP
    • rename to tis-assessments ??

    tis-assessment-programme-membership-etlyesno

    tis-assessment-programme-membership-etl-runner
    • It runs the ansible code ansible/assessment-programme-membership-etl.yml
    nono






    auditaudit-logs-backup-dev
    • runs ansible task tasks/audit-logs-backup.yml in dev
    • backs audt logs to azure storage container heetislogsbackup, container audit-logs-dev
    no
    • midnight
    • daily
    • KEEP

    audit-logs-backup-prod
    • runs ansible task tasks/audit-logs-backup.yml in prod
    • backs audt logs to azure storage container heetislogsbackup, container audit-logs-prod
    no
    • midnight
    • daily
    • KEEP






    revalidationrevalidation
    • This is the main job for revalidation
    • It is triggered by a push into TIS-REVALIDATION github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    • triggers ci-test jenkins job 
    yesno
    • KEEP
    • rename to tis-revalidation ??






    intrepidintrepid-reval-etl-dev/stage/uidev
    • Runs ansible/tasks/intrepid-reval-etl-all.yml in dev, stage, uidev
    • creates docker instance intrepid-dr-etl:{{ versions['intrepid-reval-etl'] }}
    nono
    • REPLACE by one parameterized job ??

    intrepid-reval-etl-all-uat

    • Runs ansible/tasks/intrepid-reval-etl-all.yml in UAT
    • creates docker instance intrepid-dr-etl:{{ versions['intrepid-reval-etl'] }}
    nono 
    • REPLACE by one parameterized job ??

    intrepid-reval-etl-all-prod
    • Runs ansible/tasks/intrepid-reval-etl-all.yml in prod with --limit 10.170.0.137
    • creates docker instance intrepid-dr-etl:{{ versions['intrepid-reval-etl'] }}
    no
    • 5h30
    • daily
    • REPLACE by one parameterized job ??
    • prod is to be the default ??

    intrepid-reval-etltype-schema-env

    • takes ETLTYPE and ENVIRONMENT parameters
    • Runs ansible/tasks/intrepid-reval-etl-all.yml --extra-vars="etl_type=${ETLTYPE}"
    • creates docker instance intrepid-dr-etl:{{ versions['intrepid-reval-etl'] }}
    nono
    • KEEP ??
    • rename to intrepid-reval-etl-parameterized ??






    ci_testci_test
    • runs mvn verify
    • triggers release-tag
    • last run Apr 19, 2017 1:11:45 PM
    nono
    • DISABLE ??

    ci_test_tagging


    yesno

    ci_tests_parallelyesno
    • DISABLE ??







    release-tagrelease-tag
    • is triggered by the likes of ci_test
    • last run Apr 18, 2017 4:08:28 PM
    • takes the following parameters GIT_TAG_URL, GIT_TAG_BRANCH, GIT_TAG_VALUE
    • tags the repo GIT_TAG_URL with tag GIT_TAG_VALUE
    nono
    • FIX it to allow tagging ??






    fayaz-plfayaz-pl
    • last run 2017 Feb 27
    • pipeline script
    • takes a git repo, runs maven on it then runs mvn2docker
    • DELETED on 2018-08-22
    nono
    • DISABLE??






    Trainee-UItrainee-ui
    • This is the main job for reference
    • It is triggered by a push into TIS-TRAINEE-UI github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    yesno
    • KEEP
    • rename to tis-trainee-ui ??






    Notificationsnotifications
    • This is the main job for notifications
    • It is triggered by a push into TIS-NOTIFICATIONS github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    yesno
    • KEEP
    • rename to tis-notifications ??






    commoncommon
    • This is the main job for common
    • It is triggered by a push into TIS-COMMON github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    yesno
    • KEEP
    • rename to tis-common ??






    Intrepidintrepid-load
    • runs in PROD
    • runs ansible code ansible/tasks/intrepid-load.yml
    • does not use any git repo, apart from tis-devops
    • ansible/tasks/intrepid-load.yml: deploys docker image repository.tis.nhs.uk:5000/hee/csv-diff:{{ versions['intrepid-load'] }}
    nono
    • KEEP ??

    intrepid-dr-modelyesno
    • KEEP ??

    intrepid-dr-tools
    • It is triggered by a push into TIS-INTREPID-DR-TOOLS github repo
    • runs mvn clean install -e then mvn2docker
    yesno
    • KEEP ??

    intrepid-load-etl
    • disabled, last run 2017 Nov 9th
    • runs ansible playbook ansible/tasks/intrepid-load.yml in PROD
    • uses old DEVOPS repo
    nono
    • DELETE ??

    intrepid-anonymizer
    • runs ansible code ansible/tasks/intrepid-anonymizer.yml against localhost
    • deploys docker image repository.tis.nhs.uk:5000/hee/anonymizer:{{ versions['intrepid-anonymizer'] }}
    nono
    • KEEP ??

    intrepid-anonymizer-new

    • runs ansible/tasks/intrepid-anonymizer-new.yml in STAGE
    • never run
    • DISABLED on 2018-08-22
    nono
    • KEEP ??

    intrepid-anonymizer-build


    Code Block
    Anonymise intrepid data to populate the anonymized mirror
    • This is the main job for intrepid-anonymizer
    • It is triggered by a push into TIS-DATA-ANONYMIZER github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    yesno
    • KEEP
    • rename to tis-data-anonymizer ??

    intrepid-core-model
    • last run 2017 January 9th
    • This is the main job for intrepid-core-model
    • It is triggered by a push into TIS-INTREPID-CORE-MODEL github repo
    • It creates the JAR and Docker image by running mvn2docker
    yesno
    • KEEP ??

    intrepid-load-stagenono
    • KEEP ??
    • merge with another intrepid-load ??

    intrepid-etl-pipeine

    Quote:

    Code Block
    Runs intrepid-extract and load each morning. Intrepid extract: grabs data from intrepid places in into CSV files (db-to-csv). Intrepid remap: changes column names on CSV files (intrepid-remap-col-structure) - we could remove it Intrepid load: grabs CSV data and places it into the mirror (csv-diff) creates a delta file and then uploads to db Intrepid conosolidated etl: points to the mirror and populates the TIS system
    
    • DISABLED
    • pipeline script from SCM
    • SCM: TIS-DEVOPS
    • script: jenkins/intrepid-etl-prod.groovy
    • jenkins/intrepid-etl-prod.groovy can run intrepid-extract-all, intrepid-remapper-structure, intrepid-load, intrepid-extract-upload, intrepid-compare-stats
    nono
    • DELETE ??

    intrepid-etl-pipeline-new

    • pipeline script from SCM
    • SCM: TIS-DEVOPS
    • script: jenkins/intrepid-etl-prod-new.groovy
    • jenkins/intrepid-etl-prod-new.groovy runs ansible/tasks/intrepid-extract-new.yml with intrepid_dr_settings=<dr2|mirror-prod> schema=R1 mirror_settings=mirror-prod
      batch_size=20

    no
    • 23h05
    • daily
    • KEEP

    intrepid-extract-all
    • runs ansible/tasks/intrepid-extract-all.yml in PROD
    • ansible/tasks/intrepid-extract-all.yml: deploys docker image repository.tis.nhs.uk:5000/hee/intrepid-extract:{{ versions['intrepid-extract'] }}
    nono
    • KEEP

    intrepid-extract-dr2

    • disabled, last successful run 2017 Nov 30th
    • runs ansible/tasks/intrepid-extract-new.yml on ETL hosts in PROD
    no
    • midnight
    • daily
    • DELETE ??

    intrepid-dr-etl-build

    • This is the main job for notificationsfor TIS-INTREPID-DR-ETL
    • It is triggered by a push into TIS-INTREPID-DR-ETL github repo
    • It creates the JAR and Docker image by running service-pipeline
    • When FINALTAG is set, it deploys generic-upload into dev
    yesno
    • KEEP

    intrepid-compare-stats

    • triggered by intrepid-etl-pipeine - NOT NEEDED ANYMORE ??
    • runs ansible/tasks/intrepid-compare-stats.yml in PROD
    • runs mvn on ETL hosts to create jarfile, then java -jar jarfile
    • compares count of items in the prod dr against the mirror
    nono
    • KEEP ??

    intrepid-compare-stats-etl

    • disabled, last run 2017 Nov 9th
    • DELETED on 2018-08-22
    • runs ansible/tasks/intrepid-compare-stats.yml in PROD, with DEVOPS_BASE=/datadrive/data/fayaz/master/devops
    nono
    • DELETE

    intrepid-extract-clean


    • runs ansible/tasks/intrepid-extract-clean.yml --limit 10.140.0.1 in PROD on ETL 
    • runs automatically
    • removes old files from /datadrive/data/intrepid
    no
    • midnight
    • daily
    • KEEP

    intrepid-reval-etl-dev

    • runs ansible/tasks/intrepid-reval-etl-all.yml in DEV
    nono
    • KEEP
    • parameterize??

    intrepid-reval-etl-stage
    • runs ansible/tasks/intrepid-reval-etl-all.yml in STAGE
    nono
    • KEEP
    • parameterize??

    intrepid-reval-etl-uidev
    • runs ansible/tasks/intrepid-reval-etl-all.yml in UIDEV
    nono
    • KEEP
    • parameterize??

    db-to-csv-parent

    yesno
    • KEEP

    intrepid-extract-docker

    • It is triggered by a push into TIS-DB-TO-CSV github repo
    • It can be triggered by db-to-csv-parent
    • It runs mvn clean install -e on TIS-DB-TO-CSV/db-to-csv pom.xml file
    • It runs ansible/tasks/spring-boot-build.yml in DEV on localhost
    • it runs mvn2docker to create an image named intrepid-extract
    • When FINALTAG is set, it deploys generic-upload into dev ????
    yesno
    • KEEP
    • use the pipeline instead or mvn2docker??

    intrepid-extract-upload

    • triggered by intrepid-etl-pipeine
    • compresses and uploads intrepid databases to azure blob storage ???
    • runs ansible/tasks/intrepid-extract-upload.yml in PROD on ETL hosts
    nono
    • KEEP
    • rename to *backup* ??
    • automate ??

    intrepid-extract-all-etl


    • uses export DEVOPS_BASE=/datadrive/data/fayaz/master/devops in PROD
    • last run 2017 November 9th
    • deploys docker image repository.tis.nhs.uk:5000/hee/intrepid-extract:{{ versions['intrepid-extract'] }}
    • extracts intrepid databases
    nono
    • DISABLE ??

    intrepid-schema-validation


    Code Block
    compares the schema csv exports daily to make sure that the structure hasn't changed.
    • watches intrepid-etl-pipeine as a trigger - REPLACE WITH new pipeline ??
    • runs ansible/tasks/intrepid-schema-validation.yml on Localhost
    • runs mvn on ETL hosts to create jarfile, then java -jar jarfile
    nono
    • KEEP
    • REPLACE WITH new pipeline ??

    intrepid-etl-pipeline-stage


    Code Block
    Runs the second part of the pipeline for intrepid-etl on the mirror stage
    Intrepid data anonymizer - takes data from ssh hee-build-azure -> /datadrive/data/intrepid/prod/ (full+delta) anonymises it then places it into /datadrive/data/intrepid/stage/ (full+delta)
    Intepid Load Mirror -> takes data from /datadrive/data/intrepid/stage/ , creates a delta file then loads it into mirror stage
    Intrepid revalidation stage -> the reval etl on stage
    • watches intrepid-etl-pipeine as a trigger
    • pipeline script from SCM
    • SCM: TIS-DEVOPS
    • script: jenkins/intrepid-etl-stage.groovy
    • jenkins/intrepid-etl-stage.groovy runs jenkins jobs intrepid-anonymizer, intrepid-load-stage, intrepid-reval-etl-stage
    nono
    • KEEP??
    • Replace with new pipeline ??

    intrepid-etl-pipeline-stage-new



    Code Block
    Runs the second part of the pipeline for intrepid-etl on the mirror stage
    Intrepid data anonymizer - takes data from ssh hee-build-azure -> /datadrive/data/intrepid/prod/ (full+delta) anonymises it then places it into /datadrive/data/intrepid/stage/ (full+delta)
    Intepid Load Mirror -> takes data from /datadrive/data/intrepid/stage/ , creates a delta file then loads it into mirror stage
    Intrepid revalidation stage -> the reval etl on stage
    • watches intrepid-etl-pipeine as a trigger
    • pipeline script from SCM
    • SCM: TIS-DEVOPS
    • script: jenkins/intrepid-etl-stage-new.groovy
    • jenkins/intrepid-etl-stage-new.groovy: runs ansible/tasks/intrepid-anonymizer-new.yml --extra-vars='intrepid_dr_settings=dr2 mirror_settings=mirror-stage batch_size=20 in DEV by default
    nono
    • KEEP ??
    • Replace with new pipeline ??

    intrepid-extract-upload-etl

    • disabled, last successful run 2017 Nov 9th
    • DELETED on 2018-08-22
    Code Block
    compresses and uploads intrepid databases in azure
    • runs ansible/tasks/intrepid-extract-upload.yml in PROD using DEVOPS_BASE=/datadrive/data/fayaz/master/devops
    nono 
    • DELETE ??

    intrepid-remapper-structure


    Code Block
    Remaps the Intrepid DR structure
    • runs ansible/tasks/intrepid-remapper-structure.yml with inventory=localhost on ETL hosts
    • runs mvn on ETL hosts to create jarfile, then java -jar jarfile
    nono
    • KEEP ??

    intrepid-extract-consolidated


    • runs ansible/tasks/intrepid-extract-consolidated.yml in PROD
    • ansible/tasks/intrepid-extract-consolidated.yml does not exist
    • last successfull run: 2017-07-23
    nono
    • DELETE ??

    intrepid-remapper-structure-etl


    • disabled, last run 2017 Nov 9th
    • DELETED on 2018-08-22
    • runs ansible/tasks/intrepid-remapper-structure.yml with DEVOPS_BASE=/datadrive/data/fayaz/master/devops
    nono
    • DELETE ??

    intrepid-reval-etltype-schema-env


    • runs ansible/tasks/intrepid-reval-etl-all.yml --extra-vars="etl_type=${ETLTYPE}"
    • ETLTYPE= <arcp|connectionDiscrepancies|contactDetails|placements|revalidation|selfDeclaration|traineeCard>
    • ansible/tasks/intrepid-reval-etl-all.yml deploys repository.tis.nhs.uk:5000/hee/intrepid-dr-etl:{{ versions['intrepid-reval-etl'] }}
    nono
    • KEEP

    test-intrepid-connection

    • disabled, last run 2017 March 13th
    • DELETED on 2018-08-22
    • runs /opt/mssql-tools/bin/sqlcmdsqlcmd  -S "TCP:212.250.207.206,4589" -U "TRANSFORM SYSTEM" -P "ed0hUbLT" -d "Intrepid.DataRepository" -Q "quit"
    nono
    • DELETE??






    Consolidated-DR-ETL

    consolidated-dr-etl-all-parameterised-dev

    • DISABLED
    • pipeline script from SCM
    • SCM: TIS-DEVOPS
    • script: jenkins/consolidated-dr-etl.groovy
    • jenkins/consolidated-dr-etl.groovy: runs ansible/tasks/consolidated-dr-etl-old.yml or ansible/tasks/consolidated-dr-etl-all.yml

    nono
    • DELETE ??

    consolidated-dr-etl-all-parameterised-dev-tisdev4305
    • disabled
    • DELETED on 2018-08-22

      Code Block
      This is to test a new parameter for consolidated-dr-etl-all-parameterised-dev 
      The new parameter is POST_PROGRAMME_STEP_ENABLED 
      We use a new branch named TISDEV-4305-POST_PROGRAMME_STEP_ENABLED of TIS-DEVOPS and a modified version of jenkins/consolidated-dr-etl.groovy
      


    nono
    • DELETE

    consolidated-dr-etl-all-parameterised-stage
    • collects lots of parameters
    • runs jenkins/consolidated-dr-etl.groovy
    • jenkins/consolidated-dr-etl.groovy: runs ansible/tasks/consolidated-dr-etl-old.yml or ansible/tasks/consolidated-dr-etl-all.yml
    • by default, ENVIRONMENT=prod
    nono
    • KEEP

    consolidated-dr-etl-all-parameterised-prod


    • collects lots of parameters
    • runs jenkins/consolidated-dr-etl.groovy
    • jenkins/consolidated-dr-etl.groovy: runs ansible/tasks/consolidated-dr-etl-old.yml or ansible/tasks/consolidated-dr-etl-all.yml
    • by default, ENVIRONMENT=prod
    no
    • 05h30
    • daily
    • KEEP

    consolidated-dr-etl

    • This is the main job for TIS-CONSOLIDATE-DR-ETL
    • It is triggered by a push into TIS-CONSOLIDATED-DR-ETL github repo
    • It creates the JAR and Docker image by running mvn2docker
    yesno
    • KEEP
    • use the pipeline instead of mvn2docker ??

    consolidated-dr-etl-old

    • This is the main job for intrepid-core-model
    • It is triggered by a push into TIS-CONSOLIDATED-DR-ETL-OLD github repo
    • It creates the JAR and Docker image by running mvn2docker
    yesno
    • KEEP
    • use the pipeline instead of mvn2docker ??

    consolidated-dr-etl-all-dev

    • runs ansible/tasks/consolidated-dr-etl-all.yml in DEV
    nono
    • KEEP

    consolidated-dr-etl-old-dev

    • runs ansible/tasks/consolidated-dr-etl-old.yml  --limit 10.150.0.137 in DEV 
    nono
    • KEEP

    consolidated-dr-etl-all-prod

    • runs ansible/tasks/consolidated-dr-etl-all.yml  in PROD
    • deploys repository.tis.nhs.uk:5000/hee/consolidated-dr-etl:{{ versions['consolidated-dr-etl'] }}
    nono
    • KEEP

    consolidated-dr-etl-old-prod


    Code Block
    NOTE THIS IS THE OLD CONSOLIDATED DR JOB
    nono
    • KEEP ??

    consolidated-dr-etl-all-stage

    • runs ansible/tasks/consolidated-dr-etl-all.yml  in STAGE
    • ansible/tasks/consolidated-dr-etl-all.yml: deploys repository.tis.nhs.uk:5000/hee/consolidated-dr-etl:{{ versions['consolidated-dr-etl'] }}
    nono
    • KEEP

    consolidated-dr-etl-all-uidev

    • runs ansible/tasks/consolidated-dr-etl-all.yml in UIDEV
    • ansible/tasks/consolidated-dr-etl-all.yml: deploys repository.tis.nhs.uk:5000/hee/consolidated-dr-etl:{{ versions['consolidated-dr-etl'] }}
    nono
    • KEEP

    consolidated-dr-etl-old-stage


    Code Block
    NOTE THIS IS THE OLD CONSOLIDATED DR JOB 
    https://github.com/Health-Education-England/TIS-CONSOLIDATED-DR-ETL-OLD 
    nono
    • KEEP ??

    consolidated-dr-etl-old-uidev
    nono
    • KEEP ??

    consolidated-dr-etl-schema-env
    • ANY environment
    • runs ansible/tasks/consolidated-dr-etl-all.yml --extra-vars="schema=${SCHEMA}"
    • deploys repository.tis.nhs.uk:5000/hee/consolidated-dr-etl:{{ versions['consolidated-dr-etl'] }}
    nono
    • KEEP

    consolidated-dr-etl-all-prod-etl
    • DISABLED
    • uses /datadrive/data/fayaz/master/devops to run ansible/tasks/consolidated-dr-etl-all.yml in PROD
    nono
    • DELETE ??






    Ansible

    ansible-cmd

    • runs /usr/local/bin/ansible -i /home/jenkins/data/devops/ansible/inventory/all -m setup --tree /datadrive/data/ansible-cmdb/ all
    • puts the result in /var/www/html/reports/ansible-cmdb
    no
    • 7h15
    • daily
    • KEEP






    Misc

    bdd_tests_staging

    folder /datadrive/data/jenkins/jobs/bdd_tests_staging/ exists but no job in jenkins
    nono
    • DELETE

    browserstack-cucumber
    • last run on Nov 29, 2016 5:57:22 PM
    • uses TIS-REVALIDATION repo
    • runs "npm install && gulp bs" in DEV ???
    • DISABLED on 2018-08-22
    nono
    • DELETE






    CIci-stagenono
    • DISABLE ??


    ci-stage-pipeline


    nono
    • DISABLE??

    ci-staging


    nono
    • DISABLE ??

    ci_test

    • uses TIS-REVALIDATION repo

    • Code Block
      export TIS_ENV=development
      export CHROME_DRIVER_HOME=/usr/bin/
      cd bdd
      mvn verify 


    • triggers release-tag jenkins job
    nono
    • DISABLE ??

    ci-tests-concerns


    • last run Feb 21, 2017 2:42:59 PM
    • uses TIS-CONCERNS git repo
    • runs "mvn verify"
    nono
    • DISABLE ??


    ci_tests_parallel



    • DISABLED
    • last run Sep 27, 2016 8:48:22 AM
    • uses TIS-REVALIDATIONS git repo
    • watches jenkins job revalidation-dev-deploy which does not exist
    nono
    • DELETE ??


    ci_tests_tagging



    • DISABLED
    • Never run
    • uses TIS-REVALIDATIONS git repo
    • runs selenium
    • triggers non existing git-tag jenkins job
    nono
    • DELETE ??








    csv-diff


    • uses db-to-csv git repo
    • runs ansible/tasks/spring-boot-build.yml ansible playbook with ARTIFACT_ID="intrepid-load"
    • ansible/tasks/spring-boot-build.yml runs mvn2docker
    • last run Nov 15, 2017 10:15:45 AM
    nono
    • KEEP ??

    csv-to-db

    • uses csv-to-db git repo
    • runs ansible/tasks/spring-boot-build.yml ansible playbook with ARTIFACT_ID="intrepid-load"
    • ansible/tasks/spring-boot-build.yml runs mvn2docker
    • last run Nov 15, 2017 10:15:45 AM
    nono
    • KEEP ??

    curator-docker

    • last run Apr 18, 2017 10:06:07 AM
    • Rebuilds the Curator docker Image
    • uses TIS-CURATOR git repo
    • runs /home/jenkins/data/devops/bin/docker-build-push.sh which runs docker build|push|tag|rmi
    nono
    • KEEP
    • rename to tis-curator ??

    db-to-csv


    • last run Nov 15, 2017 10:15:45 AM
    • uses db-to-csv git repo
    • runs ansible/tasks/spring-boot-build.yml ansible playbook with ARTIFACT_ID="intrepid-load"
    • ansible/tasks/spring-boot-build.yml runs mvn2docker
    yesno
    • KEEP ??

    db-to-csv-archive


    • DISABLED
    • uses db-to-csv git repo
    • last run Mar 16, 2017 12:54:04 PM
    nono
    • DELETE ??


    db-to-csv-parent



    yesno
    • KEEP ??

    db-to-csv-test-archive



    • DISABLED
    • last run Mar 20, 2017 1:51:27 PM
    • uses db-to-csv git repo
    • runs /tmp/fayaz/TIS-DEVOPS/ansible/tasks/spring-boot-build.yml
    nono
    • DELETE ??


    dev-api-load-test


    • never run
    • uses TIS-JMETER git repo
    • watches ci-staging
    • runs "./jmeter.sh -n -t load.jmx -l testresults.jtl"
    nono
    • DISABLE ??

    devops


    • uses TIS-DEVOPS git repo
    • runs python "${WORKSPACE}/ansible/inventory/tests.py"
    • and then runs rsync -av --delete "${WORKSPACE}/" --exclude ".git" /home/jenkins/data/devops/
    • and rsync -ave 'ssh' --delete "${WORKSPACE}/" --exclude ".git" $(/home/jenkins/data/devops/bin/ip etl-stage):/home/heetis/data/devops/
    yesno
    • KEEP
    • rename to tis-devops ??






    DOCKER

    docker-alpine-java



    • DISABLED
    • last run Dec 16, 2017 12:41:00 AM
    • uses docker-alpine-java git repo
    • runs /home/jenkins/data/devops/bin/docker-build-push.sh
    • /home/jenkins/data/devops/bin/docker-build-push.sh runs docker build|push|tag|rmi
    no
    • midnight
    • daily
    • DELETE ??

    docker-clean-build



    • DISABLED
    • last run Sep 26, 2017 12:15:06 PM

    • Code Block
      Runs regularly to tidy up stray docker artifacts such as "<none>" images, old stopped containers and anonymous volumes


    • uses BUILD ansible inventory
    • runs ansible/tasks/docker-clean.yml playbook
    • ansible/tasks/docker-clean.yml: runs docker system prune -af
    no
    • 23h00
    • friday
    • DELETE ??

    docker-clean-dev




    Code Block
    Runs regularly to tidy up stray docker artifacts such as "<none>" images, old stopped containers and anonymous volumes
    • uses DEV ansible inventory
    • runs ansible/tasks/docker-clean.yml playbook
    • ansible/tasks/docker-clean.yml: runs docker system prune -af
    no
    • 23h00
    • friday
    • KEEP

    docker-clean-prod



    • Code Block
      Runs regularly to tidy up stray docker artifacts such as "<none>" images, old stopped containers and anonymous volumes


    • uses PROD ansible inventory
    • runs ansible/tasks/docker-clean.yml playbook
    • ansible/tasks/docker-clean.yml: runs docker system prune -af
    no
    • 23h00
    • daily
    • KEEP


    docker-clean-stage





    • Code Block
      Runs regularly to tidy up stray docker artifacts such as "<none>" images, old stopped containers and anonymous volumes
      • uses STAGE ansible inventory
      • runs ansible/tasks/docker-clean.yml playbook
      • ansible/tasks/docker-clean.yml: runs docker system prune -af
    no
    • 23h00
    • daily
    • KEEP


    docker-clean-uidev





    Code Block
    Runs regularly to tidy up stray docker artifacts such as "<none>" images, old stopped containers and anonymous volumes
    • uses UIDEV ansible inventory
    • runs ansible/tasks/docker-clean.yml playbook
    • ansible/tasks/docker-clean.yml: runs docker system prune -af
    no
    • 23h00
    • daily
    • KEEP

    docker-freeze-dev


    Code Block
    Freezes docker images on a given platform
    • uses the DEV ansible inventory
    • runs ansible/tasks/docker-freeze.yml -vvv
    • ansible/tasks/docker-freeze.yml runs bin/docker-freeze.py --tag {{ platform }}"
    • bin/docker-freeze.py  runs docker push|tag
    nono
    • KEEP
    • paramaterize??

    docker-freeze-prod






    • Code Block
      Freezes docker images on a given platform


    • uses the PROD ansible inventory
    • runs ansible/tasks/docker-freeze.yml -vvv
    • ansible/tasks/docker-freeze.yml runs bin/docker-freeze.py --tag {{ platform }}"
    • bin/docker-freeze.py  runs docker push|tag
    nono
    • KEEP
    • parameterize??


    docker-registryui-cert-renew




    • DISABLED
    • last run Jun 11, 2017 6:06:00 AM

    • Code Block
      renew the jenkins cert


    • uses ansible DEV inventory
    • runs ansible/tasks/docker-registryui-cert-renew.yml ansible playbook
    • ansible/tasks/docker-registryui-cert-renew.yml
    no
    • 6h06
    • sunday
    • DELETE??

    docker-registry-ui-dev-deploy



    Code Block
    redeploys the docker-registry-ui docker container onto the docker-registry instance on port 5001
    • runs /home/jenkins/data/devops/bin/hee-recompose.sh
    • /home/jenkins/data/devops/bin/hee-recompose.sh runs ansible/revalidation.yml ansible code by default
    • last and unique run: Dec 21, 2016 2:07:54 PM
    nono
    • KEEP






    ELK

    elasticsearch-snapshot-dev

    • runs ansible/tasks/es_snapshot.yml ansible playbook
    • uses DEV inventory
    no
    • 23h00
    • daily
    • KEEP

    elasticsearch-snapshot-prod

    • runs ansible/tasks/es_snapshot.yml ansible playbook
    • uses PROD inventory
    no
    • 23h00
    • daily
    • KEEP

    elasticsearch-snapshot-stage

    • runs ansible/tasks/es_snapshot.yml ansible playbook
    • uses STAGE inventory
    no
    • 23h00
    • daily
    • KEEP







    final-services

    • last run Jun 1, 2017 2:52:59 PM

    • Code Block
      List of jobs/services to apply final tag. It should be comma and space separated and should be one or more from [common, concerns, gmc-connect, gmc-sync, inspectlet, new-core, notifications, profile, reference, revalidation, trainee-id, tcs]


    nono
    • KEEP ??






    GMC

    gmc_api_integration_tests


    nono
    • KEEP ??
    • rename ??


    gmc-connect


    yesno
    • KEEP ??

    gmc-sync


    yesno
    • KEEP

    gmc-sync-dev



    Code Block
    Runs the GMC ETL process on DEV
    • runs ansible/tasks/gmcsync.yml ansible code
    • uses DEV inventory
    • run only once on Mar 21, 2018 2:38:56 PM
    nono
    • KEEP ?


    gmcsync-etltype-schema-env





    • last run Oct 6, 2017 11:30:47 AM

    • Code Block
      Runs the Revalidation ETL process on targeted environment with etlType and schema


    • runs ```ansible/tasks/gmcsync.yml --extra-vars="schema=${SCHEMA} etl_type=${ETLTYPE}"```
    nono
    • KEEP


    gmc-sync-prod





    Code Block
    Runs the GMC ETL process on prod
    • runs  --limit=10.170.0.137 ansible/tasks/gmcsync.yml ansible playbook
    • uses PROD inventory
    no
    • 2h30
    • monday to friday
    • KEEP


    gmc-sync-stage


    • runs  ansible/tasks/gmcsync.yml ansible playbook
    • uses STAGE inventory
    nono
    • KEEP
    • parameterize??

    gmc-sync-uat


    • DISABLED
    • runs --limit=10.160.0.141 ansible/tasks/gmcsync.yml
    no
    • 2h30
    • monday to friday
    • KEEP
    • parameterize??








    hee-alpine-java-docker


    • watches docker-alpine-java, hee-alpine-jre
    • runs ```IMAGE=hee-alpine-java WORKSPACE=~/data/devops/docker/images/hee-alpine-java ~/data/devops/bin/docker-build-push.sh```
    • last run Jan 16, 2018 2:00:14 AM
    nono
    • DELETE ??


    hee-alpine-jre


    • NEVER run successfully
    • runs ```IMAGE=hee-alpine-jdk WORKSPACE=~/data/devops/docker/images/hee-alpine-jdk ~/data/devops/bin/docker-build-push.sh```
    no
    • midnight
    • daily
    • DELETE ??


    hee-alpine-nginx-docker





    Code Block
    Builds a docker image based on smebberson/alpine-nginx.
    • runs ```IMAGE=hee-alpine-nginx WORKSPACE=~/data/devops/docker/images/hee-alpine-nginx ~/data/devops/bin/docker-build-push.sh```
    • ~/data/devops/bin/docker-build-push.sh runs docker build|push|tag
    no
    • midnight
    • daily
    • KEEP??

    hee-alpine-npm-docker





    Code Block
    Builds a docker image based on mhart/alpine-node.
    • runs ```IMAGE=hee-alpine-npm WORKSPACE=~/data/devops/docker/images/hee-alpine-npm ~/data/devops/bin/docker-build-push.sh```
    • ~/data/devops/bin/docker-build-push.sh runs docker build|push|tag
    no
    • midnight
    • daily
    • KEEP??

    hee-grant-access



    Code Block
    Grant access to hee components(docker registry ui, maven repository, ssh).
    • runs ansible/tasks/hee-access.yml ansible playbook
    • uses ALL inventory
    nono
    • KEEP


    hee-revoke-access


    • runs ansible/tasks/hee-access.yml
    • uses ALL inventory

    • Code Block
      Revoke access to hee components(docker registry ui, maven repository, ssh)


    nono
    • KEEP







    iam


    • last run Sep 11, 2017 2:08:48 PM

    • Code Block
      Sample project to clone Java Library projects from.


    • uses TIS-IAM git repo
    • runs ```mvn clean install``
    yesno
    • KEEP??

    inspectlet


    nono
    • DISABLE ??

    java-library-base




    Code Block
    Sample project to clone Java Library projects from.
    yesno
    • DISABLE ??






    JENKINS

    jenkins-cert-renew


    • DISABLED
    • runs ansible/tasks/jenkins-cert-renew.yml
    • uses BUILD repo
    no
    • 6h06
    • saturdays
    • DELETE ??

    jenkins-dsl-seed



    • runs DSL code
    • buildMonitorView('Production ETLs')
    • buildMonitorView('Microservice builds')
    nono
    • KEEP ??







    jmxmp-agent


    yesno
    • KEEP
    • replace mvn2docker with pipeline ??






    KEYCLOAKkeycloak-client
    yesno
    • KEEP
    • replace mvn2docker with pipeline ??

    keycloak-db-sync


    yesno
    • KEEP ??
    • replace mvn2docker with pipeline ??

    keycloak-docker




    Code Block
    Rebuilds the customised Keycloak docker image.
    • uses TIS-KEYCLOAK-THEME git repo
    • runs ${WORKSPACE}/build.sh
    • and runs ansible/keycloak.yml with DEV inventory
    yesno
    • KEEP
    • rename to tis-keycloak-theme??







    lms


    • last run Dec 17, 2017 9:19:31 AM
    • uses TIS-MICROSERVICE-DESIGN git repo
    • runs the following

    • Code Block
      mvn -DskipTests clean package
      python ./bin/merge.py
      
      rsync -av --delete $WORKSPACE/swagger-ui/ /var/www/html/doc/lms/swagger-ui/
      rsync -av --delete $WORKSPACE/static/ /var/www/html/doc/lms/static/


    yesno
    • KEEP??

    london-dr-model



    • run ONCE on May 12, 2017 12:54:51 PM

    • Code Block
      Sample project to clone Java Library projects from.


    • uses TIS-LONDON-DR-MODEL git repo
    • runs ```mvn clean install``
    yesno
    • KEEP??

    managed-disks-snapshots



    • runs ansible/tasks/managed-disks-snapshot.yml
    • uses BUILD inventory
    • ansible/tasks/managed-disks-snapshot.yml runs ```az snapshot create```
    no
    • 21h00
    • daily
    • KEEP
    • Failed since May 5th

    maven-poms



    yesno
    • DISABLE ??

    monitoring-health-prod



    • runs ansible/tasks/monitoring-health.yml
    • uses PROD inventory
    • checks https://{{ server_name }}/alertmanager/api/v1/status
    no
    • every 5 minutes
    • KEEP

    mvn2docker


    • runs /home/jenkins/data/devops/bin/mvn2docker
    nono
    • KEEP
    • eventually DISABLE ??






    MYSQL

    mysql-backup-dev


    Code Block
    Create mysql backup on dev environment mysql instance
    • runs ansible/tasks/mysql-backup.yml
    • uses DEV inventory
    no
    • midnight
    • daily
    • KEEP

    mysql-backup-prod


    • runs ansible/tasks/mysql-backup.yml
    • uses PROD inventory
    no
    • midnight
    • daily
    • KEEP

    mysql-backup-stage

    • runs ansible/tasks/mysql-backup.yml
    • uses PROD inventory
    no
    • midnight
    • daily
    • KEEP

    mysql-dev-deploy

    • last run Oct 6, 2016 1:20:09 PM
    • runs ansible/mysql.yml which does not exit
    • uses AZURE inventory which does not exist
    nono
    • DELETE??







    n3-bridge

    • last successful run Oct 8, 2017 4:58:54 PM
    • runs ansible/n3-bridge.yml
    • uses SHARED inventory
    nono
    • KEEP
    • test ??






    NODE

    node2docker


    Code Block
    Builds a docker container from node front-end/package.json
    • runs /home/jenkins/data/devops/bin/node2docker
    nono
    • KEEP
    • eventually DISABLE??






    ORIEL

    oriel-etl


    Code Block
    Sample project to clone Java Library projects from.
    yesno
    • KEEP??

    oriel-etl-dev


    • NEVER run

    • Code Block
      Runs the oriel etl


    • runs ansible playbook ansible/tasks/oriel-etl.yml
    • uses DEV inventory
    • ansible/tasks/oriel-etl.yml deploys repository.tis.nhs.uk:5000/hee/oriel-etl:{{ versions['oriel-etl'] }}
    nono
    • DISABLE??






    OWASP


    owasp-dependency-check



    • last run Oct 30, 2016 4:53:38 PM
    • uses TIS-REVALIDATION git repo
    • runs

      Code Block
      npm install
      bower install
      mvn clean install
      cd bdd
      npm install
      cd ..


    nono
    • KEEP??

    owasp_zap


    nono
    • DISABLE ??








    person-owner-post-view-rebuild




    Code Block
    Runs the person-owner and post-view rebuild nightly.
    • runs ansible/tasks/person-owner-rebuild.yml
    • uses PROD inventory
    no
    • 7h30
    • daily
    • KEEP


    piwik-docker



    • last run Dec 8, 2016 4:44:29 PM
    • uses docker-piwik git repo
    • runs bin/docker-build-push.sh
    • bin/docker-build-push.sh which is a wrapper around docker build|push|tag
    nono
    • DISABLE ??


    postgresql-backup-build



    • DISABLED
    • last run Sep 23, 2017 2:18:00 AM
    • DELETED on 2018-08-22

      Code Block
      Create postgresql backup on build environment postgresql instance


    • runs ansbile playbook ansible/tasks/postgres-backup.yml
    • uses BUILD inventory
    • ansible/tasks/postgres-backup.yml runs "pg_dumpall" and "azure storage blob upload"
    no
    • midnight
    • daily
    • DELETE ??


    registry-clone




    • last run Nov 22, 2017 10:29:02 AM

    • Code Block
      Copies the current docker-registry into azure container registry


    • runs /home/jenkins/data/devops/bin/registry-clone.sh
    • /home/jenkins/data/devops/bin/registry-clone.sh runs "docker pull|tag|push"
    nono
    • DISABLE ??






    RELEASE


    release-dev



    • run ONCE only Nov 14, 2017 10:54:23 AM

    • Code Block
      TIS-Release deployment in blue-green mode


    • uses /datadrive/data/fayaz/es/TIS-DEVOPS
    • runs various ansible playbooks
    nono

    release-dev-pipeline


    • runs a pipeline script which runs ansible/api-gateway.yml and ansible/releases/<RELEASENB>/main.yml
    nonoKEEP

    release-prod


    • DISABLED
    • last run Nov 13, 2017 11:15:51 AM
    • runs ansible/releases/<RELEASENB>/main.yml
    • uses PROD inventory
    nono
    • DELETE ??

    release-prod-pipeline


    • runs a pipeline script which runs ansible/api-gateway.yml and ansible/releases/<RELEASENB>/main.yml
    • uses PROD inventory
    nono
    • KEEP

    release-sandbox-pipeline


    • runs a pipeline script which runs ansible/api-gateway.yml and ansible/releases/<RELEASENB>/main.yml
    • uses SANDBOX inventory
    nono
    • KEEP ??

    release-stage-pipeline


    • runs a pipeline script which runs ansible/api-gateway.yml and ansible/releases/<RELEASENB>/main.yml
    • uses STAGE inventory
    nono
    • KEEP

    release-tag


    • runs jenkins git publisher plugin to tag the repo
    nono
    • KEEP ??


    release-uat-pipeline


    • runs ansible/releases/${RELEASE_NUMBER}/main.yml
    • uses UAT inventory
    nono
    • KEEP






    SANDBOX

    Sandbox-Down


    • runs a bunch of ```az vm stop ``` commands
    no
    • 7pm
    • Monday to friday
    • KEEP


    Sandbox-up



    • uns a bunch of ```az vm start ``` commands
    no
    • 6h30
    • Monday to friday
    • KEEP






    SERVICE


    service-docker


    • never run
    • takes a repo name and runs bin/docker-build-push.sh
    • bin/docker-build-push.sh is a warpper around "docker pull|push|tag"
    • triggers service-env-deploy 
    nono
    • DISABLE ??

    service-env-deploy


    • runs ansible/${SERVICE}.yml
    • uses ansible/inventory/${ENVIRONMENT} inventory
    nono
    • KEEP

    service-final-tag


    • runs a shell script defined in jenkins
    • shell script is a wrapper around "docker pull|tag|push|rmi"
    • last run Mar 6, 2017 8:24:10 AM
    nono
    • DISABLE ??

    service-pipeline-adminsui


    • never run
    • testing a new way of using the service-pipeline
    • To be DELETED
    • DELETED
    nono
    • DELETE


    service-pipeline-bkp



    • DISABLED
    • pipeline script
    • copy and paste of service-pipeline.groovy ????
    nono
    • DELETE ??


    service-pipeline-ndw-etl


    • DISABLED
    • uses a custom pipeline script jenkins/service-pipeline-ndw-etl.groovy
    • To be DELETED
    • DELETED
    nono
    • DELETE

    service-pipeline-scm


    • runs a pipeline script for SCM Jenkinsfile
    • uses TIS-JENKINS git repo
    nono
    • KEEP
    • will replace service-pipeline??

    service-registry


    • runs ansible/tasks/host-registry.yml
    • uses DEV, STAGE and PROD inventory
    no
    • every 5 minutes
    • KEEP

    service-test


    nono
    • KEEP ??






    SITE

    site-dev



    • Code Block
      Rebuild DEV


    • runs ansible playbook ansible/site.yml
    • uses DEV ansible inventory
    • FAILED since April 19th
    no
    • midnight
    • daily
    • KEEP
    • Failed for 2 months

    site-dev3


    • last run Nov 21, 2016 4:00:51 PM
    • runs ansible playbook ansible/site.yml
    • uses DEV3 ansible inventory
    nono
    • DISABLE

    site-prod


    • last run Oct 5, 2017 7:11:53 AM
    • runs ansible playbook ansible/site.yml
    • uses PROD ansible inventory
    nono
    • KEEP
    • test??

    site-stage


    • runs ansible playbook ansible/site.yml
    • uses STAGE ansible inventory
    nono
    • KEEP

    site-uidev


    • runs ansible/platform-services.yml and ansible/uidevservices.yml
    • uses UIDEV ansible inventory
    nono
    • KEEP
    • Test??







    sonarqube


    • last run Oct 5, 2016 11:01:42 AM
    • runs

      Code Block
      docker stop sonarqube || true
      docker rm sonarqube || true
      docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 sonarqube


    nono
    • DISABLE ??

    ssh


    • runs ansible/tasks/ssh.yml
    • uses ansible inventory BASTION, DEV, UIDEV, STAGE, PROD
    nono
    • KEEP

    staging-api-load-test


    • last run Dec 14, 2016 4:17:24 PM
    • uses  TIS-JMETER git repo
    • watches ci-staging jenkins job
    • runs

      Code Block
      cd bin
      ./jmeter.sh -n -t load.jmx -l testresults.jtl


    • publishes bin/testresults.jtl;bin/jmeter.log


    • DISABLE ??

    terraform-etl


    • runs a pipeline script
    • pipeline runs ansible/tasks/terraform-etl.yml with different tags
    nono
    • DISABLE ??

    test-intrepid-connection

    • DISABLED
    • runs

      Code Block
      /opt/mssql-tools/bin/sqlcmd -S "TCP:212.250.207.206,4589" -U "TRANSFORM SYSTEM" -P "ed0hUbLT" -d "Intrepid.DataRepository" -Q "quit"

      DELETED on 2018-08-22


    • every 15 minutes
    • between 0h00 and 8h00
    • DELETE ??

    test-service-pipeline


    • last run Oct 19, 2017 6:54:58 PM
    • runs a pipeline script
    • pipeline script very similar to service-pipeline.groovy
    nono
    • DISABLE ??


    tis-core-model


    • run twice, last was May 26, 2017 2:15:36 PM
    • uses TIS-CORE-MODEL git repo
    • runs mvn

      Code Block
      clean install -e


    yesno
    • DISABLE ??

    tis-core-services


    • last run Apr 1, 2017 12:29:24 PM

    • Code Block
      tis-core-services including the UI


    • uses TIS-CORE-SERVICES git repo
    • runs mvn

      Code Block
      -Pprod clean package


    • then

      Code Block
      yarn install
      yarn prod


    • then

      Code Block
      export DEVOPS_BASE=/tmp/fayaz/master/TIS-DEVOPS
      export UI_PORT=9093
      ansible-playbook -i ${DEVOPS_BASE}/ansible/inventory/dev2 /tmp/fayaz/master/TIS-DEVOPS/ansible/tasks/spring-boot-build.yml


    • and archives the result in **/target/*.war
    yesno
    • DISABLE ??

    tis-shared-modules



    • Code Block
      common modules to be shared across different services.


    • uses TIS-SHARED-MODULES git repo
    • runs mvn

      Code Block
      clean install -e


    • then archives the result in **/target/*.jar
    yesno
    • KEEP

    uat-sync-from-prod



    • Code Block
      Job to sync UAT with the production environment


    • runs ansible/uat.yml ansible playbook
    no
    • 6am
    • daily
    • KEEP
    • Rename ??

    ubuntu-security-updates


    • DISABLED
    • last run Oct 5, 2017 9:10:01 AM

    • Code Block
      Runs regularly to update ubuntu images


    • runs ansible/tasks/ubuntu-security-updates.yml playbook
    • uses DEV inventory
    nono
    • DELETE ??

    ui-pipeline


    • run once on Oct 19, 2017 1:08:22 PM
    • runs a pipeline script
    • pipeline script similar to service-pipeline.groovy
    nono
    • DISABLE ??

    ...