redpanda-data / redpanda-data/benthos

lint command does not support glob patterns on resources

Open
#148 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bughancement cli needs investigation
Dominant language
Go
Stars
571
Forks
120
Avg merge
2d 1h
Merged PRs (30d)
18

Description

I can read in the help that I can use glob patterns on resources when using the lint command:

NAME:
   redpanda-connect lint - Parse Redpanda Connect configs and report any linting errors

USAGE:
   redpanda-connect lint [command options]

DESCRIPTION:
   Exits with a status code 1 if any linting errors are detected:

     redpanda-connect lint ./configs/*.yaml
     redpanda-connect lint ./foo.yaml ./bar.yaml
     redpanda-connect lint ./configs/...

   If a path ends with '...' then Redpanda Connect will walk the target and lint any
   files with the .yaml or .yml extension.

OPTIONS:
   --deprecated                                                 Print linting errors for the presence of deprecated fields. (default: false)
   --labels                                                     Print linting errors when components do not have labels. (default: false)
   --skip-env-var-check                                         Do not produce lint errors when environment interpolations exist without defaults within configs but aren't defined. (default: false)
   --resources value, -r value [ --resources value, -r value ]  pull in extra resources from a file, which can be referenced the same as resources defined in the main config, supports glob patterns (requires quotes)

but in reality it does not work, if I try in one of my projects:

$ docker run --net host --env-file ${ENV} -v ./config:/c -v ./resources:/r -v ./templates:/t ${IMAGE} lint --skip-env-var-check -r "/r/resource.yaml" -t "/t/*.yaml" /c/config.yaml

/r/*.yaml(1,1) open /r/*.yaml: no such file or directory

but it runs fine with the run command

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the reported command using the lint command with a quoted resource glob, then compare its behavior with the run command, which handles the same pattern successfully. Trace how the lint command processes its --resources values and verify completion by confirming matching resource files are loaded instead of treating the glob literally.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
cli
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.