Jenkins crea una implementación y un uso integrados

Instalación de Jenkins

Dirección de descarga: https://jenkins.io/zh/
Documento de instalación: https://jenkins.io/zh/doc/pipeline/tour/getting-started/
Siga la recomendación predeterminada para completar la instalación.

Complementos y configuración global

configuración jdk configuración
android sdk configuración
android ndk configuración
gradle configuración
git

No diré más sobre estos, debería estar disponible localmente y debe instalarlo si lo implementa en un servidor remoto.

Instalar el complemento de Jenkins
Administrar Jenkins >> Administrar complementos

Busque e instale el complemento de Git (almacén remoto)
busque e instale el complemento de Git Parameter (configuración seleccione la rama de compilación)
busque e instale el complemento de Gradle (herramienta de compilación de Android)
busque e instale el complemento del complemento de establecimiento de descripción (agregue la descripción después de la compilación)
descargue e instale el complemento fir (cargue automáticamente el apk a fir plataforma)
También puede buscar y descargar el complemento directamente en https://plugins.jenkins.io/, y luego cargar el archivo hpi en la administración de complementos de Jenkins.

Jenkins-Manage Jenkins-Confogure System-Find global properties
Configure su propio entorno Gradle No lo configuré, pero marque Forzar GRADLE_USER_HOME para usar el espacio de trabajo en la configuración específica del proyecto
Inserte la descripción de la imagen aquí

Crear tarea de Jenkins

Crear tarea

Haga clic en "Nuevo elemento", e ingrese el nombre de la tarea (ejemplo: autoapk) para crear un nuevo proyecto de estilo libre (proyecto estilo libre)
Haga clic en Nuevo elemento
Ingrese un nombre para crear un nuevo proyecto de estilo libre
seguido de la descripción de la tarea, seleccione la cuarta casilla de verificación este proyecto está parametrizado Haga clic en "Agregar parámetro", puede ver muchos La mayoría de las opciones que usamos son el parámetro de elección (parámetro opcional), el parámetro git (esta opción necesita instalar el complemento Git Parameter Plug-In), el primer parámetro opcional que completamos en el entorno empaquetado BUILD_TYPE, la opción la proporcionamos nosotros La descripción de la opción ya es muy clara.
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Para el segundo parámetro opcional elegimos la plataforma de empaquetado (estamos empaquetando paquetes con diferentes firmas para tabletas de diferentes fabricantes), en cuanto a cómo obtener este valor en nuestro proyecto, necesitamos configurar una PLATAFORMA con el mismo nombre en gradle.properties
Inserte la descripción de la imagen aquí
gradle.properties

Usar en build.gradle en el directorio raíz

apply plugin: 'com.android.application'
//xxx1 1 xxx2 2
def platFormType = PLATFORM ? Integer.valueOf(PLATFORM) : 1
android {
    signingConfigs {
        debug {
            if (platFormType == 1) {
                storeFile file("../xxx1_platform.jks")
                storePassword 'xxxxxx'
                keyAlias 'xxxx1'
                keyPassword 'xxxxxx'
            } else if (platFormType == 2) {
                storeFile file("../xxx2_platform.jks")
                storePassword 'xxxxxx'
                keyAlias 'xxxx2'
                keyPassword 'xxxxxx'
            }
        }
        release {
       		//与debug配置相同
        }
    }
 }

La tercera rama de configuración de parámetros opcional BRANCH Este lugar puede usar Git Parameter para seleccionar más fácilmente cada rama, también podemos usar String Parameter para ingresar manualmente el nombre de la rama.
Inserte la descripción de la imagen aquí

Gestión de código fuente

Ingrese la dirección SSH del proyecto,
seleccione agregar credenciales, clave secreta SSH,
use $ BRANCH para consultar los parámetros opcionales que completamos anteriormente
Inserte la descripción de la imagen aquí
. Agregue credenciales globales. Busque las credenciales en la página de inicio de Jenkins-Sistema-Credenciales globales-Seleccione Agregar credenciales a la izquierda
Inserte la descripción de la imagen aquí
. Después de agregarlas, puede administrar git en el código fuente Agregar a la derecha de Credenciales en
Inserte la descripción de la imagen aquí

Construir disparador

No configurado, puede consultar la configuración de otras personas Jenkins.

Entorno de construcción

No configurado, puede consultar la configuración de otras personas Jenkins.
Inserte la descripción de la imagen aquí

Construir

Inserte la descripción de la imagen aquí

Aquí debe configurar Gradle, agregamos un paso de compilación: Invocar script de Gradle y luego configurarlo como se indicó anteriormente, también puede elegir Usar Gradle Wrapper, en la operación real, seleccione Invoke Gradle script y luego se ejecutará la tarea.
Ingrese la tarea que queremos ejecutar en Tareas, generalmente ensamblar limpio $ BUILD_TYPE, que en realidad es el comando de compilación del paquete gradle, solo ingréselo aquí.
Haga clic en Avanzado: pase todos los parámetros del trabajo como propiedades del proyecto, asegúrese de marcar esta opción, lo que significa que usa los parámetros anteriores como parámetros de compilación de Gradle; de ​​lo contrario, no funcionará.
Forzar a GRADLE_USER_HOME a usar el espacio de trabajo significa descargar y usar automáticamente Gradle del que depende el proyecto. No hay problema si lo marca o no.

Ejecutar shell después de que se complete la compilación
Inserte la descripción de la imagen aquí

#!/bin/bash
echo ">>> 开始上传到蒲公英"
dir="/Users/Shared/Jenkins/Home/workspace/AutoMakeApk/taxi/build/outputs/apk/${BUILD_TYPE}/"
fileName=""

cd $dir

for i in $(ls)
do
  echo $i
  temp=$i
  if [ "${temp##*.}"x = "apk"x ]
    then
      fileName=$i
  fi
done

fullPath=$dir$fileName

echo 文件全路径:$fullPath
RESULT=$(curl -F "file=@${fullPath}" -F "uKey=替换为自己的uKey" -F "_api_key=替换为自己的api_key" https://qiniu-storage.pgyer.com/apiv1/app/upload)
echo $RESULT
sub_json=${RESULT##*appKey\":\"}
appkey=${sub_json%\",\"userKey*}

export DOWNLOAD_URL=https://www.pgyer.com/$appkey #设置全局变量,为了发邮件拼接完整路径

echo "#######################################################################################"
echo "##"                                                                                
echo "下载地址:<<< ${DOWNLOAD_URL} >>>"                                          
echo "##"                                                                                     
echo "#######################################################################################"

Finalmente guarde y complete el contenido y salga.

Empiece a construir el proyecto

Inserte la descripción de la imagen aquí

Generación de código QR local de Jenkins artículo avanzado
Android usa la integración continua de
Jenkins Empaquetado automático de Jenkins + Android continuación 4: carga automáticamente al servidor de archivos después del empaquetado,
usa Docker para construir Jenkins para la integración continua implementación continua
Jenkins implementa el proyecto de Android y carga la plataforma fir y muestra el código QR descargar

Supongo que te gusta

Origin blog.csdn.net/u011148116/article/details/106333960
Recomendado
Clasificación