Variables d'environnement
- USERNAME: nom d'utilisateur du compte SSL.com. (Obligatoire)
- MOT DE PASSE: Mot de passe du compte SSL.com (Requis)
- CREDENTIAL_ID: ID d'identification pour la signature du certificat. Si credential_id est omis et que l'utilisateur n'a qu'un seul certificat de signature de code eSigner, CodeSignTool utilisera celui-ci par défaut. Si l'utilisateur possède plusieurs certificats de signature de code, ce paramètre est obligatoire. (Obligatoire)
- TOTP_SECRET: Secret OAuth TOTP. Vous pouvez accéder à des informations détaillées sur https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Requis)
- ENVIRONNEMENT_NAME : Environnement 'TEST' ou 'PROD'. (Obligatoire)
Contributions
- chemin_fichier_entrée: Chemin de l'objet code à signer. (Obligatoire)
- chemin_rép_sortie: Répertoire où le ou les objets de code signés seront écrits. Si output_path est omis, le fichier spécifié dans -file_path sera remplacé par le fichier signé.
Exemple de flux de travail de signature de code Java (Maven) JAR
Créer un projet
Sous le projet, créez un fichier pour Travis
Définir les composants du workflow
- Placer l'architecture CPU pour exécuter le travail sur
arc : amd64
- Langue par défaut dans laquelle exécuter les tests
langage : java
- Spécifiez le système d'exploitation sur lequel exécuter la tâche
système d'exploitation : linux
- Écrivez la distribution Ubuntu qui sera utilisée
dist : bionique
- Définissez les variables d'environnement globalement. La propriété au niveau du travail remplace les variables globales.
- Notez que TERM=dumb n'est nécessaire que pour les instances de projet Gradle.
- Sous ENVIRONMENT_NAME, placez "TEST" pour la signature test et "PROD" pour la signature en direct.
env :
mondial:
– PROJECT_NAME="Bonjour le monde"
– PROJET_VERSION=”0.0.1″
– TERME=muet
– ENVIRONNEMENT_NAME="TEST"
- Spécifiez l'ordre des étapes. Tous les travaux d'une étape doivent être terminés avant l'exécution de l'étape suivante.
étapes:
- construire
- pancarte
Décrire l'étape de construction
emplois:
consistent à
– étape : construire
- Le nom du travail
nom: build-maven
- La distribution Ubuntu à utiliser
dist : bionique
- Utiliser la commande docker pour signer
services:
- docker
- Utiliser dotnet-cli pour construire le projet
langage : java
- Version Java pour construire le projet
jdk:
–oraclejdk17
- Répertoire de cache m2 afin d'accélérer
cache:
répertoires :
– $MAISON/.m2
- Écrire le script Avant à exécuter avant de créer le projet
avant_script :
# Créer des répertoires pour les artefacts
– mkdir -p ${TRAVIS_BUILD_DIR}/artefacts
– mkdir -p ${TRAVIS_BUILD_DIR}/paquets
# Définir les options de construction Maven
– export MAVEN_CLI_OPTS=”–batch-mode –errors –fail-at-end –show-version -DinstallAtEnd=true -DdeployAtEnd=true”
- Écrivez le script pour construire le projet.
- Dans cet exemple de workflow de signature, plusieurs types de projets ont été créés. C'est pourquoi les fichiers des différents types de projets ont été conservés en créant des sous-dossiers. Un sous-dossier nommé 'java' a été créé pour les projets Java. Dans la capture d'écran de démonstration ci-dessus, il n'était pas nécessaire de créer un sous-dossier nommé "java", il n'a donc pas été inclus dans le script.
script:
# Construire un projet Maven avec les options Maven
– mvn $MAVEN_CLI_OPTS installation propre -f java/pom.xml
# Copier les artefacts construits dans le répertoire des artefacts
– cp java/target/${PROJECT_NAME}-${PROJECT_VERSION}.jar ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar
- Décrivez comment spécifier une liste de fichiers et de répertoires qui doivent être attachés au travail s'il réussit.
espaces de travail :
créer:
nom: maven-jar-artefacts
chemins:
# Enregistrer l'artefact afin d'utiliser le travail de signature
– ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar
Décrire l'étape du signe
– scène : signe
- Écrivez le nom du travail
nom : sign-jar-file
- Placez la distribution Ubuntu à utiliser
dist : bionique
- Utiliser la commande Docker pour signer
services:
- docker
- Définissez des variables d'environnement pour des tâches spécifiques.
- Dans la capture d'écran ci-dessus, la commande sign a été définie directement dans le script sign et non sous les variables d'environnement. BoTH méthodes peuvent signer correctement avec TravisCI.
env :
COMMANDE = "signe"
- Utiliser dotnet-cli pour construire le projet
langage : java
- Version Java pour construire le projet
jdk:
–oraclejdk17
- Avant le script à exécuter avant de construire le projet
avant_script :
# Créer des répertoires pour les artefacts
– mkdir -p ${TRAVIS_BUILD_DIR}/artefacts
– mkdir -p ${TRAVIS_BUILD_DIR}/paquets
- Script pour construire le projet
script:
# Docker Extraire l'image Docker CodeSigner
– docker pull ghcr.io/sslcom/codedesigner:latest
# Signer l'artefact avec l'image CodeSigner Docker
– docker run -i –rm –dns 8.8.8.8 –hôte réseau –volume ${TRAVIS_BUILD_DIR}/packages:/codesign/examples
–volume ${TRAVIS_BUILD_DIR}/artefacts :/coconception/sortie
-e USERNAME=${USERNAME} -e PASSWORD=${PASSWORD} -e CREDENTIAL_ID=${CREDENTIAL_ID} -e TOTP_SECRET=${TOTP_SECRET}
-e ENVIRONMENT_NAME=${ENVIRONMENT_NAME} ghcr.io/sslcom/codedesigner:latest ${COMMAND}
-input_file_path=/codesign/examples/${PROJECT_NAME}.jar -output_dir_path=/codesign/output
- Utilisé pour spécifier une liste de fichiers et de répertoires qui doivent être attachés au travail s'il réussit.
espaces de travail :
utilisation:
– maven-jar-artefacts
créer:
nom : fichier jar signé
chemins:
# Enregistrer l'artefact signé
– ${TRAVIS_BUILD_DIR}/artefacts/${PROJECT_NAME}.jar
Définir les variables d'environnement
Allez sur Travis et cliquez sur le Paramètres bouton (dans la fenêtre de contrôle qui apparaît maintenant)
Ajouter la valeur pour chaque variable
Faites défiler jusqu'à la Variables d'environnement section et cliquez sur le bouton Ajouter pour ajouter la valeur de chaque variable
Créer un dépôt Github
Recherchez les commandes push sur Github
Écrivez les commandes push dans un terminal de votre éditeur
Attendez que le travail de construction soit terminé
Sur Travis, la tâche de build devrait démarrer automatiquement après avoir poussé le code.
Initier l'étape de signature de code
Cliquez signer section pour CodeSignTool pour démarrer le processus de signature
Attendez que votre machine virtuelle ait fini de démarrer
Confirmer si la signature du code a réussi
Exemple de pipeline Travis CI
Découvrez l'exemple de pipeline Travis CI que nous avons créé sur github.com/SSLcom/codedesigner-travisci-sampleAutres guides d'intégration de la signature à distance du service CI/CD
- Intégration de la signature de code dans le cloud avec CircleCI
- Intégration de la signature de code dans le cloud avec les actions GitHub
- Intégration de la signature de code dans le cloud avec GitLab CI
- Intégration de la signature de code dans le cloud avec Jenkins CI
- Intégration de la signature de code dans le cloud avec Azure DevOps
- Intégration de la signature de code dans le cloud avec BitBucket
- Automatisation de la signature de code dans le cloud avec les services CI/CD
Besoin de solutions personnalisées ?
Grâce à nos connaissances spécialisées et à notre personnel d'assistance cinq étoiles, nous sommes prêts et disposés à travailler avec vous sur des solutions personnalisées ou des remises de signature de gros volumes au niveau de l'entreprise. Remplissez le formulaire ci-dessous et nous vous contacterons.