#3846 cli: streamline python/json options in call command
Merged by tkopecek. Opened by mikem.
mikem/koji call-json  into  master

Download 3846.patch

Allows using json syntax for call args, with a bare-string fallback option

Usage example:

$ kdev lkoji call -jb createTag MYTAG parent=something arches='x86_64 aarch64' extra='{"test": 1, "foo": [1, "1", [1], {}]}'
2090
$ kdev lkoji call -jb getTag MYTAG
{
  "arches": "x86_64 aarch64",
  "id": 2090,
  "locked": false,
  "maven_include_all": false,
  "maven_support": false,
  "name": "MYTAG",
  "perm": null,
  "perm_id": null,
  "extra": {
    "test": 1,
    "foo": [
      1,
      "1",
      [
        1
      ],
      {}
    ]
  }
}

The -b/--bare-string option is for convenience and allows the user to avoid double quoting simple string args.

1 new commit added

  • be pickier about keyword args and add a note about them in usage

Metadata Update from @tkopecek:
- Pull-request tagged with: testing-ready

hey, our build is failing since adding this PR. Specifically on Rhel7 and Epel7.

  File "commands.py", line 1009
    parser.error(f"Invalid value: {arg!r}")
                                         ^
SyntaxError: invalid syntax

probably python2 not supporting f-strings?

Metadata Update from @relias-redhat:
- Pull-request untagged with: testing-ready

Ah, good catch! Will fix

1 new commit added

  • avoid using fstrings in client code

Metadata Update from @relias-redhat:
- Pull-request tagged with: testing-ready

Metadata Update from @relias-redhat:
- Pull-request tagged with: testing-done

Commit c1fae34c fixes this pull-request

Pull-Request has been merged by tkopecek

Metadata