IT AWS

Integración continua 

Meridian Group

Integración continua

  • CodeDeploy
  • CodePipeline

CodeDeploy Arquitectura

Tomado de: http://docs.aws.amazon.com/es_es/codedeploy/latest/userguide/images/sds_architecture.png

Control central - consola AWS

Despliegue de versión

Configuración de despliegue

version: 0.0
os: linux
files:
  - source: /
    destination: /home/ubuntu/DataVizServer

# If you are deploying to Windows Server instances,
#   then remove the
#   "permissions" section altogether. A blank or incomplete "permissions"
#   section may cause associated deployments to fail.
#permissions:
#  - object:
#    pattern:
#    except:
#    owner:
#    group:
#    mode:
#    acls:

# If you are not running any commands on the instance, then remove
#   the "hooks" section altogether. A blank or incomplete "hooks" section
#   may cause associated deployments to fail.
hooks:


  BeforeInstall:
    - location: scripts_deploy/install_nodejs.sh
      timeout: 300
      runas: root

  ApplicationStop:
    - location: scripts_deploy/stop_server.sh
      timeout: 300
      runas: root

  AfterInstall:
    - location: scripts_deploy/install_dependencies.sh
      timeout: 300
      runas: root

  ApplicationStart:
    - location: scripts_deploy/start_server.sh
      timeout: 900
      runas: root

#  ValidateService:
#    - location:
#      timeout:

Permisos del rol

{
  "Version": "2008-10-17",
  "Statement": [
    {
      "Sid": "1",
      "Effect": "Allow",
      "Principal": {
        "Service": "codedeploy.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

Plan ejecutado

  • Despliegue de proyecto DTM DataVizServer
  • Despliegue de proyectos generación de datos DTM
  • Scripts de automatización sobre repositorio Github
  • Se necesitan definir las dependencias del proyecto
  • Pruebas sobre AWS DTM de CodeDeploy

CodePipeline

Flujo de trabajo

Tomado de: https://d0.awsstatic.com/product-marketing/CodePipeline/CodePipeline_Workflow.png

Plan de acción

  • Canalización con AWS Pipeline.

 

 

  • Asociar origen del codigo (AWS-S3 y Github)

 

Plan de acción

  • Asociar Jenkins (Build). SVN del proyecto

 

 

 

 

  • Asociar Rol de AWS Pipeline (AIM).

 

 

 

 

Plan de acción

  • Asociar forma de despliegue (CodeDeploy ya probado)

 

 

 

 

Plan de acción

  • Asociar herramientas de pruebas automaticas

Imágenes tomadas:

  • https://d0.awsstatic.com/product-marketing/CodePipeline/Partners/apica.png
  • https://d0.awsstatic.com/product-marketing/CodePipeline/Partners/runscope.png
  • https://d0.awsstatic.com/product-marketing/CodePipeline/Partners/blazemeter.png
  • https://d0.awsstatic.com/product-marketing/CodePipeline/Partners/ghostinspector.png

Plan Ejecutado

  • Proyecto asociado con Jenkins (SVN Meridian- NIVOTracking)
  • Jenkins creado con docker (Facil instalación - falta crear acciones)
Made with Slides.com