diff --git a/README.md b/README.md index 6d432f4..50cae2f 100644 --- a/README.md +++ b/README.md @@ -1,29 +1,65 @@ -# Les pmo-actions -Les actions de la *petite maison orange* sont des actions réutilisables dans un environnement Gitea. -Elles sont avant tout faites pour me faciliter la vie dans la gestion de mon nuage personnel. +# L'action `build-image` -Pour les inclures utiliser la syntaxe: +Cette action permet de créer une image Docker et de la taguer avec les outils `docker` ou `podman`. +Elle est conçue pour être utilisée dans des workflows Gitea avec des runners auto-hébergés. + +--- + +## 🔧 Utilisation ```yaml - uses: https://gargoton.petite-maison-orange.fr/pmo-actions/ACTION@main +- name: Build and tag Docker image + uses: https://gargoton.petite-maison-orange.fr/pmo-actions/build-image@main + with: + image_name: my_image + image_tags: latest stable ``` -En remplaçant `ACTION` par l'action désirée. +--- -## L'action `healthchecks-ping` +## 📥 Paramètres -Elle a pour but d'envoyer un ping sur un serveur [`healthchecks.io`](https://healthchecks.io/). Elles acceptent -quatre valeurs en entrée, dont deux premières sont obligatoires. +| Nom | Obligatoire | Par défaut | Description | +|------------------|-------------|-------------------------------------|---------------------------------------------------------------------------------| +| `image_name` | ✅ | – | Nom de l'image à construire. | +| `image_tags` | ✅ | – | Liste des tags à ajouter à l'image. | +| `registry_server`| ❌ | `niepce.petite-maison-orange.fr` | Adresse du serveur d'enregistrement des images Docker. | +| `build_command` | ❌ | `docker` | Commande à utiliser pour construire l'image (`docker` ou `podman`). | +| `tag_command` | ❌ | `podman` | Commande à utiliser pour taguer l'image (`docker` ou `podman`). | +| `debug` | ❌ | `false` | Mode débogage. Si activé, affiche des informations détaillées pendant l'exécution. | -- `server`: l'adresse du serveur inclue le protocole - par exemple: `https://monserveur.mondomaine.io` -- `uuid`: l'identifiant hexadecimal du service. l'*uuid* sera combiné avec - l'adresse du serveur pour construire l'URL à sonner: - `$serveur/ping/$uuid` +--- -- `command`: cette valeur peut prendre 4 valeurs : `start`|`log`|`fail`|`stop`. +## ▶️ Exemple de workflow -- `message`: Le message qui sera logguer lors du ping sur le serveur [`healthchecks.io`](https://healthchecks.io/). +```yaml +- name: Build Docker image + uses: https://gargoton.petite-maison-orange.fr/pmo-actions/build-image@main + with: + image_name: my_image + image_tags: latest stable +- name: Notify Healthchecks + uses: https://gargoton.petite-maison-orange.fr/pmo-actions/healthchecks-ping@main + with: + check_server: https://hc-ping.com + check_uuid: a1b2c3d4-1234-5678-9abc-def123456789 + check_command: start +``` +--- + +## ⚙️ Comportement + +- Si la commande `build_command` échoue, l'action renvoie une erreur. +- Si la commande `tag_command` échoue, l'action renvoie une erreur. +- Si les commandes `build_command` et `tag_command` diffèrent, l'image est transférée du format de la commande `build_command` vers celui de `tag_command`. + +--- + +## 🧡 À propos + +Cette action fait partie des actions de la **Petite Maison Orange**. +Toutes les actions sont disponibles ici : +👉 [https://gargoton.petite-maison-orange.fr/pmo-actions/](https://gargoton.petite-maison-orange.fr/pmo-actions/)