crowdin / crowdin-cli

A command-line client for the Crowdin API
https://crowdin.github.io/crowdin-cli
MIT License
245 stars 91 forks source link

Not possible to ignore files #680

Closed laurent22 closed 11 months ago

laurent22 commented 11 months ago

Describe the bug

No matter what value I set for the ignore parameter, it is not working.

To Reproduce

I use the following configuration and ignore a number of files and directories, based on the info provided in Crowdin doc:

project_id: 'ID'
api_token_env: CROWDIN_PERSONAL_TOKEN
preserve_hierarchy: true
files:
  - source: /readme/**/*
    translation: /readme/i18n/%two_letters_code%/docusaurus-plugin-content-docs/current/**/%original_file_name%
    ignore: [
      /readme/_i18n
      /readme/i18n
      /**/*.yml
      /**/*.json
      /**/*.png
      /**/*.jpg
    ]

Expected behavior

It should ignore these folders and files, but it processes them all anyway. I tried many variations of the above and nothing seems to work.

Environment:

DimaYashchyshyn commented 11 months ago

Hello @laurent22

To help us troubleshoot this issue, could you please confirm if you've tried using the 'ignore' parameter with a single file or directory, instead of a list? This will help us determine if the issue is with the list format or the 'ignore' parameter itself.

laurent22 commented 11 months ago

Thank you for your answer. If I try with a single file, as in ignore: /readme/i18n it tells me ❌ 'ignore' parameter has 'String' type instead of 'List'.

That makes me realise - the file is YAML, but the documentation examples seem to be a mix of JSON and YAML? I think the list format for example is not valid YAML. Or are the examples actual JSON and I should recreate my config as crowdin.json?

DimaYashchyshyn commented 11 months ago

Sorry for the misunderstanding, I meant the 1-2 files, so your list will be decreased.

Are you using the Docusarus plugin? If so, you're welcome to use the following configuration as a sample (comma as a separator is required):

- source: /website/src/pages/**/*
    translation: /website/i18n/%two_letters_code%/docusaurus-plugin-content-pages/**/%original_file_name%
    ignore: [/**/*.js, /**/*.jsx, /**/*.ts, /**/*.tsx, /**/*.css]
andrii-bodnar commented 11 months ago
project_id: 'ID'
api_token_env: CROWDIN_PERSONAL_TOKEN
preserve_hierarchy: true
files:
  - source: /readme/**/*
    translation: /readme/i18n/%two_letters_code%/docusaurus-plugin-content-docs/current/**/%original_file_name%
    ignore:
      - /readme/_i18n
      - /readme/i18n
      - /**/*.yml
      - /**/*.json
      - /**/*.png
      - /**/*.jpg