Miljøvariabler
- USERNAME: SSL.com konto brugernavn. (Påkrævet)
- PASSWORD: SSL.com kontoadgangskode (påkrævet)
- CREDENTIAL_ID: Legitimations-id til signering af certifikat. Hvis credential_id er udeladt, og brugeren kun har ét eSigner-kodesigneringscertifikat, vil CodeSignTool som standard være det. Hvis brugeren har mere end ét kodesigneringscertifikat, er denne parameter obligatorisk. (Påkrævet)
- TOTP_SECRET: OAuth TOTP-hemmelighed. Du kan få adgang til detaljerede oplysninger om https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Påkrævet)
- ENVIRONMENT_NAME : 'TEST' eller 'PROD' miljø. (Påkrævet)
Indgange
- input_file_path: Sti til kodeobjekt, der skal signeres. (Påkrævet)
- output_dir_path: Bibliotek, hvor signeret kodeobjekt(er) vil blive skrevet. Hvis output_path er udeladt, vil filen specificeret i -file_path blive overskrevet med den signerede fil.
Java Code (Maven) JAR Signing Eksempel Workflow
Opret et projekt
Under projektet skal du oprette en fil til Travis
Definer komponenterne i arbejdsgangen
- Placer CPU-arkitekturen for at køre jobbet på
bue: amd64
- Standardsprog til at køre test i
sprog: java
- Angiv det operativsystem, du vil køre jobbet på
OS: linux
- Skriv den Ubuntu-distribution, der skal bruges
dist: bionisk
- Definer miljøvariabler globalt. Jobniveauegenskab tilsidesætter globale variabler.
- Bemærk, at TERM=dumb kun er nødvendig for Gradle-projektforekomster.
- Under ENVIRONMENT_NAME skal du placere "TEST" for testsignering og "PROD" for livesignering.
env:
global:
– PROJECT_NAME="HelloWorld"
– PROJECT_VERSION="0.0.1"
– TERM=dum
– ENVIRONMENT_NAME="TEST"
- Angiv rækkefølgen af stadier. Alle opgaver i én fase skal afsluttes, før den næste fase udføres.
niveauer:
– bygge
- skilt
Skitser byggefasen
job:
omfatte:
– etape: bygge
- Jobnavnet
navn: build-maven
- Ubuntu-distributionen, der skal bruges
dist: bionisk
- Brug docker-kommando til underskrift
tjenester:
– havnearbejder
- Brug dotnet-cli til at bygge projektet
sprog: java
- Java-version til at bygge projektet
JDK:
– oraclejdk17
- Cache m2 bibliotek for at fremskynde
cache:
mapper:
– $HJEM/.m2
- Skriv Før-scriptet, der skal køres, før du bygger projektet
før_script:
# Opret mapper til artefakter
– mkdir -p ${TRAVIS_BUILD_DIR}/artifacts
– mkdir -p ${TRAVIS_BUILD_DIR}/pakker
# Indstil Maven-byggemuligheder
– eksport MAVEN_CLI_OPTS=”–batch-mode –fejl –fail-at-end –show-version -DinstallAtEnd=true -DdeployAtEnd=true”
- Skriv manuskriptet til at bygge projektet.
- I dette signeringseksempel-workflow blev der oprettet flere projekttyper. Dette er grunden til, at filer af forskellige projekttyper blev opbevaret ved at oprette undermapper. En undermappe med navnet 'java' blev oprettet til Java-projekter. I demo-skærmbilledet ovenfor var der ikke behov for at oprette en undermappe ved navn 'java', så denne var ikke inkluderet i scriptet.
manuskript:
# Byg Maven-projekt med Maven Options
– mvn $MAVEN_CLI_OPTS ren installation -f java/pom.xml
# Kopier byggede artefakter til artefakterbiblioteket
– cp java/target/${PROJECT_NAME}-${PROJECT_VERSION}.jar ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar
- Skitser, hvordan du angiver en liste over filer og mapper, der skal knyttes til jobbet, hvis det lykkes.
arbejdsområder:
skab:
navn: maven-jar-artefakter
stier:
# Gem artefakt for at bruge signeringsjob
– ${TRAVIS_BUILD_DIR}/pakker/${PROJECT_NAME}.jar
Skitser skiltstadiet
– scene: tegn
- Skriv jobnavnet
navn: sign-jar-fil
- Placer Ubuntu-distributionen til brug
dist: bionisk
- Brug Docker-kommandoen til at signere
tjenester:
– havnearbejder
- Definer miljøvariabler for specifikke job.
- I skærmbilledet ovenfor blev sign-kommandoen defineret direkte i sign-scriptet og ikke under miljøvariabler. Both metoder kan signere korrekt med TravisCI.
env:
COMMAND = "tegn"
- Brug dotnet-cli til at bygge projektet
sprog: java
- Java-version til at bygge projektet
JDK:
– oraclejdk17
- Før scriptet skal køres før projektet bygges
før_script:
# Opret mapper til artefakter
– mkdir -p ${TRAVIS_BUILD_DIR}/artifacts
– mkdir -p ${TRAVIS_BUILD_DIR}/pakker
- Script til at bygge projektet
manuskript:
# Docker Pull CodeSigner Docker-billede
– docker pull ghcr.io/sslcom/codesigner:latest
# Signer artefakt med CodeSigner Docker-billede
– docker run -i –rm –dns 8.8.8.8 –netværksvært –volumen ${TRAVIS_BUILD_DIR}/packages:/codesign/examples
–volumen ${TRAVIS_BUILD_DIR}/artifacts:/codesign/output
-e BRUGERNAVN=${BRUGERNAVN} -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
- Bruges til at angive en liste over filer og mapper, der skal knyttes til jobbet, hvis det lykkes.
arbejdsområder:
bruge:
– maven-jar-artefakter
skab:
navn: signeret-jar-fil
stier:
# Gem signeret artefakt
– ${TRAVIS_BUILD_DIR}/artifacts/${PROJECT_NAME}.jar
Definer miljøvariablerne
Gå til Travis og klik på Indstillinger .
Tilføj værdien for hver variabel
Rul ned til Miljøvariabler sektionen og klik på knappen Tilføj for at tilføje værdien for hver variabel
Opret en Github-repo
Se efter push-kommandoerne på Github
Skriv push-kommandoerne ved en terminal på din editor
Vent på, at byggejobbet er afsluttet
På Travis bør byggejobbet starte automatisk, efter du har trykket på koden.
Start kodesigneringsfasen
Klik på knappen underskrive sektion for KodeSignTool for at starte underskriftsprocessen
Vent på, at din virtuelle maskine er færdig med at starte op
Bekræft, om kodesignering er vellykket
Prøve Travis CI Pipeline
Se prøven af Travis CI-pipeline, vi har lavet på github.com/SSLcom/codesigner-travisci-sampleAndre 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-tjenester
Brug for tilpassede løsninger?
Med vores ekspertviden og femstjernede supportmedarbejdere er vi klar til og villige til at arbejde sammen med dig om skræddersyede løsninger eller store signeringsrabatter på virksomhedsniveau. Udfyld formularen nedenfor, så kontakter vi dig.