Basic TravisCI Information
Last updated
Last updated
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)
TravisCI, Github, Bitbucket, Assembla ve Gitlab gibi farklı git platformlarıyla doğrudan entegre olur. Kullanıcıdan, TravisCI ile entegre etmek istediği reposuna erişim izni vermesi istenir.
Örneğin, Github'da aşağıdaki izinleri isteyecektir:
user:email
(salt okunur)
read:org
(salt okunur)
repo
: Kamu ve özel depolar ve organizasyonlar için kod, commit durumları, işbirlikçileri ve dağıtım durumlarına okuma ve yazma erişimi verir.
TravisCI'da, diğer CI platformlarında olduğu gibi, repo düzeyinde gizli bilgileri kaydetmek mümkündür; bu bilgiler şifreli olarak kaydedilir ve şifrelenir ve oluşturma işlemini gerçekleştiren makinenin ortam değişkenine itilir.
Gizli bilgilerin hangi dallarda mevcut olacağını belirtmek mümkündür (varsayılan olarak hepsi) ve ayrıca TravisCI'nın değerini gizleyip gizlememesi gerektiği (varsayılan olarak gizleyecektir) belirtilebilir.
Her repo için TravisCI bir RSA anahtar çifti oluşturur, özel olanı saklar ve depo erişimi olanlara deponun açık anahtarını sunar.
Bir reposunun açık anahtarına erişmek için:
Sonra, bu ayarı kullanarak gizli bilgileri şifreleyebilir ve bunları .travis.yaml
dosyanıza ekleyebilirsiniz. Gizli bilgiler derleme çalıştırıldığında çözülür ve çevresel değişkenlerde erişilebilir hale gelir.
Bu şekilde şifrelenen gizli bilgilerin ayarların çevresel değişkenlerinde listelenmeyeceğini unutmayın.
Önceki gibi, TravisCI ayrıca dosyaları şifrelemeye ve ardından derleme sırasında çözmeye de izin verir:
Not edin ki bir dosyayı şifrelerken, repoda 2 Env Değişkeni yapılandırılacaktır:
Travis CI Enterprise, Travis CI'nin yerel versiyonudur, bunu altyapınızda dağıtabilirsiniz. Travis CI'nin 'sunucu' versiyonu olarak düşünün. Travis CI kullanmak, istediğiniz gibi yapılandırıp güvence altına alabileceğiniz bir ortamda kullanımı kolay bir Sürekli Entegrasyon/Sürekli Dağıtım (CI/CD) sistemini etkinleştirmenizi sağlar.
Travis CI Enterprise iki ana bölümden oluşur:
TCI hizmetleri (veya TCI Temel Hizmetleri), sürüm kontrol sistemleriyle entegrasyondan, derlemeleri yetkilendirmeye, derleme işlerini planlamaya kadar sorumludur.
TCI Worker ve derleme ortamı görüntüleri (aynı zamanda OS görüntüleri olarak da adlandırılır).
TCI Temel hizmetleri aşağıdakileri gerektirir:
Bir PostgreSQL11 (veya daha yeni) veritabanı.
Bir Kubernetes kümesini dağıtmak için bir altyapı; gerekirse bir sunucu kümesinde veya tek bir makinede dağıtılabilir.
Kurulumunuza bağlı olarak, bazı bileşenleri kendi başınıza dağıtmak ve yapılandırmak isteyebilirsiniz, örneğin, RabbitMQ - daha fazla ayrıntı için Travis CI Enterprise Kurulumu sayfasına bakın.
TCI Worker aşağıdakileri gerektirir:
Worker ve bağlantılı bir derleme görüntüsünü içeren bir docker görüntüsünün dağıtılabileceği bir altyapı.
Belirli Travis CI Temel Hizmetleri bileşenlerine bağlantı - daha fazla ayrıntı için Worker Kurulumu sayfasına bakın.
Dağıtılan TCI Worker ve derleme ortamı OS görüntülerinin sayısı, altyapınızdaki Travis CI Enterprise dağıtımının toplam eşzamanlı kapasitesini belirleyecektir.
AWS Hacking öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)