Configurer logo, logo_small en tant que code

Cher communauté discourse.

J’ai récemment automatisé le déploiement et la restauration de la sauvegarde de production sur une instance de développement et de test du forum discourse.
Cela permet d’avoir des données identiques sur tous les sites.
Pourtant, j’aimerais personnaliser le logo du site en fonction de l’instance.

En suivant ce site_setting.yml tel qu’annoncé dans cet autre sujet : Comprehensive list of SiteSettings?

J’ai pu configurer les paramètres clés des sites avec différentes variables.
Cependant, la partie logo n’est pas très bien documentée, j’ai donc essayé plusieurs approches.

...
# Available options:
#
# default               - The default value of the setting. For upload site settings, use the id of the upload seeded
#                         in db/fixtures/010_uploads.rb.
...

branding:
  logo:
    default: -5
    client: true
    type: upload
  logo_small:
    default: -6
    client: true
    type: upload

Fondamentalement, la valeur par défaut semble être un index entier tel que défini dans 010_uploads.rb :

  -5 => "discourse-logo-sketch.png",
  -6 => "discourse-logo-sketch-small.png",

Dans l’historique des paramètres de l’interface utilisateur, j’ai trouvé la référence au dernier logo et logo_small sous forme de liens vers le répertoire /upload.

par exemple : /uploads/default/original/3X/2/4/242dc879cbffed41ee64646a0dffded5c34bb9c6.png

Dans mon fichier .yml de paramètres d’application, j’ai alors commencé par expérimenter avec la valeur par défaut :

  # Backup
  DISCOURSE_s3_backup_bucket: "backup-test"

  # Logo
  DISCOURSE_logo: -5
  DISCOURSE_logo_small: -6

En définissant DISCOURSE_logo et DISCOURSE_logo_small sur la valeur par défaut comme spécifié dans le fichier site_settings.yml.

La reconstruction du site a provoqué des erreurs 500 et le site n’était plus opérationnel.
J’ai également essayé de passer une référence de chaîne à l’upload que je souhaitais être le logo de ce site spécifique, malheureusement, le même effet, un site inutilisable.

DISCOURSE_logo: "/uploads/default/original/3X/2/4/242dc879cbffed41ee64646a0dffded5c34bb9c6.png"

Ma réflexion était de télécharger différents logos pour le développement, le test et la production sur l’instance de production, puis après avoir restauré la sauvegarde productive, de m’assurer que la reconstruction du site pointerait vers le bon logo pour l’instance spécifique.

Toute aide serait grandement appréciée.

2 « J'aime »

J’ai suivi cette voie également (bien que pas aussi loin) pour les mêmes raisons.

Finalement, j’ai abandonné et j’ai vécu avec une faible différenciation entre les clones du site.

Au moins, il est relativement facile de renommer les volumes des serveurs, ce qui réduit la probabilité de faire quelque chose de vraiment stupide !!!