Información Básica de TravisCI
Tip
Aprende y practica AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Aprende y practica Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Apoya a HackTricks
- Consulta los subscription plans!
- Únete al 💬 Discord group o al telegram group o síguenos en Twitter 🐦 @hacktricks_live.
- Comparte trucos de hacking enviando PRs a los HackTricks y HackTricks Cloud github repos.
Acceso
TravisCI se integra directamente con diferentes plataformas de git como Github, Bitbucket, Assembla y Gitlab. Pedirá al usuario que le otorgue a TravisCI permisos para acceder a los repos que desea integrar con TravisCI.
Por ejemplo, en Github pedirá los siguientes permisos:
user:email(solo lectura)read:org(solo lectura)repo: Concede acceso de lectura y escritura al código, estados de confirmación, colaboradores y estados de implementación para repositorios y organizaciones públicas y privadas.
Secretos Encriptados
Variables de Entorno
En TravisCI, al igual que en otras plataformas de CI, es posible guardar secretos a nivel de repositorio que se guardarán encriptados y serán desencriptados y enviados en la variable de entorno de la máquina que ejecuta la construcción.
.png)
Es posible indicar las ramas a las que los secretos estarán disponibles (por defecto todas) y también si TravisCI debería ocultar su valor si aparece en los registros (por defecto lo hará).
Secretos Encriptados Personalizados
Para cada repositorio TravisCI genera un par de claves RSA, mantiene la privada, y hace disponible la clave pública del repositorio a aquellos que tienen acceso al repositorio.
Puedes acceder a la clave pública de un repositorio con:
travis pubkey -r <owner>/<repo_name>
travis pubkey -r carlospolop/t-ci-test
Luego, puedes usar esta configuración para encriptar secretos y agregarlos a tu .travis.yaml. Los secretos serán desencriptados cuando se ejecute la construcción y accesibles en las variables de entorno.
.png)
Ten en cuenta que los secretos encriptados de esta manera no aparecerán listados en las variables de entorno de la configuración.
Archivos Encriptados Personalizados
De la misma manera que antes, TravisCI también permite encriptar archivos y luego desencriptarlos durante la construcción:
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.
Tenga en cuenta que al cifrar un archivo se configurarán 2 variables de entorno dentro del repositorio, como:
.png)
TravisCI Enterprise
Travis CI Enterprise es una versión on-prem de Travis CI, que puede implementar en su infraestructura. Piense en la versión ‘servidor’ de Travis CI. Usar Travis CI le permite habilitar un sistema de Integración Continua/Despliegue Continuo (CI/CD) fácil de usar en un entorno, que puede configurar y asegurar como desee.
Travis CI Enterprise consta de dos partes principales:
- Servicios de TCI (o Servicios Centrales de TCI), responsables de la integración con sistemas de control de versiones, autorización de compilaciones, programación de trabajos de compilación, etc.
- TCI Worker e imágenes del entorno de compilación (también llamadas imágenes de SO).
Los servicios centrales de TCI requieren lo siguiente:
- Una base de datos PostgreSQL11 (o posterior).
- Una infraestructura para implementar un clúster de Kubernetes; se puede implementar en un clúster de servidores o en una sola máquina si es necesario.
- Dependiendo de su configuración, es posible que desee implementar y configurar algunos de los componentes por su cuenta, por ejemplo, RabbitMQ - consulte la Configuración de Travis CI Enterprise para más detalles.
El Worker de TCI requiere lo siguiente:
- Una infraestructura donde se pueda implementar una imagen de docker que contenga el Worker y una imagen de compilación vinculada.
- Conectividad a ciertos componentes de los Servicios Centrales de Travis CI - consulte la Configuración del Worker para más detalles.
La cantidad de imágenes de OS de Worker de TCI y del entorno de compilación implementadas determinará la capacidad total concurrente de la implementación de Travis CI Enterprise en su infraestructura.
.png)
Tip
Aprende y practica AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Aprende y practica Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Apoya a HackTricks
- Consulta los subscription plans!
- Únete al 💬 Discord group o al telegram group o síguenos en Twitter 🐦 @hacktricks_live.
- Comparte trucos de hacking enviando PRs a los HackTricks y HackTricks Cloud github repos.
HackTricks Cloud

