Miljøvariabler
- USERNAME: SSL.com-konto brukernavn. (Obligatorisk)
- PASSORD: SSL.com-kontopassord (påkrevd)
- CREDENTIAL_ID: Legitimasjons-ID for signering av sertifikat. Hvis credential_id er utelatt og brukeren bare har ett eSigner-kodesigneringssertifikat, vil CodeSignTool som standard bruke det. Hvis brukeren har mer enn ett kodesigneringssertifikat, er denne parameteren obligatorisk. (Obligatorisk)
- TOTP_SECRET: OAuth TOTP-hemmelighet. Du kan få tilgang til detaljert informasjon om https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Nødvendig)
- ENVIRONMENT_NAME : 'TEST' eller 'PROD' miljø. (Obligatorisk)
Innganger
- input_file_path: Banen til kodeobjektet som skal signeres. (Obligatorisk)
- output_dir_path: Katalog hvor signert kodeobjekt(er) vil bli skrevet. Hvis output_path er utelatt, vil filen spesifisert i -file_path bli overskrevet med den signerte filen.
Java Code (Maven) JAR-signeringseksempel arbeidsflyt
Lag et prosjekt
Under prosjektet oppretter du en fil for Travis
Definer komponentene i arbeidsflyten
- Plasser CPU-arkitekturen for å kjøre jobben på
bue: amd64
- Standardspråk for å kjøre tester på
språk: java
- Angi operativsystemet du vil kjøre jobben på
OS: linux
- Skriv Ubuntu-distribusjonen som skal brukes
dist: bionisk
- Definer miljøvariabler globalt. Jobbnivåegenskap overstyrer globale variabler.
- Vær oppmerksom på at TERM=dum bare er nødvendig for Gradle-prosjektforekomster.
- Under ENVIRONMENT_NAME plasserer du «TEST» for testsignering og «PROD» for direktesignering.
env:
global:
– PROJECT_NAME="HelloWorld"
– PROJECT_VERSION="0.0.1"
– TERM=dum
– ENVIRONMENT_NAME="TEST"
- Angi rekkefølgen på stadiene. Alle jobber i ett trinn må fullføres før neste trinn utføres.
stadier:
- bygge
– tegn
Skisser byggestadiet
arbeidsplasser:
inkluderer:
– scene: bygge
- Jobbens navn
navn: build-maven
- Ubuntu-distribusjonen som skal brukes
dist: bionisk
- Bruk docker-kommando for signering
tjenester:
– havnearbeider
- Bruk dotnet-cli for å bygge prosjektet
språk: java
- Java-versjon for å bygge prosjektet
jdk:
– oraclejdk17
- Cache m2-katalogen for å øke hastigheten
cache:
kataloger:
– $HOME/.m2
- Skriv Før-skriptet som skal kjøres før du bygger prosjektet
før_skript:
# Lag kataloger for artefakter
– mkdir -p ${TRAVIS_BUILD_DIR}/artefakter
– mkdir -p ${TRAVIS_BUILD_DIR}/pakker
# Angi Maven byggealternativer
– eksport MAVEN_CLI_OPTS=”–batch-modus –feil –fail-at-end –show-version -DinstallAtEnd=true -DdeployAtEnd=true”
- Skriv manuset for å bygge prosjektet.
- I denne signeringseksempelarbeidsflyten ble flere prosjekttyper opprettet. Dette er grunnen til at filer av forskjellige prosjekttyper ble beholdt ved å opprette undermapper. En undermappe kalt 'java' ble opprettet for Java-prosjekter. I demoskjermbildet ovenfor var det ikke nødvendig å opprette en undermappe kalt 'java', så dette var ikke inkludert i skriptet.
manus:
# Bygg Maven-prosjekt med Maven Options
– mvn $MAVEN_CLI_OPTS ren installasjon -f java/pom.xml
# Kopier bygde artefakter til artefakterkatalogen
– cp java/target/${PROJECT_NAME}-${PROJECT_VERSION}.jar ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar
- Skisser hvordan du spesifiserer en liste over filer og kataloger som skal knyttes til jobben hvis den lykkes.
arbeidsområder:
skape:
navn: maven-jar-artefakter
baner:
# Lagre artefakt for å bruke signeringsjobb
– ${TRAVIS_BUILD_DIR}/pakker/${PROJECT_NAME}.jar
Skisser skiltstadiet
– scene: tegn
- Skriv jobbnavnet
navn: sign-jar-fil
- Plasser Ubuntu-distribusjonen som skal brukes
dist: bionisk
- Bruk Docker-kommandoen for å signere
tjenester:
– havnearbeider
- Definer miljøvariabler for spesifikke jobber.
- I skjermbildet ovenfor ble skiltkommandoen definert direkte i skiltskriptet og ikke under miljøvariabler. Both metoder kan signere riktig med TravisCI.
env:
COMMAND = "sign"
- Bruk dotnet-cli for å bygge prosjektet
språk: java
- Java-versjon for å bygge prosjektet
jdk:
– oraclejdk17
- Før skriptet skal kjøres før prosjektet bygges
før_skript:
# Lag kataloger for artefakter
– mkdir -p ${TRAVIS_BUILD_DIR}/artefakter
– mkdir -p ${TRAVIS_BUILD_DIR}/pakker
- Skript for å bygge prosjektet
manus:
# Docker Pull CodeSigner Docker Image
– docker pull ghcr.io/sslcom/codesigner:latest
# Signer artefakt med CodeSigner Docker-bilde
– docker run -i –rm –dns 8.8.8.8 –nettverksvert –volum ${TRAVIS_BUILD_DIR}/packages:/codesign/examples
–volum ${TRAVIS_BUILD_DIR}/artifacts:/codesign/output
-e BRUKERNAVN=${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
- Brukes til å angi en liste over filer og kataloger som skal knyttes til jobben hvis den lykkes.
arbeidsområder:
bruk:
– maven-jar-artefakter
skape:
navn: signert-jar-fil
baner:
# Lagre signert artefakt
– ${TRAVIS_BUILD_DIR}/artifacts/${PROJECT_NAME}.jar
Definer miljøvariablene
Gå til Travis og klikk på innstillinger knapp
Legg til verdien for hver variabel
Rull ned til Miljøvariabler og klikk på Legg til-knappen for å legge til verdien for hver variabel
Opprett en Github-repo
Se etter push-kommandoene på Github
Skriv push-kommandoene på en terminal på editoren
Vent til byggejobben er fullført
På Travis skal byggejobben starte automatisk etter at du har presset koden.
Start kodesigneringsfasen
Klikk på undertegne seksjon for CodeSign Tool for å starte signeringsprosessen
Vent til den virtuelle maskinen er ferdig med oppstarten
Bekreft om kodesignering er vellykket
Prøve Travis CI Pipeline
Sjekk ut prøven Travis CI-pipeline vi har laget på github.com/SSLcom/codesigner-travisci-sampleAndre CI/CD-tjenesteveiledninger for fjernsignering
- Cloud Code Signing-integrasjon med CircleCI
- Cloud Code Signing-integrasjon med GitHub Actions
- Cloud Code Signing-integrasjon med GitLab CI
- Cloud Code Signing-integrasjon med Jenkins CI
- Cloud Code Signing-integrasjon med Azure DevOps
- Cloud Code Signing-integrasjon med BitBucket
- Skykodesigneringsautomatisering med CI/CD-tjenester
Trenger du tilpassede løsninger?
Med vår ekspertkunnskap og femstjerners støttepersonell er vi klare og villige til å samarbeide med deg om tilpassede løsninger eller store signeringsrabatter på bedriftsnivå. Fyll ut skjemaet under så tar vi kontakt.