Aller au contenu

Importer les clés depuis un fichier

Configuration

Remplissez un seul fichier avec vos sources, clients de téléchargement, serveurs multimédias, sites de sous-titres et votre messagerie, importez-le, et évitez de saisir chaque clé dans les paramètres.

  • HolyArrs tourne dans Docker avec sa configuration dans /config.
  • Vous pouvez créer une clé API de propriétaire dans Settings > API > API keys (Paramètres > API > Clés API).
  1. Copiez holyarrs-secrets.template.yaml vers holyarrs-secrets.yaml.

  2. Remplissez ce que vous utilisez. Laissez le reste vide ; vide veut dire ignoré.

  3. Rendez-le lisible par vous seul :

    Terminal window
    chmod 600 holyarrs-secrets.yaml
  4. Montez-le en lecture seule dans le conteneur :

    volumes:
    - /srv/holyarrs/config:/config
    - /srv/holyarrs/holyarrs-secrets.yaml:/run/secrets/holyarrs.yaml:ro
  5. Créez une clé API de propriétaire avec la portée admin dans Settings > API > API keys. Mettez-la dans le bloc holyarrs du fichier avec l’adresse http://127.0.0.1:6262.

  6. Faites un essai à blanc. Il ne change rien :

    Terminal window
    docker exec holyarrs /holyarrs import-secrets -file /run/secrets/holyarrs.yaml -dry-run

    Vous devriez voir une ligne would set par élément.

  7. Lancez-le pour de bon (même commande sans -dry-run). Vous devriez voir des lignes set et le code de sortie 0.

  8. Vérifiez les nouvelles sources et les nouveaux clients de téléchargement, puis reprenez-les. Testez les nouveaux serveurs multimédias et les nouvelles alertes, puis activez-les.

  9. Supprimez le fichier sur l’hôte (voir Supprimer le fichier). Supprimez aussi la clé API si vous n’en avez plus besoin.

Ce que devient chaque bloc

Lien vers Ce que devient chaque bloc
Dans le fichier Devient
trakt.client_id La clé d’application Trakt (Settings > Outside lists (Paramètres > Listes externes)).
tmdb, tvdb Acceptés pour les anciens fichiers. Les métadonnées n’ont besoin d’aucune clé.
opensubtitles, subdl Un site de sous-titres avec votre compte.
addic7ed Un site de sous-titres Addic7ed, séries uniquement.
indexers Une source par entrée, en pause.
jackett, prowlarr Leur clé complète toute entrée indexers à la même adresse qui n’a pas de clé.
qbittorrent, sabnzbd Un client de téléchargement, en pause.
nzbget, transmission, deluge Ignorés. L’import ne sait pas encore les configurer ; ajoutez-les dans Settings > Downloaders (Paramètres > Clients de téléchargement).
jellyfin, emby, plex Un serveur multimédia, désactivé tant que vous ne l’avez pas testé.
smtp, discord, webhook Les alertes « Email », « Discord » et « Webhook », désactivées tant que vous ne les avez pas testées.
radarr, sonarr, lidarr, prowlarr, bazarr, seerr Une clé enregistrée pour Move from other apps (migrer depuis d’autres applications).
holyarrs Sert uniquement à joindre HolyArrs pendant qu’il tourne. Jamais enregistré.

Chaque clé va dans le coffre chiffré, comme une clé saisie dans les paramètres.

L’interrupteur du réseau local

Lien vers L’interrupteur du réseau local

Chaque bloc qui a une adresse accepte allow_local_network: true. Il permet à cet élément de joindre cette machine ou votre réseau domestique (192.168.x.x, 10.x.x.x, un nom de conteneur). Sans lui, l’élément ne joint qu’Internet, et un client de téléchargement chez vous ne répondra donc pas. HolyArrs ne le devine jamais à partir de l’adresse. C’est le même interrupteur que May reach the local network (peut accéder au réseau local) dans les paramètres.

Avec HolyArrs arrêté

Lien vers Avec HolyArrs arrêté

Lancez un conteneur temporaire sur la même configuration. Il enregistre directement dans le dossier de configuration et n’a pas besoin du bloc holyarrs :

Terminal window
docker stop holyarrs
docker run --rm -e PUID=1000 -e PGID=1000 \
-v /srv/holyarrs/config:/config \
-v /srv/holyarrs/holyarrs-secrets.yaml:/run/secrets/holyarrs.yaml:ro \
holyarrs/holyarrs:latest import-secrets -file /run/secrets/holyarrs.yaml
docker start holyarrs

Utilisez les mêmes PUID et PGID que l’application, sinon le dossier de configuration est attribué à 1000:1000. L’utilisateur PUID doit pouvoir lire le fichier. Si vous utilisez HOLYARRS_MASTER_KEY_FILE, donnez au conteneur temporaire la même variable et le même montage.

Le relancer est sans danger. Les éléments identiques affichent unchanged ; seuls les éléments modifiés sont enregistrés.

Élément Reconnu par
Sources le nom
Clients de téléchargement, serveurs multimédias le type et l’adresse
Alertes le nom et le type
Sites de sous-titres, anciennes applications le type

Une source ou un client de téléchargement dont l’adresse ou la clé a changé est remis en pause. Une fois que vous l’avez repris vous-même, un nouveau lancement le laisse tourner. Un api_key vide sur une entrée indexers garde la clé stockée ; ajoutez clear_key: true pour la supprimer.

Supprimer le fichier

Lien vers Supprimer le fichier

Avec -delete, la commande écrase le fichier avec des zéros et le supprime, seulement après un import où rien n’a échoué. Un montage en lecture seule ne peut pas être supprimé depuis l’intérieur du conteneur, supprimez donc le fichier sur l’hôte :

Système Commande
Linux shred -u holyarrs-secrets.yaml
macOS rm -P holyarrs-secrets.yaml
Windows Remove-Item holyarrs-secrets.yaml, puis videz la Corbeille.

Sur les SSD et les systèmes de fichiers à copie sur écriture (copy-on-write), d’anciens blocs peuvent rester sur le disque. Les clés elles-mêmes se trouvent maintenant dans le coffre chiffré.

Si ça ne fonctionne pas

Lien vers Si ça ne fonctionne pas
Symptôme Cause Solution
Le fichier est lisible par d’autres utilisateurs Permissions trop ouvertes. Lancez chmod 600. Sous Windows, gardez-le dans un dossier que vous seul pouvez ouvrir.
Une clé inconnue a arrêté l’import Faute de frappe ou tabulation sur la ligne indiquée. Corrigez cette ligne. Rien n’a été enregistré.
Le http simple est refusé L’adresse holyarrs n’est pas sur cette machine. Lancez la commande dans le conteneur avec http://127.0.0.1:6262, ou utilisez https.
Un client de téléchargement chez vous ne répond pas Pas d’autorisation pour le réseau local. Mettez allow_local_network: true sur ce bloc.
Le conteneur temporaire a changé le propriétaire des dossiers PUID/PGID différents. Utilisez les PUID et PGID de l’application.
-delete n’a rien fait Quelque chose a échoué, ou le montage est en lecture seule. Supprimez-le sur l’hôte.
Options de commande et codes de sortie
Option Ce que ça fait Par défaut
-file <path> Le fichier de secrets. aucun
-dry-run Dit seulement ce qui serait défini. désactivé
-config <folder> Le dossier de configuration. /config
-delete Après un import sans échec, écrase le fichier avec des zéros et le supprime. désactivé
-forget-move-credentials Supprime toutes les clés d’anciennes applications enregistrées, puis s’arrête. désactivé
-allow-http-lan Autorise le http:// simple vers une adresse du réseau domestique. Affiche un avertissement. désactivé
-allow-readable-file Accepte un fichier que d’autres utilisateurs peuvent lire. Docker Desktop sous Windows présente tous les fichiers comme lisibles. désactivé

L’adresse holyarrs doit être en https://, ou en http:// simple vers cette machine uniquement (127.0.0.1, ::1, localhost). En http simple, votre clé de propriétaire et tout le fichier circulent sans chiffrement.

Code de sortie Signification
0 Tous les éléments se sont bien passés.
1 Un élément a échoué. Corrigez le fichier et relancez.
2 Ligne de commande ou fichier incorrect.
Sortie

Une ligne par élément : set (ou would set lors d’un essai à blanc, parfois avec une remarque), unchanged, skipped (empty), skipped (why) ou failed: why. La commande n’affiche jamais de clé, de mot de passe, de jeton ni d’adresse. L’Historique reçoit un seul événement, avec des décomptes uniquement. Une erreur qui montrerait une valeur de votre fichier affiche [hidden] à la place.

Format du fichier

Une petite partie stricte de YAML :

  • des blocs par indentation avec des espaces, jamais de tabulations ; des listes avec - ,
  • des valeurs simples, entre "double quotes" ou entre 'single quotes' (écrivez un ' deux fois à l’intérieur de guillemets simples),
  • # commence un commentaire en début de ligne ou après une espace hors guillemets, mettez donc entre guillemets un mot de passe qui contient #,
  • mettez entre guillemets une valeur qui commence par &, *, !, |, >, [, {, %, @ ou un accent grave, ou qui contient : .

Une clé inconnue ou un fichier de plus de 256 Ko arrête tout l’import avant que quoi que ce soit ne soit enregistré ; le message indique la clé et la ligne. Un lien vers le fichier est refusé.

Champs particuliers
Champ Règle
SABnzbd Demande l’api_key complète. Un nzb_key, un nom d’utilisateur ou un mot de passe est ignoré et jamais stocké.
tvdb.api_key, tvdb.unique_user_key, trakt.redirect_urls Acceptés et ignorés.
smtp.host Nom du serveur uniquement, sans schéma ni port.
smtp.port 1 à 65535. Par défaut 587.
smtp.from Une seule adresse e-mail simple.
Blocs d’anciennes applications Utilisés dans Move from other apps avec Use the saved key (utiliser la clé enregistrée). Jamais affichés, réservés au propriétaire, supprimés après une lecture réussie.

HolyArrs est gratuit. S'il vous a fait gagner du temps, mettez-lui une étoile sur GitHub, sponsorisez-le ou offrez-moi un café.