role_drone_runner_exec/README.md

200 lines
5.8 KiB
Markdown
Raw Normal View History

2022-10-17 11:06:34 +00:00
# role_drone_runner_exec
2022-10-17 11:05:27 +00:00
2022-10-17 11:06:34 +00:00
Rôle de déploiement d'un runner-exec drone.io.
## Variables
### drone_runner_exec_prerequisites
Liste des paquets pré-requis.
<span style="text-decoration: underline">Valeur par défaut:</span> `["curl", "jq"]`
### drone_runner_exec_url
URL pointant vers l'API de github.com fournissant le lien de téléchargement de l'archive.
<span style="text-decoration: underline">Valeur par défaut:</span> `https://api.github.com/repos/drone-runners/drone-runner-exec/releases/latest`
### drone_runner_exec_architecture
Nécessaire pour télécharger la bonne archive depuis github.com.<br />
Les architectures disponibles sont visibles dans [la liste de release du dépôt](https://github.com/drone-runners/drone-runner-exec/releases).
<span style="text-decoration: underline">Valeur par défaut:</span> `arm64`
### drone_runner_exec_rpc_proto
Protocole utilisé pour contacter le serveur drone.io.<br />
Les valeurs peuvent être `http` ou `https`.
<span style="text-decoration: underline">Valeur par défaut:</span> aucune
### drone_runner_exec_rpc_host
Adresse IP ou nom d'hôte suivi du numéro de port du serveur drone.io.
<span style="text-decoration: underline">Valeur par défaut:</span> aucune
### drone_runner_exec_rpc_secret
Clé utilisée par le serveur drone.io.
<span style="text-decoration: underline">Valeur par défaut:</span> aucune
### drone_runner_exec_log_file
Emplacement des journaux.
<span style="text-decoration: underline">Valeur par défaut:</span> `/var/log/drone-runner-exec/log.txt`
### drone_runner_exec_log_file_max_size
Taille maximal en mégaoctets d'un journal.
<span style="text-decoration: underline">Valeur par défaut:</span> `10`
### drone_runner_exec_log_file_max_age
Nombre de jour où sera conservé un journal.
<span style="text-decoration: underline">Valeur par défaut:</span> `7`
### drone_runner_exec_log_file_max_backup
Nombre d'ancien journaux conservés.
<span style="text-decoration: underline">Valeur par défaut:</span> `0`
### drone_runner_exec_debug
Activer le mode debug.
<span style="text-decoration: underline">Valeur par défaut:</span> `false`
### drone_runner_exec_trace
Activer le mode trace.
<span style="text-decoration: underline">Valeur par défaut:</span> `false`
### drone_runner_exec_rpc_dump
Afficher le détail des communication entre le serveur et le runner en activant les paramètre suivants :
- `DRONE_RPC_DUMP_HTTP`
- `DRONE_RPC_DUMP_HTTP_BODY`
Activer cette option génère énormément de ligne en sortie ; à n'activer que sur une très petite période.
<span style="text-decoration: underline">Valeur par défaut:</span> `false`
### drone_runner_exec_runner_name
Définir le nom du runner au lieu d'utiliser le nom d'hôte.
<span style="text-decoration: underline">Valeur par défaut:</span> aucune
### drone_runner_exec_runner_labels
Définir les étiquettes (tags) pour le runner.<br />
Cette option sert à cibler les runners depuis les pipelines.
<span style="text-decoration: underline">Valeur par défaut:</span> aucune
### drone_runner_exec_ui_username
Activer l'interface web du runner en définissant un nom d'utilisateur pour s'y connecter.
<span style="text-decoration: underline">Valeur par défaut:</span> aucune
### drone_runner_exec_ui_password
Activer l'interface web du runner en définissant un mot de passe pour s'y connecter.
<span style="text-decoration: underline">Valeur par défaut:</span> aucune
### drone_runner_exec_user: drone_runner
Utilisateur exécutant le runner.
<span style="text-decoration: underline">Valeur par défaut:</span> `drone_runner`
### drone_runner_exec_group: drone_runner
Groupe exécutant le runner.
<span style="text-decoration: underline">Valeur par défaut:</span> `drone_runner`
### drone_runner_exec_config_base_path
Chemin vers le fichier de configuration du runner.
<span style="text-decoration: underline">Valeur par défaut:</span> `/home/{{ drone_runner_exec_user }}/.drone-runner-exec`
## Exemple d'utilisation
### inventory.yml
```yaml
---
all:
hosts:
host1.ykn.local:
```
### group_vars/all.yml
```yaml
---
drone_runner_exec_architecture: arm64
drone_runner_exec_rpc_proto: http
drone_runner_exec_rpc_host: "192.168.1.1:9082"
drone_runner_exec_rpc_secret: !vault |
$ANSIBLE_VAULT;1.1;AES256
31383335306534333462613832646537376232386465643262306134653931383863336133306561
3964303562336532393334343530636161343366656539620a326337376232623163323439303735
39656634356366306361366537663939653336323432646335656230663133393039343638363536
6565336166666261350a343937373733396131623962303237316661666539653432326136306239
3538
drone_runner_api_url: "https://drone.ykn.local/api"
drone_runner_api_key: !vault |
$ANSIBLE_VAULT;1.1;AES256
31383335306534333462613832646537376232386465643262306134653931383863336133306561
3964303562336532393334343530636161343366656539620a326337376232623163323439303735
39656634356366306361366537663939653336323432646335656230663133393039343638363536
6565336166666261350a343937373733396131623962303237316661666539653432326136306239
3538
drone_runner_api_requests:
- path: /repos/ansible/playbook_lxc/secrets
name: ANSIBLE_VAULT_PASSWORD
data: !vault |
$ANSIBLE_VAULT;1.1;AES256
31383335306534333462613832646537376232386465643262306134653931383863336133306561
3964303562336532393334343530636161343366656539620a326337376232623163323439303735
39656634356366306361366537663939653336323432646335656230663133393039343638363536
6565336166666261350a343937373733396131623962303237316661666539653432326136306239
3538
pull_request: false
```
### host_vars/host1.ykn.local.yml
```yaml
drone_runner_exec_runner_name: "runner-1"
drone_runner_exec_runner_labels: "runner_name: {{ drone_runner_exec_runner_name }}"
```
### playbook.yml
```yaml
---
- hosts: 'all'
roles:
- name: drone_runner_exec
```