Ortam Değişkenleri
- KULLANICI ADI: SSL.com hesabı kullanıcı adı. (Gerekli)
- ŞİFRE: SSL.com hesap şifresi (Gerekli)
- KİMLİK_KİMLİĞİ: İmza sertifikası için kimlik bilgisi. credential_id atlanırsa ve kullanıcının yalnızca bir eSigner kod imzalama sertifikası varsa, CodeSignTool varsayılan olarak bunu ayarlar. Kullanıcının birden fazla kod imzalama sertifikası varsa bu parametre zorunludur. (Gerekli)
- TOTP_SECRET: OAuth TOTP Gizli. adresinden detaylı bilgilere ulaşabilirsiniz. https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Gereklidir)
- ENVIRONMENT_NAME : 'TEST' veya 'PROD' Ortamı. (Gerekli)
Girdiler
- girdi_dosya_yolu: İmzalanacak kod nesnesinin yolu. (Gerekli)
- çıktı_dir_yolu: İmzalı kod nesnesinin/nesnelerinin yazılacağı dizin. output_path atlanırsa, -file_path içinde belirtilen dosyanın üzerine imzalı dosya yazılır.
Java Kodu (Maven) JAR İmzalama Örnek İş Akışı
Proje oluştur
Proje kapsamında Travis için bir dosya oluşturun
İş akışının bileşenlerini tanımlayın
- İşi çalıştırmak için CPU Mimarisini yerleştirin
kemer: amd64
- Testleri çalıştırmak için varsayılan dil
dil: java
- İşin çalıştırılacağı işletim sistemini belirtin
işletim sistemi: linux
- Kullanılacak Ubuntu dağıtımını yazın
bkz: biyonik
- Ortam değişkenlerini global olarak tanımlayın. İş düzeyi özelliği, genel değişkenleri geçersiz kılar.
- TERM=dub öğesinin yalnızca Gradle proje örnekleri için gerekli olduğunu unutmayın.
- ENVIRONMENT_NAME altında, test imzalama için "TEST" ve canlı imzalama için "PROD" yerleştirin.
ortam:
küresel:
– PROJECT_NAME=”MerhabaDünya”
– PROJECT_VERSION=”0.0.1″
– TERM=aptal
– ÇEVRE_NAME=”TEST”
- Aşamaların sırasını belirtin. Bir aşamadaki tüm işler, bir sonraki aşama yürütülmeden önce tamamlanmalıdır.
aşamaları:
- inşa etmek
- işaret
Yapım aşamasını ana hatlarıyla belirtin
Meslekler:
şunları içerir:
– aşama: inşa
- iş adı
isim: build-maven
- Kullanılacak Ubuntu dağıtımı
bkz: biyonik
- İmzalamak için docker komutunu kullanın
hizmetler:
- liman işçisi
- Projeyi oluşturmak için dotnet-cli kullanın
dil: java
- Projeyi oluşturmak için Java sürümü
jdk:
- oraclejdk17
- Hızlandırmak için m2 dizinini önbelleğe alın
cache:
dizinler:
– $ANA SAYFA/.m2
- Projeyi oluşturmadan önce çalıştırılacak Before betiğini yazın
önce_script:
# Yapıtlar için dizinler oluşturun
– mkdir -p ${TRAVIS_BUILD_DIR}/eserler
– mkdir -p ${TRAVIS_BUILD_DIR}/paketler
# Maven oluşturma seçeneklerini ayarlayın
– dışa aktar MAVEN_CLI_OPTS=”–toplu mod –errors –fail-at-end –show-version -DinstallAtEnd=true -DdeployAtEnd=true”
- Projeyi oluşturmak için komut dosyasını yazın.
- Bu imzalama örneği iş akışında birden çok proje türü oluşturulmuştur. Bu nedenle alt klasörler oluşturularak farklı proje türlerine ait dosyalar tutulmuştur. Java projeleri için 'java' adında bir alt klasör oluşturuldu. Yukarıdaki demo ekran görüntüsünde, 'java' adında bir alt klasör oluşturmaya gerek yoktu, bu yüzden bu komut dosyasına dahil edilmedi.
senaryo:
# Maven Seçenekleri ile Maven projesi oluşturun
– mvn $MAVEN_CLI_OPTS temiz kurulum -f java/pom.xml
# Yerleşik yapıtları yapıtlar dizinine kopyalayın
– cp Java/target/${PROJECT_NAME}-${PROJECT_VERSION}.jar ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar
- Başarılı olursa işe eklenmesi gereken dosya ve dizinlerin bir listesinin nasıl belirtileceğini ana hatlarıyla belirtin.
çalışma alanları:
oluşturmak:
isim: maven-kavanoz-eserler
yollar:
# İmza işini kullanmak için yapıyı kaydedin
– ${TRAVIS_BUILD_DIR}/paketler/${PROJECT_NAME}.jar
İşaret aşamasını ana hatlarıyla belirtin
– aşama: işaret
- İş adını yazın
isim: işaret-jar-dosyası
- Ubuntu dağıtımını kullanmak için yerleştirin
bkz: biyonik
- İmzalamak için Docker komutunu kullanın
hizmetler:
- liman işçisi
- Belirli işler için ortam değişkenlerini tanımlayın.
- Yukarıdaki ekran görüntüsünde, işaret komutu, ortam değişkenleri altında değil, doğrudan işaret komut dosyasında tanımlanmıştır. Both yöntemler TravisCI ile doğru şekilde imzalayabilir.
ortam:
KOMUT = ”işaret”
- Projeyi oluşturmak için dotnet-cli kullanın
dil: java
- Projeyi oluşturmak için Java sürümü
jdk:
- oraclejdk17
- Projeyi oluşturmadan önce çalıştırılacak komut dosyasından önce
önce_script:
# Yapıtlar için dizinler oluşturun
– mkdir -p ${TRAVIS_BUILD_DIR}/eserler
– mkdir -p ${TRAVIS_BUILD_DIR}/paketler
- Projeyi oluşturmak için komut dosyası
senaryo:
# Docker CodeSigner Docker Görüntüsünü Çekin
– liman işçisi çekme ghcr.io/sslcom/codesigner:latest
# CodeSigner Docker görüntüsüyle yapıyı imzalayın
– docker run -i –rm –dns 8.8.8.8 –ağ ana bilgisayarı –volume ${TRAVIS_BUILD_DIR}/packages:/codesign/examples
–hacim ${TRAVIS_BUILD_DIR}/artifacts:/codesign/output
-e KULLANICI ADI=${KULLANICI ADI} -e ŞİFRE=${ŞİFRE} -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
- Başarılı olursa işe eklenmesi gereken dosya ve dizinlerin listesini belirtmek için kullanılır.
çalışma alanları:
kullanımı:
– maven-kavanoz-eserler
oluşturmak:
isim: imzalı kavanoz dosyası
yollar:
# İmzalı eseri kaydet
– ${TRAVIS_BUILD_DIR}/artifacts/${PROJECT_NAME}.jar
Ortam Değişkenlerini Tanımlayın
Travis'e gidin ve Ayarlar düğmesine tıklayın
Her değişken için değer ekleyin
Aşağı doğru kaydırın Ortam Değişkenleri bölümüne gidin ve her bir değişkenin değerini eklemek için Ekle düğmesini tıklayın.
Github deposu oluşturun
Github'da push komutlarını arayın
Push komutlarını editörünüzdeki bir terminale yazın
Oluşturma işinin tamamlanmasını bekleyin
Travis'te, kodu bastıktan sonra derleme işi otomatik olarak başlamalıdır.
Kod imzalama aşamasını başlatın
Tıkla işaret bölümü KodSignAracı imza sürecini başlatmak için
Sanal makinenizin önyüklemeyi bitirmesini bekleyin
Kod imzalamanın başarılı olup olmadığını onaylayın
Örnek Travis CI Ardışık Düzeni
Üzerinde oluşturduğumuz örnek Travis CI işlem hattına göz atın github.com/SSLcom/codesigner-travisci-sampleDiğer CI/CD Hizmeti Uzaktan İmzalama Entegrasyon Kılavuzları
- CircleCI ile Bulut Kod İmzalama Entegrasyonu
- GitHub Eylemleri ile Bulut Kod İmzalama Entegrasyonu
- GitLab CI ile Bulut Kod İmzalama Entegrasyonu
- Jenkins CI ile Bulut Kod İmzalama Entegrasyonu
- Azure DevOps ile Bulut Kod İmzalama Entegrasyonu
- BitBucket ile Bulut Kod İmzalama Entegrasyonu
- CI/CD Hizmetleri ile Bulut Kod İmzalama Otomasyonu
Özel Çözümlere mi ihtiyacınız var?
Uzman bilgi birikimimiz ve beş yıldızlı destek ekibimizle, özel çözümler veya kurumsal düzeyde yüksek hacimli imza indirimleri konusunda sizinle birlikte çalışmaya hazır ve istekliyiz. Aşağıdaki formu doldurun, sizinle iletişime geçelim.