Pasos para construir un entorno de desarrollo integrado automatizado de jenkins, blanco puro

1. ¿Por qué necesita un entorno de desarrollo integrado automatizado de jenkins?

      trasfondo de la historia:

        En el proceso de separar los extremos delantero y trasero, cuando los extremos delantero y trasero se depuran y comunican conjuntamente, el personal del back-end necesita empaquetar e implementar el código en el servidor de prueba una vez que se completa el desarrollo. Este proceso hará que el personal de back-end afecte la eficiencia general porque la velocidad de actualización del código es demasiado lenta. Este comportamiento no cumple con las cuatro ventajas básicas de los programadores.

        La solución de desarrollo integrado automatizado de jenkins existe desde hace mucho tiempo. Permite que el personal de back-end envíe el código svn sin prestar atención a una serie de problemas, como el empaquetado y la implementación. El personal de front-end puede obtener el entorno de prueba más reciente, mejorando así eficiencia del desarrollo.

2. Cómo implementar jenkins.

       2.1 Un servidor (sistema Windows/Linux) con JDK/Maven/Tomcat instalado

       2.2 Descargue el último paquete de guerra del sitio web oficial de jenkins, cópielo en las aplicaciones web de tomcat e inicie tomcat.

                apache-tomcat-xxx/bin/startup.bat

               Dirección de descarga del disco en la nube:

                  Enlace: https://pan.baidu.com/s/1nyrIOfHjCdBMELFcdL7k4g 
                 Código de extracción: hvog 

       2.3 Visite http://localhost/8080/jenkins/ con un navegador y siga los pasos para instalar jenkins. 

               Ruta de contraseña predeterminada /root/.jenkins/secrets/initialAdminPassword

       2.4 Después de iniciar sesión en jenkins, haga clic en Administrar Jenkins Configure la información relacionada.

 

                 configuración de seguridad:

           Configuración de la herramienta global de implementación:

        

                Administrador de complementos (complementos de instalación):

                Complemento de Subversion      /     Complemento de implementación en contenedor

 

                La configuración básica ahora está completa. 

        2.5 Cree un nuevo elemento => Complete el nombre del proyecto, seleccione el proyecto de estilo libre y salte a la siguiente interfaz después de confirmar:

                Gestión del código fuente: seleccione Subversion, complete la dirección de descarga del código fuente svn y la contraseña de la cuenta svn, otros son predeterminados.

                Desencadenador de compilación: seleccione Compilación remota. Complete el valor del token (debe ser una cadena de token en este momento, no una dirección)

                La dirección de acceso específica es: http://ip:port/jenkins/job/project/build?token=xxx

                Entorno de compilación: seleccione la versión maven, use una instalación limpia para compilar el proyecto

        

                Acciones posteriores a la construcción:

               

tomcat necesita poder acceder a ManagerApp a través de un navegador.

Tomcat 9 solo permite el acceso local, que se puede modificar a través de {tomcat webapps path}/manager/META-INF/context.xml 

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|\d+\.\d+\.\d+\.\d+" />
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

 Establecer conf/tomcat-users.xml de tomcat

  <role rolename="tomcat" />
  <role rolename="manager-gui"/>
  <user username="账号" password="密码" roles="tomcat,manager-gui"/>

  En este momento, si no puede cargar el paquete war a través del navegador, debería ser un problema entre dominios de tomcat 9, solo necesita cerrar la sesión {tomcat webapps path}/manger/WEB-INF/web. xml

<!--
  <security-constraint>
    <web-resource-collection>
      <web-resource-name>HTML Manager interface (for humans)</web-resource-name>
      <url-pattern>/html/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
       <role-name>manager-gui</role-name>
    </auth-constraint>
  </security-constraint>
  <security-constraint>
    <web-resource-collection>
      <web-resource-name>Text Manager interface (for scripts)</web-resource-name>
      <url-pattern>/text/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
       <role-name>manager-script</role-name>
    </auth-constraint>
  </security-constraint>
  <security-constraint>
    <web-resource-collection>
      <web-resource-name>JMX Proxy interface</web-resource-name>
      <url-pattern>/jmxproxy/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
       <role-name>manager-jmx</role-name>
    </auth-constraint>
  </security-constraint>
  <security-constraint>
    <web-resource-collection>
      <web-resource-name>Status interface</web-resource-name>
      <url-pattern>/status/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
       <role-name>manager-gui</role-name>
       <role-name>manager-script</role-name>
       <role-name>manager-jmx</role-name>
       <role-name>manager-status</role-name>
    </auth-constraint>
  </security-constraint>
  -->

    Cancele el código anterior, pero generará inseguridad. Considere otras soluciones por su cuenta. 

Una vez completada la configuración anterior, haga clic en Build Now y jenkins extraerá el código más reciente del servicio svn, lo empaquetará, lo ejecutará y lo publicará en Tomcat. 

3. Cómo escribir la función de gancho svn. (bajo el entorno de la ventana)

        En este punto, tenemos una ruta que activa a jenkins para empaquetar automáticamente a través de una dirección de acceso externa. Consulte 2.5 para la configuración. 

        ¿Cómo activar automáticamente la implementación del paquete jenkins después del envío en el servidor de Windows? ?

        A continuación, necesitamos una función de gancho.

        3.1 Abra la carpeta Repositorios/codebase/hooks del svn del lado del servidor.

               Hay una serie de archivos en esta carpeta. Copiamos el archivo post-commit.tmpl y lo renombramos a archivo post-commit.bat.

                Comente el código original en *.bat En este momento, el sistema Windows del servidor necesita un conjunto de herramientas llamado curl.

                Enlace: https://pan.baidu.com/s/1VB1Bjmd_w9zTBWNrwQV_9w 
                Código de extracción: tqyw 

               Modifique el contenido del archivo .bat para:

               

{Curl解压存放位置}\bin\curl.exe -X post -v -u  {jenkins账号}:{jenkins密码}  http://{服务器IP地址}:{端口号}/jenkins/job/{jenkins的项目名}/build?token={自定义的token值}

El {} anterior y los contenidos incluidos en el mismo serán reemplazados por usted mismo.               

En este punto, nuestra función de gancho ha sido editada. Puede probar si tiene éxito!

Supongo que te gusta

Origin blog.csdn.net/weixin_59128282/article/details/120089190
Recomendado
Clasificación