Échec de la mise à niveau... ligne 115 colonne 9 -e LANG=en_US.UTF-8

Aujourd’hui, Discourse a demandé des mises à jour. Lorsque je l’ai fait, il m’a dit de faire ce qui suit :

cd /var/discourse
git pull
./launcher rebuild app

Et ensuite, il a généré :
(\u003cunknown\u003e): n'a pas trouvé la clé attendue lors de l'analyse d'un mappage de bloc à la ligne 115, colonne 9 -e LANG=en_US.UTF-8
Voici mon app.yml :

## C'est le modèle de conteneur Docker tout-en-un et autonome de Discourse

##

## Après avoir modifié ce fichier, vous DEVEZ reconstruire

## /var/discourse/launcher rebuild app

##

## SOYEZ TRÈS PRUDENT LORS DE L'ÉDITION !

## LES FICHIERS YAML SONT EXTRÊMEMENT SENSIBLES AUX ERREURS D'ESPACEMENT OU D'ALIGNEMENT !

## visitez http://www.yamllint.com/ pour valider ce fichier si nécessaire

templates:

  - "templates/postgres.template.yml"

  - "templates/redis.template.yml"

  - "templates/web.template.yml"

  - "templates/web.ratelimited.template.yml"

  - "templates/web.socketed.template.yml"

## Décommentez ces deux lignes si vous souhaitez ajouter Lets Encrypt (https)

#  - "templates/web.ssl.template.yml"

#  - "templates/web.letsencrypt.ssl.template.yml"

## quels ports TCP/IP ce conteneur doit-il exposer ?

## Si vous souhaitez que Discourse partage un port avec un autre serveur web comme Apache ou nginx,

## voir https://meta.discourse.org/t/17247 pour plus de détails

#expose:

#  - "8888:80"   # http

#  - "443:443" # https

params:

  db_default_text_search_config: "pg_catalog.english"

  ## Définissez db_shared_buffers à un maximum de 25 % de la mémoire totale.

  ## sera défini automatiquement par bootstrap en fonction de la RAM détectée, ou vous pouvez le remplacer

  db_shared_buffers: "1024MB"

  ## peut améliorer les performances de tri, mais ajoute de la consommation mémoire par connexion

  #db_work_mem: "40MB"

  ## Quelle révision Git ce conteneur doit-il utiliser ? (défaut : tests-passed)

  #version: tests-passed

env:

  LC_ALL: en_US.UTF-8

  LANG: en_US.UTF-8

  LANGUAGE: en_US.UTF-8

  # DISCOURSE_DEFAULT_LOCALE: en

  ## Combien de requêtes web simultanées sont prises en charge ? Dépend de la mémoire et des cœurs CPU.

  ## sera défini automatiquement par bootstrap en fonction des CPU détectés, ou vous pouvez le remplacer

  # UNICORN_WORKERS: 2

  ## TODO : Le nom de domaine auquel cette instance Discourse répondra

  ## Obligatoire. Discourse ne fonctionnera pas avec un simple numéro IP.

  DISCOURSE_HOSTNAME: domain.com

  DISCOURSE_RELATIVE_URL_ROOT: /forums

  ## Décommentez si vous souhaitez que le conteneur démarre avec le même

  ## nom d'hôte (option -h) que celui spécifié ci-dessus (défaut "$hostname-$config")

  #DOCKER_USE_HOSTNAME: true

  ## TODO : Liste des e-mails séparés par des virgules qui seront rendus administrateurs et développeurs

  ## lors de la première inscription, par exemple 'user1@example.com,user2@example.com'

  DISCOURSE_DEVELOPER_EMAILS: 'hello@domain.com'

  ## TODO : Le serveur de messagerie SMTP utilisé pour valider les nouveaux comptes et envoyer des notifications

  # L'adresse, le nom d'utilisateur et le mot de passe SMTP sont requis

  # ATTENTION, le caractère '#' dans le mot de passe SMTP peut causer des problèmes !

  DISCOURSE_SMTP_ADDRESS: smtp.gmail.com

  DISCOURSE_SMTP_PORT: 587

  DISCOURSE_SMTP_USER_NAME: hello@domain.com

  DISCOURSE_SMTP_PASSWORD: "password"

  #DISCOURSE_SMTP_ENABLE_START_TLS: true           # (facultatif, défaut true)

  DISCOURSE_SMTP_DOMAIN: domain.com

  DISCOURSE_NOTIFICATION_EMAIL: hello@domain.com

  ## Si vous avez ajouté le modèle Lets Encrypt, décommentez ci-dessous pour obtenir un certificat SSL gratuit

  LETSENCRYPT_ACCOUNT_EMAIL: hello@domain.com

  ## L'adresse CDN http ou https pour cette instance Discourse (configurée pour tirer)

  ## voir https://meta.discourse.org/t/14857 pour plus de détails

  #DISCOURSE_CDN_URL: https://discourse-cdn.example.com

  ## La clé d'adresse IP de localisation MaxMind pour la recherche d'adresses IP

  ## voir https://meta.discourse.org/t/-/137387/23 pour plus de détails

  #DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456

## Le conteneur Docker est sans état ; toutes les données sont stockées dans /shared

volumes:

  - volume:

      host: /var/discourse/shared/standalone

      guest: /shared

  - volume:

      host: /var/discourse/shared/standalone/log/var-log

      guest: /var/log

## Les plugins vont ici

## voir https://meta.discourse.org/t/19157 pour plus de détails

hooks:

  after_code:

    - exec:

        cd: $home/plugins

        cmd:

          - git clone https://github.com/discourse/docker_manager.git

          - git clone https://github.com/cfstras/discourse-konami.git

          #- git clone https://github.com/discourse/discourse-adplugin.git

          - git clone https://github.com/discourse/discourse-cakeday.git

          #- git clone https://github.com/discourse/discourse-docs.git

          - git clone https://github.com/discourse/discourse-sitemap.git

          - git clone https://github.com/discourse/discourse-solved.git

          #- git clone https://github.com/discourse/discourse-tooltips.git

          - git clone https://github.com/discourse/discourse-yearly-review.git

          - git clone https://github.com/merefield/discourse-word-cloud.git

## Toutes commandes personnalisées à exécuter après la construction

run:

    - exec: echo "Début des commandes personnalisées"

    - exec:

        cd: $home

        cmd:

          echo entrée dans $home

          - mkdir -p public/forums

          #- cd public/forums

          - ln -s ../uploads

          - ln -s ../backups

          #- rm public/uploads

          #- rm public/backups

    - replace:

       global: true

       filename: /etc/nginx/conf.d/discourse.conf

       from: proxy_pass http://discourse;

       to: |

          rewrite ^/(.*)$ /forums/$1 break;

          proxy_pass http://discourse;

    - replace:

       filename: /etc/nginx/conf.d/discourse.conf

       from: etag off;

       to: |

          etag off;

          location /forums {

             rewrite ^/forums/?(.*)$ /$1;

          }

    - replace:

         filename: /etc/nginx/conf.d/discourse.conf

         from: $proxy_add_x_forwarded_for

         to: $http_your_original_ip_header

         global: true

    - exec: awk -F\\# '{print $1;}' ~/.ssh/authorized_keys | awk 'BEGIN { print "Clés SSH autorisées pour ce conteneur :"; } NF>=2 {print $NF;}'

    - exec: echo "Fin des commandes personnalisées"

Je pense que c’est la section replace à la fin. Son indentation est différente de celle du dessus.

L’avez-vous modifiée depuis la dernière mise à niveau ?

Je n’y ai pas touché mais cela faisait une heure, alors j’ai posté. Même yamllint.com s’en plaindrait.

Ensuite, j’ai effectué une recherche et un remplacement par expression régulière pour supprimer tous les commentaires et, d’une manière ou d’une autre, cela a fonctionné. Il compile pendant que j’écris ceci. Je croise les doigts. Si cela échoue, je devrai malheureusement abandonner.

1 « J'aime »