Variables de entorno
- NOMBRE DE USUARIO: nombre de usuario de la cuenta SSL.com. (Requerido)
- CONTRASEÑA: Contraseña de la cuenta SSL.com (Obligatorio)
- CREDENCIAL_ID: ID de credencial para el certificado de firma. Si se omite credential_id y el usuario tiene solo un certificado de firma de código de eSigner, CodeSignTool lo usará de forma predeterminada. Si el usuario tiene más de un certificado de firma de código, este parámetro es obligatorio. (Requerido)
- TOTP_SECRETO: OAuth TOTP Secreto. Puede acceder a información detallada sobre https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Obligatorio)
- ENTORNO_NOMBRE : Entorno 'TEST' o 'PROD'. (Requerido)
Ingresos
- ruta_archivo_entrada: ruta del objeto de código que se firmará. (Requerido)
- salida_dir_ruta: Directorio donde se escribirán los objetos de código firmados. Si se omite output_path, el archivo especificado en -file_path se sobrescribirá con el archivo firmado.
Flujo de trabajo de ejemplo de firma JAR de código Java (Maven)
Crear un proyecto
En el proyecto, cree un archivo para Travis
Definir los componentes del flujo de trabajo
- Coloque la arquitectura de la CPU para ejecutar el trabajo
arco: amd64
- Idioma predeterminado para ejecutar pruebas en
idioma: Java
- Especificar el sistema operativo para ejecutar el trabajo
sistema operativo: linux
- Escriba la distribución de Ubuntu que se utilizará
distancia: bionica
- Definir variables de entorno globalmente. La propiedad de nivel de trabajo anula las variables globales.
- Tenga en cuenta que TERM=dumb solo es necesario para las instancias de proyectos de Gradle.
- En ENVIRONMENT_NAME, coloque "TEST" para la firma de prueba y "PROD" para la firma en vivo.
entorno:
global:
– NOMBRE_PROYECTO=”HolaMundo”
– PROYECTO_VERSIÓN=”0.0.1″
– TÉRMINO = tonto
– ENTORNO_NOMBRE=”PRUEBA”
- Especifique el orden de las etapas. Todos los trabajos en una etapa deben completarse antes de que se ejecute la siguiente etapa.
etapas:
- construir
- señal
Esquema de la etapa de construcción
trabajos:
incluyen:
– etapa: construir
- el nombre del trabajo
nombre: build-maven
- La distribución de Ubuntu a usar
distancia: bionica
- Use el comando docker para firmar
servicios:
- ventana acoplable
- Use dotnet-cli para construir el proyecto
idioma: Java
- Versión de Java para construir el proyecto.
JDK:
– oráculojdk17
- Directorio de caché m2 para acelerar
cache:
directorios:
– $HOGAR/.m2
- Escriba el script Before para ejecutarlo antes de compilar el proyecto
antes_script:
# Crear directorios para artefactos
– mkdir -p ${TRAVIS_BUILD_DIR}/artefactos
– mkdir -p ${TRAVIS_BUILD_DIR}/paquetes
# Establecer las opciones de compilación de Maven
– exportar MAVEN_CLI_OPTS=”–modo por lotes –errores –fallo al final –mostrar versión -DinstallAtEnd=true -DdeployAtEnd=true”
- Escriba el script para construir el proyecto.
- En este flujo de trabajo de ejemplo de firma, se crearon varios tipos de proyectos. Es por eso que los archivos de diferentes tipos de proyectos se mantuvieron creando subcarpetas. Se creó una subcarpeta llamada 'java' para proyectos Java. En la captura de pantalla de demostración anterior, no había necesidad de crear una subcarpeta llamada 'java', por lo que no se incluyó en el script.
script:
# Construya el proyecto Maven con las opciones de Maven
– mvn $MAVEN_CLI_OPTS instalación limpia -f java/pom.xml
# Copiar artefactos construidos al directorio de artefactos
– cp java/target/${PROJECT_NAME}-${PROJECT_VERSION}.jar ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar
- Resuma cómo especificar una lista de archivos y directorios que deben adjuntarse al trabajo si tiene éxito.
espacios de trabajo:
crear:
nombre: maven-jar-artefactos
caminos:
# Guardar artefacto para usar el trabajo de firma
– ${TRAVIS_BUILD_DIR}/paquetes/${PROJECT_NAME}.jar
Esquema de la etapa de signos
– etapa: signo
- Escribe el nombre del trabajo
nombre: firmar-archivo-jar
- Coloque la distribución de Ubuntu para usar
distancia: bionica
- Use el comando Docker para firmar
servicios:
- ventana acoplable
- Defina variables de entorno para trabajos específicos.
- En la captura de pantalla anterior, el comando de firma se definió directamente en el script de firma y no en las variables de entorno. BOTH los métodos pueden firmar correctamente con TravisCI.
entorno:
COMANDO = "signo"
- Use dotnet-cli para construir el proyecto
idioma: Java
- Versión de Java para construir el proyecto.
JDK:
– oráculojdk17
- Antes de ejecutar el script antes de construir el proyecto
antes_script:
# Crear directorios para artefactos
– mkdir -p ${TRAVIS_BUILD_DIR}/artefactos
– mkdir -p ${TRAVIS_BUILD_DIR}/paquetes
- Script para construir el proyecto
script:
# Docker Extraer CodeSigner Docker Image
– docker pull ghcr.io/sslcom/codesigner:último
# Firmar artefacto con CodeSigner Docker image
– docker run -i –rm –dns 8.8.8.8 –host de red –volumen ${TRAVIS_BUILD_DIR}/packages:/codesign/examples
–volumen ${TRAVIS_BUILD_DIR}/artefactos:/codiseño/salida
-e NOMBRE DE USUARIO=${NOMBRE DE USUARIO} -e CONTRASEÑA=${CONTRASEÑA} -e ID_CREDENCIAL=${ID_CREDENCIAL} -e TOTP_SECRET=${TOTP_SECRET}
-e NOMBRE_ENTORNO=${NOMBRE_ENTORNO} ghcr.io/sslcom/codesigner:último ${COMANDO}
-input_file_path=/codesign/examples/${PROJECT_NAME}.jar -output_dir_path=/codesign/output
- Se utiliza para especificar una lista de archivos y directorios que deben adjuntarse al trabajo si se realiza correctamente.
espacios de trabajo:
utilizar:
– maven-jar-artefactos
crear:
nombre: archivo-jar-firmado
caminos:
# Guardar artefacto firmado
– ${TRAVIS_BUILD_DIR}/artefactos/${PROJECT_NAME}.jar
Definir las variables de entorno
Ve a Travis y haz clic en el Ajustes .
Agregar el valor de cada variable
Desplázate hacia abajo hasta Variables de entorno sección y haga clic en el botón Agregar para agregar el valor de cada variable
Crear un repositorio de Github
Busque los comandos push en Github
Escriba los comandos push en una terminal en su editor
Espere a que se complete el trabajo de compilación
En Travis, el trabajo de compilación debería comenzar automáticamente después de haber enviado el código.
Iniciar la etapa de firma de código
Haga clic en el firmar sección para Herramienta CodeSign para iniciar el proceso de firma
Espere a que su máquina virtual termine de arrancar
Confirme si la firma del código es exitosa
Ejemplo de canalización de CI de Travis
Echa un vistazo a la canalización de muestra de Travis CI que hemos creado en github.com/SSLcom/codesigner-travisci-sampleOtras guías de integración de firma remota del servicio CI/CD
- Integración de firma de código en la nube con CircleCI
- Integración de firma de código en la nube con acciones de GitHub
- Integración de firma de código en la nube con GitLab CI
- Integración de firma de código en la nube con Jenkins CI
- Integración de firma de código en la nube con Azure DevOps
- Integración de firma de código en la nube con BitBucket
- Automatización de la firma de código en la nube con servicios de CI/CD
¿Necesita soluciones personalizadas?
Con nuestro conocimiento experto y personal de soporte de cinco estrellas, estamos listos y dispuestos a trabajar con usted en soluciones personalizadas o descuentos en firmas de alto volumen a nivel empresarial. Complete el siguiente formulario y nos pondremos en contacto.