Miljövariabler
- USERNAME: Användarnamn för SSL.com-konto. (Nödvändig)
- LÖSENORD: Lösenord för SSL.com-konto (krävs)
- CREDENTIAL_ID: Autentiserings-ID för signering av certifikat. Om credential_id utelämnas och användaren bara har ett eSigner-kodsigneringscertifikat, kommer CodeSignTool att använda det som standard. Om användaren har mer än ett kodsigneringscertifikat är denna parameter obligatorisk. (Nödvändig)
- TOTP_SECRET: OAuth TOTP-hemlighet. Du kan komma åt detaljerad information om https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Nödvändig)
- ENVIRONMENT_NAME : 'TEST' eller 'PROD' miljö. (Nödvändig)
ingångar
- input_file_path: Sökväg till kodobjekt som ska signeras. (Nödvändig)
- output_dir_path: Katalog där signerade kodobjekt kommer att skrivas. Om output_path utelämnas kommer filen som anges i -file_path att skrivas över med den signerade filen.
Java Code (Maven) JAR-signeringsexempel arbetsflöde
Skapa ett projekt
Skapa en fil för Travis under projektet
Definiera komponenterna i arbetsflödet
- Placera CPU-arkitekturen för att köra jobbet på
båge: amd64
- Standardspråk för att köra tester på
språk: java
- Ange vilket operativsystem du vill köra jobbet på
OS: linux
- Skriv Ubuntu-distributionen som kommer att användas
dist: bionisk
- Definiera miljövariabler globalt. Jobbnivåegenskap åsidosätter globala variabler.
- Observera att TERM=dumb endast behövs för Gradle-projektinstanser.
- Under ENVIRONMENT_NAME placerar du "TEST" för testsignering och "PROD" för livesignering.
env:
global:
– PROJECT_NAME="HelloWorld"
– PROJECT_VERSION="0.0.1"
– TERM=dum
– ENVIRONMENT_NAME=”TEST”
- Ange ordningen på stegen. Alla jobb i ett steg måste slutföras innan nästa steg utförs.
steg:
– bygga
- tecken
Beskriv byggstadiet
jobb:
innefattar:
– etapp: bygga
- Jobbets namn
namn: build-maven
- Ubuntu-distributionen att använda
dist: bionisk
- Använd docker-kommandot för att signera
tjänster:
– hamnarbetare
- Använd dotnet-cli för att bygga projektet
språk: java
- Java-version för att bygga projektet
jdk:
– oraclejdk17
- Cache m2-katalogen för att snabba upp
cache:
kataloger:
– $HOME/.m2
- Skriv före-skriptet som ska köras innan du bygger projektet
före_skript:
# Skapa kataloger för artefakter
– mkdir -p ${TRAVIS_BUILD_DIR}/artefakter
– mkdir -p ${TRAVIS_BUILD_DIR}/paket
# Ställ in Maven-byggalternativ
– export MAVEN_CLI_OPTS=”–batch-mode –errors –fail-at-end –show-version -DinstallAtEnd=true -DdeployAtEnd=true”
- Skriv manuset för att bygga projektet.
- I detta arbetsflöde för signeringsexempel skapades flera projekttyper. Det är därför filer av olika projekttyper behölls genom att skapa undermappar. En undermapp med namnet 'java' skapades för Java-projekt. I demoskärmdumpen ovan behövdes det inte skapa en undermapp med namnet 'java' så denna ingick inte i skriptet.
manus:
# Bygg Maven-projekt med Maven Options
– mvn $MAVEN_CLI_OPTS ren installation -f java/pom.xml
# Kopiera byggda artefakter till artefakterkatalogen
– cp java/target/${PROJECT_NAME}-${PROJECT_VERSION}.jar ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar
- Beskriv hur du anger en lista över filer och kataloger som ska bifogas jobbet om det lyckas.
arbetsytor:
skapa:
namn: maven-jar-artefakter
vägar:
# Spara artefakt för att använda signeringsjobb
– ${TRAVIS_BUILD_DIR}/paket/${PROJECT_NAME}.jar
Skissera skyltstadiet
– scen: tecken
- Skriv jobbnamnet
namn: sign-jar-fil
- Placera Ubuntu-distributionen att använda
dist: bionisk
- Använd Docker-kommandot för att signera
tjänster:
– hamnarbetare
- Definiera miljövariabler för specifika jobb.
- I skärmdumpen ovan definierades teckenkommandot direkt i teckenskriptet och inte under miljövariabler. Both metoder kan signera korrekt med TravisCI.
env:
COMMAND=”tecken”
- Använd dotnet-cli för att bygga projektet
språk: java
- Java-version för att bygga projektet
jdk:
– oraclejdk17
- Innan manuset ska köras innan man bygger projektet
före_skript:
# Skapa kataloger för artefakter
– mkdir -p ${TRAVIS_BUILD_DIR}/artefakter
– mkdir -p ${TRAVIS_BUILD_DIR}/paket
- Skript för att bygga projektet
manus:
# Docker Pull CodeSigner Docker Image
– docker pull ghcr.io/sslcom/codesigner:latest
# Signera artefakt med CodeSigner Docker-bild
– docker run -i –rm –dns 8.8.8.8 –nätverksvärd –volym ${TRAVIS_BUILD_DIR}/packages:/codesign/examples
–volym ${TRAVIS_BUILD_DIR}/artifacts:/codesign/output
-e ANVÄNDARNAMN=${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
- Används för att ange en lista över filer och kataloger som ska bifogas jobbet om det lyckas.
arbetsytor:
användning:
– maven-jar-artefakter
skapa:
namn: signerad-jar-fil
vägar:
# Spara signerad artefakt
– ${TRAVIS_BUILD_DIR}/artifacts/${PROJECT_NAME}.jar
Definiera miljövariabler
Gå till Travis och klicka på Inställningar Knappen
Lägg till värdet för varje variabel
Bläddra ner till Miljövariabler och klicka på knappen Lägg till för att lägga till värdet för varje variabel
Skapa en Github-repo
Leta efter push-kommandona på Github
Skriv push-kommandona vid en terminal på din editor
Vänta tills byggjobbet är klart
På Travis bör byggjobbet starta automatiskt efter att du har tryckt på koden.
Initiera kodsigneringssteget
Klicka på signera avsnitt för CodeSign Tool för att starta signeringsprocessen
Vänta tills din virtuella maskin startar upp
Bekräfta om kodsignering är framgångsrik
Prov Travis CI Pipeline
Kolla in exempel på Travis CI-pipeline vi har skapat på github.com/SSLcom/codesigner-travisci-sampleAndra CI/CD Service Remote Signing Integration Guides
- Cloud Code Signing-integration med CircleCI
- Cloud Code Signing-integration med GitHub Actions
- Cloud Code Signing-integration med GitLab CI
- Cloud Code Signing-integration med Jenkins CI
- Cloud Code Signing-integration med Azure DevOps
- Cloud Code Signing Integration med BitBucket
- Cloud Code Signing Automation med CI/CD-tjänster
Behöver du anpassade lösningar?
Med vår expertkunskap och femstjärniga supportpersonal är vi redo och villiga att arbeta med dig på skräddarsydda lösningar eller rabatter på stora volymer av signering på företagsnivå. Fyll i formuläret nedan så hör vi av oss.