Paso 2: Crear una revisión de aplicación de ejemplo - AWS CodeDeploy

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Paso 2: Crear una revisión de aplicación de ejemplo

En este paso, creará una revisión de aplicación de ejemplo para implementarla en la instancia en las instalaciones.

Dado que es difícil conocer el software y las características que ya están instalados -o que las políticas de su organización permiten instalar- en la instancia en las instalaciones, la revisión de aplicación de ejemplo que incluimos aquí usa simplemente scripts por lotes (en Windows Server) o scripts de intérpretes de comandos (en Ubuntu Server y RHEL) para escribir archivos de texto en una ubicación de la instancia en las instalaciones. Se escribe un archivo en cada uno de los eventos del ciclo de vida de la implementación de CodeDeploy, como Install, AfterInstall, ApplicationStart y ValidateService. Durante el evento BeforeInstall del ciclo de vida de la implementación se ejecutará un script para eliminar los archivos antiguos escritos en las implementaciones anteriores de este ejemplo y crear una ubicación en la instancia on-premises en la que escribir los archivos nuevos.

nota

La implementación de la revisión de aplicación de ejemplo puede fallar si se da cualquiera de las siguientes circunstancias:

  • El usuario que inicia el agente de CodeDeploy en la instancia en las instalaciones no tiene permiso para ejecutar scripts.

  • El usuario no tiene permiso para crear o eliminar carpetas en las ubicaciones indicadas en los scripts.

  • El usuario no tiene permiso para crear archivos de texto en las ubicaciones indicadas en los scripts.

nota

Si ha configurado una instancia de Windows Server y desea implementar un ejemplo diferente, puede ser conveniente usar el indicado en Paso 2: Configurar el contenido de origen para implementarlo en la instancia de Amazon EC2 de Windows Server en el tutorial Tutorial: Implementación de una aplicación "Hello, World!" aplicación con CodeDeploy (Windows Server).

Si ha configurado una instancia de RHEL y desea implementar un ejemplo diferente, puede ser conveniente usar el indicado en Paso 2: Configurar el contenido fuente para implementarlo en la instancia de Amazon EC2 de Amazon Linux o Red Hat Enterprise Linux en el tutorial Tutorial: Implementación de WordPress en una instancia de Amazon EC2 (Amazon Linux o Red Hat Enterprise Linux y Linux, macOS o Unix).

En la actualidad, no hay ningún ejemplo alternativo para Ubuntu Server.

  1. En el equipo de desarrollo, cree un subdirectorio (subcarpeta) con el nombre CodeDeployDemo-OnPrem para almacenar los archivos de la revisión de aplicación de ejemplo y, a continuación, sitúese en esa subcarpeta. En este ejemplo, supondremos que va a utilizar la carpeta c:\temp como la carpeta raíz para Windows Server o la carpeta /tmp como la carpeta raíz para Ubuntu Server y RHEL. Si utiliza una carpeta diferente, asegúrese de indicarla en lugar de la anterior en todo el tutorial:

    Para Windows:

    mkdir c:\temp\CodeDeployDemo-OnPrem cd c:\temp\CodeDeployDemo-OnPrem

    Para Linux, macOS o Unix:

    mkdir /tmp/CodeDeployDemo-OnPrem cd /tmp/CodeDeployDemo-OnPrem
  2. En la raíz de la subcarpeta CodeDeployDemo-OnPrem, utilice en editor de texto para crear dos archivos con los nombres appspec.yml e install.txt:

    appspec.yml para Windows Server:

    version: 0.0 os: windows files: - source: .\install.txt destination: c:\temp\CodeDeployExample hooks: BeforeInstall: - location: .\scripts\before-install.bat timeout: 900 AfterInstall: - location: .\scripts\after-install.bat timeout: 900 ApplicationStart: - location: .\scripts\application-start.bat timeout: 900 ValidateService: - location: .\scripts\validate-service.bat timeout: 900

    appspec.yml para Ubuntu Server y RHEL:

    version: 0.0 os: linux files: - source: ./install.txt destination: /tmp/CodeDeployExample hooks: BeforeInstall: - location: ./scripts/before-install.sh timeout: 900 AfterInstall: - location: ./scripts/after-install.sh timeout: 900 ApplicationStart: - location: ./scripts/application-start.sh timeout: 900 ValidateService: - location: ./scripts/validate-service.sh timeout: 900

    Para obtener más información acerca de los archivos de AppSpec, consulte Adición de un archivo de especificación de aplicación a una revisión para CodeDeploy y CodeDeploy AppSpec referencia de archivo.

    install.txt:

    The Install deployment lifecycle event successfully completed.
  3. En la raíz de la subcarpeta CodeDeployDemo-OnPrem, cree una subcarpeta scripts y sitúese en ella:

    Para Windows:

    mkdir c:\temp\CodeDeployDemo-OnPrem\scripts cd c:\temp\CodeDeployDemo-OnPrem\scripts

    Para Linux, macOS o Unix:

    mkdir -p /tmp/CodeDeployDemo-OnPrem/scripts cd /tmp/CodeDeployDemo-OnPrem/scripts
  4. En la raíz de la subcarpeta scripts, utilice un editor de texto para crear cuatro archivos con los nombres before-install.bat, after-install.bat, application-start.bat y validate-service.bat para Windows Server, o before-install.sh, after-install.sh, application-start.sh y validate-service.sh para Ubuntu Server y RHEL:

    Para Windows Server:

    before-install.bat:

    set FOLDER=%HOMEDRIVE%\temp\CodeDeployExample if exist %FOLDER% ( rd /s /q "%FOLDER%" ) mkdir %FOLDER%

    after-install.bat:

    cd %HOMEDRIVE%\temp\CodeDeployExample echo The AfterInstall deployment lifecycle event successfully completed. > after-install.txt

    application-start.bat:

    cd %HOMEDRIVE%\temp\CodeDeployExample echo The ApplicationStart deployment lifecycle event successfully completed. > application-start.txt

    validate-service.bat:

    cd %HOMEDRIVE%\temp\CodeDeployExample echo The ValidateService deployment lifecycle event successfully completed. > validate-service.txt

    Para Ubuntu Server y RHEL:

    before-install.sh:

    #!/bin/bash export FOLDER=/tmp/CodeDeployExample if [ -d $FOLDER ] then rm -rf $FOLDER fi mkdir -p $FOLDER

    after-install.sh:

    #!/bin/bash cd /tmp/CodeDeployExample echo "The AfterInstall deployment lifecycle event successfully completed." > after-install.txt

    application-start.sh:

    #!/bin/bash cd /tmp/CodeDeployExample echo "The ApplicationStart deployment lifecycle event successfully completed." > application-start.txt

    validate-service.sh:

    #!/bin/bash cd /tmp/CodeDeployExample echo "The ValidateService deployment lifecycle event successfully completed." > validate-service.txt unset FOLDER
  5. Solo para Ubuntu Server y RHEL, asegúrese de que los cuatro scripts de intérpretes de comandos tengan permisos de ejecución:

    chmod +x ./scripts/*