Umgebungsvariablen
- USERNAME: Benutzername des SSL.com-Kontos. (Erforderlich)
- PASSWORD: Kennwort für das SSL.com-Konto (erforderlich)
- CREDENTIAL_ID: Anmelde-ID zum Signieren des Zertifikats. Wenn credential_id ausgelassen wird und der Benutzer nur ein eSigner-Codesignaturzertifikat hat, verwendet CodeSignTool standardmäßig dieses. Wenn der Benutzer über mehr als ein Codesignaturzertifikat verfügt, ist dieser Parameter obligatorisch. (Erforderlich)
- TOTP_SECRET: OAuth-TOTP-Geheimnis. Detaillierte Informationen erhalten Sie unter https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Pflichtfeld)
- UMGEBUNGSNAME : 'TEST'- oder 'PROD'-Umgebung. (Erforderlich)
Eingänge
- Eingabedateipfad: Pfad des zu signierenden Codeobjekts. (Erforderlich)
- Ausgabeverzeichnis_Pfad: Verzeichnis, in das signierte Codeobjekte geschrieben werden. Wenn output_path weggelassen wird, wird die in -file_path angegebene Datei mit der signierten Datei überschrieben.
Beispiel-Workflow für Java-Code (Maven) JAR-Signierung
Erstellen Sie ein Projekt
Erstellen Sie unter dem Projekt eine Datei für Travis
Definieren Sie die Komponenten des Workflows
- Platzieren Sie die CPU-Architektur, auf der der Job ausgeführt werden soll
Bogen: amd64
- Standardsprache zum Ausführen von Tests
Sprache: Java
- Geben Sie das Betriebssystem an, auf dem der Job ausgeführt werden soll
Betriebssystem: Linux
- Schreiben Sie die zu verwendende Ubuntu-Distribution
Abstand: bionisch
- Umgebungsvariablen global definieren. Die Eigenschaft auf Jobebene überschreibt globale Variablen.
- Beachten Sie, dass TERM=dumb nur für Gradle-Projektinstanzen benötigt wird.
- Geben Sie unter ENVIRONMENT_NAME „TEST“ für Testsignaturen und „PROD“ für Livesignaturen ein.
Umgebung:
weltweit:
– PROJECT_NAME=“Hallo Welt“
– PROJECT_VERSION=“0.0.1“
– BEGRIFF=dumm
– ENVIRONMENT_NAME = „TEST“
- Geben Sie die Reihenfolge der Stufen an. Alle Jobs in einer Stufe müssen abgeschlossen sein, bevor die nächste Stufe ausgeführt wird.
Stufen:
- bauen
- Schild
Skizzieren Sie die Bauphase
Arbeitsplätze:
umfasst:
– Stufe: bauen
- Der Jobname
Name: build-maven
- Die zu verwendende Ubuntu-Distribution
Abstand: bionisch
- Verwenden Sie den Docker-Befehl zum Signieren
Leistungen:
– Docker
- Verwenden Sie dotnet-cli, um das Projekt zu erstellen
Sprache: Java
- Java-Version zum Erstellen des Projekts
jdk:
– oraclejdk17
- Zwischenspeichern des m2-Verzeichnisses zur Beschleunigung
cache:
Verzeichnisse:
– $HOME/.m2
- Schreiben Sie das Before-Skript, das vor dem Erstellen des Projekts ausgeführt werden soll
before_script:
# Erstellen Sie Verzeichnisse für Artefakte
– mkdir -p ${TRAVIS_BUILD_DIR}/artifacts
– mkdir -p ${TRAVIS_BUILD_DIR}/Pakete
# Maven-Build-Optionen festlegen
– export MAVEN_CLI_OPTS=“–batch-mode –errors –fail-at-end –show-version -DinstallAtEnd=true -DdeployAtEnd=true“
- Schreiben Sie das Skript zum Erstellen des Projekts.
- In diesem Signierbeispiel-Workflow wurden mehrere Projekttypen erstellt. Aus diesem Grund wurden Dateien unterschiedlicher Projekttypen durch das Anlegen von Unterordnern gehalten. Für Java-Projekte wurde ein Unterordner mit dem Namen „java“ erstellt. Im obigen Demo-Screenshot war es nicht erforderlich, einen Unterordner mit dem Namen „java“ zu erstellen, sodass dieser nicht im Skript enthalten war.
Skript:
# Erstellen Sie ein Maven-Projekt mit Maven-Optionen
– mvn $MAVEN_CLI_OPTS saubere Installation -f java/pom.xml
# Erstellte Artefakte in das Artefaktverzeichnis kopieren
– cp java/target/${PROJECT_NAME}-${PROJECT_VERSION}.jar ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar
- Skizzieren Sie, wie Sie eine Liste von Dateien und Verzeichnissen angeben, die an den Job angehängt werden sollen, wenn er erfolgreich ist.
Arbeitsbereiche:
schaffen:
Name: Maven-jar-Artefakte
Wege:
# Speichern Sie das Artefakt, um den Signaturjob zu verwenden
– ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar
Skizzieren Sie die Zeichenphase
– Stufe: Zeichen
- Schreiben Sie den Jobnamen
name: sign-jar-datei
- Platzieren Sie die zu verwendende Ubuntu-Distribution
Abstand: bionisch
- Verwenden Sie den Docker-Befehl zum Signieren
Leistungen:
– Docker
- Definieren Sie Umgebungsvariablen für bestimmte Jobs.
- Im obigen Screenshot wurde der Sign-Befehl direkt im Sign-Skript und nicht unter Umgebungsvariablen definiert. Both Methoden können mit TravisCI korrekt signieren.
Umgebung:
BEFEHL = "Zeichen"
- Verwenden Sie dotnet-cli, um das Projekt zu erstellen
Sprache: Java
- Java-Version zum Erstellen des Projekts
jdk:
– oraclejdk17
- Before-Skript, das vor dem Erstellen des Projekts ausgeführt werden soll
before_script:
# Erstellen Sie Verzeichnisse für Artefakte
– mkdir -p ${TRAVIS_BUILD_DIR}/artifacts
– mkdir -p ${TRAVIS_BUILD_DIR}/Pakete
- Skript zum Erstellen des Projekts
Skript:
# Docker-Pull-CodeSigner-Docker-Image
– Docker-Pull ghcr.io/sslcom/codesigner:latest
# Artefakt mit CodeSigner Docker-Image signieren
– docker run -i –rm –dns 8.8.8.8 –network host –volume ${TRAVIS_BUILD_DIR}/packages:/codesign/examples
–Volume ${TRAVIS_BUILD_DIR}/artifacts:/codesign/output
-e USERNAME=${USERNAME} -e PASSWORD=${PASSWORD} -e CREDENTIAL_ID=${CREDENTIAL_ID} -e TOTP_SECRET=${TOTP_SECRET}
-e ENVIRONMENT_NAME=${ENVIRONMENT_NAME} ghcr.io/sslcom/codesigner:latest ${COMMAND}
-input_file_path=/codesign/examples/${PROJECT_NAME}.jar -output_dir_path=/codesign/output
- Wird verwendet, um eine Liste von Dateien und Verzeichnissen anzugeben, die an den Job angehängt werden sollen, wenn er erfolgreich ist.
Arbeitsbereiche:
benutzen:
– Maven-jar-Artefakte
schaffen:
name: signierte-jar-datei
Wege:
# Signiertes Artefakt speichern
– ${TRAVIS_BUILD_DIR}/artifacts/${PROJECT_NAME}.jar
Definieren Sie die Umgebungsvariablen
Gehen Sie zu Travis und klicken Sie auf die Einstellungen Taste im nun erscheinenden Bestätigungsfenster nun wieder los.
Fügen Sie den Wert für jede Variable hinzu
Scrollen Sie nach unten zum Umgebungsvariablen Abschnitt und klicken Sie auf die Schaltfläche Hinzufügen, um den Wert für jede Variable hinzuzufügen
Erstellen Sie ein Github-Repository
Suchen Sie nach den Push-Befehlen auf Github
Schreiben Sie die Push-Befehle an einem Terminal auf Ihrem Editor
Warten Sie, bis der Build-Job abgeschlossen ist
Auf Travis sollte der Build-Job automatisch starten, nachdem Sie den Code gepusht haben.
Initiieren Sie die Code Signing-Phase
Klicken Sie auf die Schild Abschnitt für CodeSignTool um den Signiervorgang zu starten
Warten Sie, bis Ihre virtuelle Maschine vollständig gebootet ist
Bestätigen Sie, ob die Codesignatur erfolgreich war
Beispiel einer Travis CI-Pipeline
Sehen Sie sich die Travis CI-Beispielpipeline an, die wir erstellt haben github.com/SSLcom/codesigner-travisci-sampleAndere CI/CD-Service-Remote-Signatur-Integrationsleitfäden
- Cloud Code Signing-Integration mit CircleCI
- Cloud Code Signing-Integration mit GitHub-Aktionen
- Cloud Code Signing-Integration mit GitLab CI
- Cloud Code Signing-Integration mit Jenkins CI
- Cloud Code Signing-Integration mit Azure DevOps
- Cloud Code Signing-Integration mit BitBucket
- Cloud Code Signing-Automatisierung mit CI/CD-Diensten
Benötigen Sie kundenspezifische Lösungen?
Mit unserem Expertenwissen und unserem Fünf-Sterne-Support-Personal sind wir bereit und bereit, mit Ihnen an kundenspezifischen Lösungen oder Rabatten für Großseriensignaturen auf Unternehmensebene zu arbeiten. Füllen Sie das untenstehende Formular aus und wir melden uns bei Ihnen.