Skip to content

Conversation

@emostov
Copy link
Contributor

@emostov emostov commented Jan 5, 2026

Introduce the TVC CLI, with an eye bootstrapping scaffolding that will make it easy to extend with other commands.

  • I included global args for base url and organization id. They are not used yet but I anticipate they soon will be once we hook up to the api
  • There are still some rough edges like the approval by default getting printed to stdout. This is just a starting point
  • In a few places I added env var parsing. The CLI args will take precedent over env vars, but I think the env vars are nice for things that won't change often or are hard to type, such as organization id, operator id, and api base. I also included deployment id since I figure that will be hard to type. I excluded env vars for args I anticipate to only be relevant for local development
  • I started out with a "Pair" abstraction. This is premature, but will make it easy to implement operator keys with yubikeys, api, or other local formats like password encrypted file
  • CLI e2e tests: tried to keep them high value without being too finicky whenever we make a change

@socket-security
Copy link

socket-security bot commented Jan 5, 2026

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addedassert_cmd@​2.1.17910093100100
Addedpredicates@​3.1.310010093100100
Addedclap@​4.5.549910093100100

View full report

@emostov emostov marked this pull request as draft January 5, 2026 02:43
@@ -1,4 +1,4 @@
[toolchain]
channel = "1.85"
channel = "1.88"
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I needed to bump this for compatibility with qos. I need to double check if this will break any pre-existing crates MSRV, but I hope not since they don't use qos

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not used, but figured I would include to show we can use these in the future

@@ -0,0 +1,2 @@

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

purposely included funky spacing and new lines to test the strip whitespace functionality

Interactive approve

Integration tests and cleanup

re-organize for symmetry
@emostov emostov marked this pull request as ready for review January 6, 2026 01:47
@emostov emostov requested review from narimonf and r-n-o January 6, 2026 18:27
@emostov emostov requested a review from Turnalek January 8, 2026 03:29
@emostov emostov closed this Jan 18, 2026
@emostov emostov mentioned this pull request Jan 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants