Informations de base sur TravisCI
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
AccĂšs
TravisCI sâintĂšgre directement avec diffĂ©rentes plateformes git telles que Github, Bitbucket, Assembla et Gitlab. Il demandera Ă lâutilisateur de donner Ă TravisCI les permissions dâaccĂ©der aux dĂ©pĂŽts quâil souhaite intĂ©grer avec TravisCI.
Par exemple, dans Github, il demandera les permissions suivantes :
user:email(lecture seule)read:org(lecture seule)repo: Accorde un accÚs en lecture et en écriture au code, aux statuts de commit, aux collaborateurs et aux statuts de déploiement pour les dépÎts et organisations publics et privés.
Secrets chiffrés
Variables dâenvironnement
Dans TravisCI, comme dans dâautres plateformes CI, il est possible de sauvegarder au niveau du dĂ©pĂŽt des secrets qui seront sauvegardĂ©s chiffrĂ©s et seront dĂ©cryptĂ©s et poussĂ©s dans la variable dâenvironnement de la machine exĂ©cutant la construction.
.png)
Il est possible dâindiquer les branches auxquelles les secrets seront disponibles (par dĂ©faut toutes) et aussi si TravisCI doit cacher sa valeur si elle apparaĂźt dans les journaux (par dĂ©faut, il le fera).
Secrets chiffrés personnalisés
Pour chaque dépÎt, TravisCI génÚre une paire de clés RSA, garde la clé privée, et rend la clé publique du dépÎt disponible pour ceux qui ont accÚs au dépÎt.
Vous pouvez accĂ©der Ă la clĂ© publique dâun dĂ©pĂŽt avec :
travis pubkey -r <owner>/<repo_name>
travis pubkey -r carlospolop/t-ci-test
Ensuite, vous pouvez utiliser cette configuration pour chiffrer des secrets et les ajouter Ă votre .travis.yaml. Les secrets seront dĂ©chiffrĂ©s lorsque la construction sera exĂ©cutĂ©e et accessibles dans les variables dâenvironnement.
.png)
Notez que les secrets chiffrĂ©s de cette maniĂšre nâapparaĂźtront pas dans les variables dâenvironnement des paramĂštres.
Fichiers Chiffrés Personnalisés
De la mĂȘme maniĂšre que prĂ©cĂ©demment, TravisCI permet Ă©galement de chiffrer des fichiers puis de les dĂ©chiffrer pendant la construction :
travis encrypt-file super_secret.txt -r carlospolop/t-ci-test
encrypting super_secret.txt for carlospolop/t-ci-test
storing result as super_secret.txt.enc
storing secure env variables for decryption
Please add the following to your build script (before_install stage in your .travis.yml, for instance):
openssl aes-256-cbc -K $encrypted_355e94ba1091_key -iv $encrypted_355e94ba1091_iv -in super_secret.txt.enc -out super_secret.txt -d
Pro Tip: You can add it automatically by running with --add.
Make sure to add super_secret.txt.enc to the git repository.
Make sure not to add super_secret.txt to the git repository.
Commit all changes to your .travis.yml.
Notez que lors du chiffrement dâun fichier, 2 variables dâenvironnement seront configurĂ©es dans le dĂ©pĂŽt, telles que :
.png)
TravisCI Enterprise
Travis CI Enterprise est une version sur site de Travis CI, que vous pouvez dĂ©ployer dans votre infrastructure. Pensez Ă la version âserveurâ de Travis CI. Lâutilisation de Travis CI vous permet dâactiver un systĂšme dâintĂ©gration continue/dĂ©ploiement continu (CI/CD) facile Ă utiliser dans un environnement que vous pouvez configurer et sĂ©curiser comme vous le souhaitez.
Travis CI Enterprise se compose de deux parties principales :
- Les services TCI (ou services principaux TCI), responsables de lâintĂ©gration avec les systĂšmes de contrĂŽle de version, de lâautorisation des builds, de la planification des tĂąches de build, etc.
- Le Worker TCI et les images dâenvironnement de build (Ă©galement appelĂ©es images OS).
Les services principaux TCI nécessitent les éléments suivants :
- Une base de données PostgreSQL11 (ou ultérieure).
- Une infrastructure pour dĂ©ployer un cluster Kubernetes ; il peut ĂȘtre dĂ©ployĂ© dans un cluster de serveurs ou sur une seule machine si nĂ©cessaire.
- En fonction de votre configuration, vous souhaiterez peut-ĂȘtre dĂ©ployer et configurer certains des composants vous-mĂȘme, par exemple, RabbitMQ - consultez le Configuration de Travis CI Enterprise pour plus de dĂ©tails.
Le Worker TCI nécessite les éléments suivants :
- Une infrastructure oĂč une image docker contenant le Worker et une image de build liĂ©e peuvent ĂȘtre dĂ©ployĂ©es.
- Une connectivité à certains composants des services principaux Travis CI - consultez le Configuration du Worker pour plus de détails.
Le nombre dâimages OS de Worker TCI et dâenvironnement de build dĂ©ployĂ©es dĂ©terminera la capacitĂ© totale concurrente du dĂ©ploiement de Travis CI Enterprise dans votre infrastructure.
.png)
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
HackTricks Cloud

