Gentile community di Discourse.
Recentemente ho automatizzato il deployment e il ripristino del backup di produzione su un’istanza dev e test del forum Discourse.
Ciò consente di avere dati identici su tutti i siti.
Tuttavia, vorrei personalizzare il logo del sito a seconda dell’istanza.
Seguendo questo site_setting.yml come pubblicizzato in questo altro topic: Comprehensive list of SiteSettings?
Sono riuscito a configurare le impostazioni chiave dei siti con variabili diverse.
Tuttavia, la parte del logo non è molto ben documentata, quindi ho provato diversi approcci.
...
# 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
Fondamentalmente, il default sembra essere un indice intero come definito in 010_uploads.rb:
-5 => "discourse-logo-sketch.png",
-6 => "discourse-logo-sketch-small.png",
Nella cronologia delle impostazioni dell’interfaccia utente ho trovato il riferimento all’ultimo logo e logo_small come collegamenti alla directory /upload.
ad esempio: /uploads/default/original/3X/2/4/242dc879cbffed41ee64646a0dffded5c34bb9c6.png
Nel mio file .yml delle impostazioni dell’app ho quindi iniziato sperimentando con il valore di default:
# Backup
DISCOURSE_s3_backup_bucket: "backup-test"
# Logo
DISCOURSE_logo: -5
DISCOURSE_logo_small: -6
Impostando DISCOURSE_logo e DISCOURSE_logo_small al default come specificato in site_settings.yml
la ricostruzione del sito ha causato alcuni 500 e il sito non era più operativo.
Ho anche provato a passare un riferimento stringa all’upload che vorrei fosse il logo di questo specifico sito, sfortunatamente con lo stesso effetto, un sito inutilizzabile.
DISCOURSE_logo: "/uploads/default/original/3X/2/4/242dc879cbffed41ee64646a0dffded5c34bb9c6.png"
La mia catena di pensieri era quella di caricare loghi diversi per dev, test e prod sull’istanza prod, quindi dopo aver ripristinato il backup produttivo, assicurarsi che la ricostruzione del sito puntasse al logo corretto per la specifica istanza.
Qualsiasi aiuto sarebbe molto apprezzato.