Erreur "Les deux points ne peuvent pas être utilisés dans les valeurs mappées non citées" dans services.yml
P粉448130258
P粉448130258 2024-03-29 10:32:35
0
1
380

Je viens ici poser ma question car je ne sais vraiment pas quoi faire et je ne trouve pas la bonne information sur internet. Je recherche des paramètres de liaison de service pour communiquer avec l'API BigQuery (GCP). Pour ce faire, j'ai transmis les paramètres de "parameters.yml" et lié les paramètres dans "services.yml". Lorsque je recharge la page, j'obtiens l'erreur : "File /home/docker/symfony/src/xxx/DependencyInjection/../Resources/config/services.yml" ne contient pas de YAML valide : les deux points ne peuvent pas être utilisés sans guillemets. la valeur mappée de la ligne 84 ci-dessous (près de "$bucketName:%google_bucket_name%").

Savez-vous quelle est la racine du problème ?

Veuillez rechercher les parties pertinentes des fichiers "services.yml" et "parameters.yml" dans la pièce jointe

-services.yml

  AdminBundle\Services\CustomerChangeSetService:
    public: true
    autowire: true
    autoconfigure: true
    bind:
      $googleProjectId: "%google_project_id%"
      $googlePath: "%kernel.root_dir%/../%google_token_path%"
      $googleQuery: "%google_bigquery_dataset%"
      $googleConfig: "%config_bigQuery_prod%"
      $tableName: "%google_bigquery_table_customerchangeset%"
      $bucketName: "%google_bucket_name%"

  AdminBundle\Services\APILogsService:
    public: true
    autowire: true
    autoconfigure: true
    bind:
      $googleProjectId: "%google_project_id%"
      $googlePath: "%kernel.root_dir%/../%google_token_path%"
      $googleQuery: "%google_bigquery_dataset%"
      $googleConfig: "%config_bigQuery_prod%"
      $tableName: "%google_bigquery_table_apilogs%"
      $bucketName: "%google_bucket_name%"

  AdminBundle\Services\ImportLicenceCodeService:
    public: true
      autowire: true
      autoconfigure: true
      bind:
        $googleProjectId: "%google_project_id%"
        $googlePath: "%kernel.root_dir%/../%google_token_path%"
        $googleQuery: "%google_bigquery_dataset%"
        $googleConfig: "%config_bigQuery_prod%"
        $tableName: "%google_bigquery_table_importlicencecode%"
        $bucketName: "%google_bucket_name%"

-parameters.yml

    google_token_path: ./google_token.json
    google_project_id: "xxx"
    google_bigquery_dataset: "xxx"
    google_bigquery_table_accessmember: "xxx"
    google_bigquery_table_customerchangeset: "xxx"
    google_bigquery_table_apilogs: "xxx"
    google_bigquery_table_importlicencecode: "xxx"
    google_bucket_name: "xxx"

PS : Le code semble avoir un problème avec les paramètres de ImportLicenceCodeService

Merci d'avance pour votre aide ;)

P粉448130258
P粉448130258

répondre à tous(1)
P粉895187266

Comme @bossman l'a déjà souligné, la réponse est l'intention.

Je voulais juste ajouter que vous pouvez vous débarrasser de nombreux contenus en double inutiles. Quand tu écris comme ça :

services:
    _defaults:
        autowire: true
        autoconfigure: true
        bind:
            $googleProjectId: "%google_project_id%"
            $googlePath: "%kernel.root_dir%/../%google_token_path%"
            $googleQuery: "%google_bigquery_dataset%"
            $googleConfig: "%config_bigQuery_prod%"            
            $bucketName: "%google_bucket_name%"

  AdminBundle\Services\CustomerChangeSetService:
    public: true
    bind:
        $tableName: "%google_bigquery_table_customerchangeset%"


  AdminBundle\Services\APILogsService:
    public: true
    bind:
        $tableName: "%google_bigquery_table_apilogs%"


  AdminBundle\Services\ImportLicenceCodeService:
    public: true
    bind:
        $tableName: "%google_bigquery_table_importlicencecode%"
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal