Project

General

Profile

Actions

Task #38

open

Feature #23: Stablish standards and practices to enhance DevOps CI/CD processes.

Create a muti-topic branch CMS_IntegrationTest Jenkins Pipeline

Added by Fernando Jose Capeletto Neto over 1 year ago. Updated over 1 year ago.

Status:
In Progress
Priority:
Normal
Start date:
04/06/2023
Due date:
04/25/2023 (about 17 months late)
% Done:

50%

Estimated time:
32:00 h
Spent time:

Description

Create a muti-topic branch CMS_IntegrationTest Jenkins Pipeline w/ steps:
- a) For TrackHandler: Test - Build - Create Docker Img (Tagged with '1.0-SNAPSHOT', using 'integration-test' spring boot profile, transient to be deleted after test)
- b) For CMSDisplay: Test - Build - Create Docker Img (Tagged with '1.0-SNAPSHOT', pointing to TrackHandler port exposed in the spring boot profile above, the image is also transient to be deleted after the test)
- c) Using a dedicated docker-compose file enclosing both CMS microservices, including a test DB instance with its admin, and start a Cloud Instance over this docker-compose to test the snapshot(s).
- d) The pipeline shall allow specifying the branch for each service.
- e) Document in the CMS wiki the environment vars and profiles used to distinguish from production (Kafka, Rabbit, exposed ports)

= Preliminar Stage =

The following docker-compose file is being used for how:

version: '3'

services:
        cmsdisplay-test:
            container_name: cmsdisplay-integrationtests
            image: fjcapeletto/cmsdisplay:snapshot
            ports:
                - "2983:80" 
            depends_on:
                - trackhandler-test

        trackhandler-test:
            container_name: trackhandler-integrationtests
            image: fjcapeletto/trackhandler:snapshot
            environment:
                - SPRING_PROFILES_ACTIVE=integrationtests
            ports:
                - "2977:2977" 
            depends_on:
                - th-psql-test

        th-psql-test:
            container_name: trackhandlerdb-integrationtests-psql
            image: postgres
            restart: unless-stopped
            environment:
                - POSTGRES_USER=postgres
                - POSTGRES_PASSWORD=trackhandlerpwd
                - POSTGRES_DB=trackhandlerdb
            ports:
                - "6432:5432" 
            volumes:
                - trackhandlertest_db:/var/lib/postgresql
                - postgresql_datatest:/var/lib/postgresql/data

        pgadmin-test:
            container_name: trackhandlerpgadmin-integrationtests
            image: dpage/pgadmin4
            restart: always
            environment:
                PGADMIN_DEFAULT_EMAIL: admin@admin.com
                PGADMIN_DEFAULT_PASSWORD: root
            ports:
                - "6051:80" 

volumes:
    trackhandlertest_db: {}
    postgresql_datatest: {}

Missing * Configure the deployment on cloud.
Actions #1

Updated by Fernando Jose Capeletto Neto over 1 year ago

  • Description updated (diff)
Actions #2

Updated by Fernando Jose Capeletto Neto over 1 year ago

  • Due date set to 04/25/2023
  • Estimated time set to 32:00 h
Actions #3

Updated by Fernando Jose Capeletto Neto over 1 year ago

  • Start date deleted (04/05/2023)
Actions #4

Updated by Fernando Jose Capeletto Neto over 1 year ago

  • Status changed from New to In Progress
  • Assignee set to Fernando Jose Capeletto Neto
  • Start date set to 04/06/2023
  • % Done changed from 0 to 10
Actions #5

Updated by Fernando Jose Capeletto Neto over 1 year ago

  • Description updated (diff)
  • % Done changed from 10 to 30
Actions #6

Updated by Fernando Jose Capeletto Neto over 1 year ago

  • Description updated (diff)
  • % Done changed from 30 to 40
Actions #7

Updated by Fernando Jose Capeletto Neto over 1 year ago

  • Description updated (diff)
Actions #8

Updated by Fernando Jose Capeletto Neto over 1 year ago

  • Description updated (diff)
  • % Done changed from 40 to 50
Actions

Also available in: Atom PDF