prog:travis
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
prog:travis [2020/04/04 19:11] – ↷ Page déplacée de travis à prog:travis root | prog:travis [2020/11/22 17:52] (Version actuelle) – [Deploy key] : déplacement de la création de la clé dans prog:ssh root | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | Ici, je ne parle que de l' | + | ~~NOCACHE~~ |
- | ====Lignes de commande==== | + | =====travis.yml===== |
- | ===Installation=== | + | ====Hello world==== |
+ | |||
+ | ===Cas basique commenté=== | ||
+ | |||
+ | {{gh> | ||
+ | |||
+ | ===Ordre d' | ||
+ | |||
+ | OPTIONAL Install apt addons | ||
+ | OPTIONAL Install cache components | ||
+ | before_install | ||
+ | install | ||
+ | before_script | ||
+ | script | ||
+ | OPTIONAL before_cache (if and only if caching is effective) | ||
+ | after_success or after_failure | ||
+ | OPTIONAL before_deploy (if and only if deployment is active) | ||
+ | OPTIONAL deploy | ||
+ | OPTIONAL after_deploy (if and only if deployment is active) | ||
+ | after_script | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | =====Lignes de commande===== | ||
+ | |||
+ | ====Installation==== | ||
Il faut l' | Il faut l' | ||
Ligne 9: | Ligne 34: | ||
<code bash> | <code bash> | ||
gem install travis | gem install travis | ||
- | travis login --com | ||
</ | </ | ||
- | ===Stockage sécurisé=== | + | ====Login==== |
- | [[https:// | + | <WRAP center round info 60%> |
+ | Pour toute utilisation de '' | ||
+ | </WRAP> | ||
- | | + | ===Manuel=== |
+ | |||
+ | travis login --com | ||
+ | |||
+ | ===Automatique avec GitHub=== | ||
+ | |||
+ | | ||
+ | |||
+ | Depuis [[https:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | * Utilisation de Travis | ||
+ | |||
+ | travis login --pro --github-token $GITHUB_PERSONAL_TOKEN | ||
+ | |||
+ | ====Stockage sécurisé==== | ||
+ | |||
+ | ===Chiffrer un fichier automatiquement=== | ||
+ | |||
+ | [[https:// | ||
<code bash> | <code bash> | ||
- | travis encrypt-file | + | travis encrypt-file |
</ | </ | ||
- | Mais cette technique souffre | + | Cela va créer un mot de passe automatiquement, |
- | Il faut alors utiliser la méthode manuelle avec OpenSSL | + | <WRAP center round important 60%> |
+ | Sous Windows, cette technique souffre d'un bug. [[https:// | ||
+ | </ | ||
- | * OpenSSL | + | Il faut alors utiliser la méthode manuelle avec '' |
- | On commence par ajouter le mot de passe en chiffré dans '' | + | ===Chiffrer un fichier manuellement=== |
+ | |||
+ | * Définition du mot de passe | ||
+ | |||
+ | On commence par ajouter le mot de passe en chiffré dans '' | ||
<code bash> | <code bash> | ||
- | travis encrypt | + | travis encrypt --pro PASSWORD_OPENSSL=" |
</ | </ | ||
et accepter les modifications. | et accepter les modifications. | ||
- | Chiffrer | + | <WRAP center round important 60%> |
+ | '' | ||
+ | |||
+ | [[https:// | ||
+ | </ | ||
+ | |||
+ | On peut ajouter la variable d' | ||
+ | |||
+ | <code yaml> | ||
+ | env: | ||
+ | global: | ||
+ | - secure: " | ||
+ | </ | ||
+ | |||
+ | ou à un seul job : | ||
+ | |||
+ | <code yaml> | ||
+ | jobs: | ||
+ | include: | ||
+ | - language: cpp | ||
+ | |||
+ | env: | ||
+ | - secure: " | ||
+ | |||
+ | </ | ||
+ | |||
+ | * Chiffrement d'un fichier | ||
+ | |||
+ | Les options par défaut ne sont plus sécurisées ('' | ||
<code bash> | <code bash> | ||
- | openssl aes-256-cbc -md sha512 -pbkdf2 -iter 100000 -k "$password_openssl" -in travis/ | + | openssl aes-256-cbc -md sha512 -pbkdf2 -iter 100000 -k "$PASSWORD_OPENSSL" -in travis/ |
</ | </ | ||
- | Et pour déchiffrer, | + | Et pour déchiffrer |
<code bash> | <code bash> | ||
before_install: | before_install: | ||
- | - openssl aes-256-cbc -md sha512 -pbkdf2 -iter 100000 -k "$password_openssl" -out travis/ | + | - openssl aes-256-cbc -md sha512 -pbkdf2 -iter 100000 -k "$PASSWORD_OPENSSL" -out travis/ |
+ | </ | ||
+ | |||
+ | ===Deploy key=== | ||
+ | |||
+ | Les clés de déploiement permettent de ne pas avoir besoin de saisir le mot de passe pour faire un push vers un dépôt. | ||
+ | |||
+ | * Création de la clé | ||
+ | |||
+ | Il faut commencer par [[prog: | ||
+ | |||
+ | Puis ouvrir le fichier '' | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Ajouter le [[# | ||
+ | |||
+ | * Configuration de git | ||
+ | |||
+ | Dans le fichier '' | ||
+ | |||
+ | <code yaml> | ||
+ | before_install: | ||
+ | # You must add options either openssl will says : | ||
+ | # *** WARNING : deprecated key derivation used. | ||
+ | - openssl aes-256-cbc -md sha512 -pbkdf2 -iter 100000 -k " | ||
+ | # Open a connection to the authentication agent so ssh-add work. | ||
+ | - eval $(ssh-agent -s) | ||
+ | # ssh-add says: | ||
+ | # Permissions 0664 for ' | ||
+ | # It is required that your private key files are NOT accessible by others. | ||
+ | - chmod 600 travis/ | ||
+ | - ssh-add travis/ | ||
+ | # Configuration de l' | ||
+ | - git config --global user.name " | ||
+ | - git config --global user.email " | ||
+ | </ | ||
+ | |||
+ | * Ajout du dépôt git à modifier dans '' | ||
+ | |||
+ | <code yaml> | ||
+ | script: | ||
+ | # Il faut impérativement utiliser ssh:// | ||
+ | # sinon, la clé importée via ssh-add ne sera pas utilisée. | ||
+ | - git clone ssh:// | ||
+ | - cd wiki_le_garrec_fr_travis | ||
+ | # Faire des modifications et les ajouter via git add | ||
+ | - git commit -m " | ||
+ | - git push | ||
</ | </ | ||
Ligne 54: | Ligne 182: | ||
Voir la page [[prog: | Voir la page [[prog: | ||
+ | |||
+ | ====Messages d' | ||
+ | |||
+ | * '' | ||
+ | |||
+ | Peut apparaître si l'OS est minimaliste, | ||
+ | |||
+ | Il suffit de désactiver le mode interactif : | ||
+ | |||
+ | travis lint $f -x --no-interactive |
prog/travis.1586020269.txt.gz · Dernière modification : 2020/04/04 19:11 de root