lkr-dev-cli 0.0.42__tar.gz → 0.0.44__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. lkr_dev_cli-0.0.44/.github/workflows/website.yml +18 -0
  2. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/PKG-INFO +8 -8
  3. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/README.md +7 -7
  4. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/codemode.md +3 -3
  5. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr.md +98 -0
  6. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/pyproject.toml +2 -1
  7. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/.github/workflows/ci.yml +0 -0
  8. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/.github/workflows/release.yml +0 -0
  9. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/.gitignore +0 -0
  10. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/.python-version +0 -0
  11. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/.vscode/launch.json +0 -0
  12. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/.vscode/settings.json +0 -0
  13. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/Dockerfile +0 -0
  14. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/LICENSE +0 -0
  15. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/Makefile +0 -0
  16. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/cloudbuild.yaml +0 -0
  17. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/__init__.py +0 -0
  18. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/auth/__init__.py +0 -0
  19. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/auth/main.py +0 -0
  20. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/auth/oauth.py +0 -0
  21. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/auth_service.py +0 -0
  22. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/classes.py +0 -0
  23. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/codemode/LOCAL.md +0 -0
  24. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/codemode/__init__.py +0 -0
  25. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/codemode/constant.py +0 -0
  26. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/codemode/download_swagger.py +0 -0
  27. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/codemode/examples.py +0 -0
  28. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/codemode/help.py +0 -0
  29. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/codemode/main.py +0 -0
  30. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/codemode/readme.py +0 -0
  31. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/codemode/swagger.json +0 -0
  32. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/codemode/type.py +0 -0
  33. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/constants.py +0 -0
  34. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/custom_types.py +0 -0
  35. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/exceptions.py +0 -0
  36. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/extended_sdk_methods/__init__.py +0 -0
  37. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/extended_sdk_methods/classes.py +0 -0
  38. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/extended_sdk_methods/main.py +0 -0
  39. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/logger.py +0 -0
  40. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/main.py +0 -0
  41. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/mcp/classes.py +0 -0
  42. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/mcp/main.py +0 -0
  43. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/mcp/utils.py +0 -0
  44. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/observability/classes.py +0 -0
  45. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/observability/embed_container.html +0 -0
  46. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/observability/main.py +0 -0
  47. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/observability/utils.py +0 -0
  48. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/tools/classes.py +0 -0
  49. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/tools/lookml.py +0 -0
  50. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/tools/main.py +0 -0
  51. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr/tools/permission_deprecation.py +0 -0
  52. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/lkr_dev_cli/__init__.py +0 -0
  53. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/tests/TESTING.md +0 -0
  54. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/tests/test_codemode.py +0 -0
  55. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/tests/test_dependency_resolution.py +0 -0
  56. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/tests/test_deps.sh +0 -0
  57. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/tests/test_extended_sdk_methods.py +0 -0
  58. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/tests/test_init_sdk.py +0 -0
  59. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/tests/test_lookml_tools.py +0 -0
  60. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/tests/test_oauth_account.py +0 -0
  61. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/tests/test_permission_deprecation.py +0 -0
  62. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/ty.toml +0 -0
  63. {lkr_dev_cli-0.0.42 → lkr_dev_cli-0.0.44}/uv.lock +0 -0
@@ -0,0 +1,18 @@
1
+ name: Deploy Website
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ paths:
8
+ - "**.md"
9
+
10
+ jobs:
11
+ deploy:
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - name: Trigger Website Deploy
15
+ run: |
16
+ curl -fSL "$DEPLOY_URL"
17
+ env:
18
+ DEPLOY_URL: ${{ secrets.DEPLOY_URL }}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lkr-dev-cli
3
- Version: 0.0.42
3
+ Version: 0.0.44
4
4
  Summary: lkr: a command line interface for looker
5
5
  Author: bwebs
6
6
  License-Expression: MIT
@@ -40,7 +40,7 @@ The `lkr` cli is a tool for interacting with Looker. It combines Looker's SDK an
40
40
 
41
41
  ## Usage
42
42
 
43
- `uv` makes everyone's life easier. Go [install it](https://docs.astral.sh/uv/getting-started/installation/). You can start using `lkr` by running `uvx --from lkr-dev-cli[all] lkr --help`.
43
+ `uv` makes everyone's life easier. Go [install it](https://docs.astral.sh/uv/getting-started/installation/). You can start using `lkr` by running `uvx lkr-dev-cli --help`.
44
44
 
45
45
  Alternatively, you can install `lkr` with `pip install lkr-dev-cli[all]` and use commands directly like `lkr <command>`.
46
46
 
@@ -60,7 +60,7 @@ See the [prerequisites section](#oauth2-prerequisites)
60
60
  Login to `lkr`
61
61
 
62
62
  ```bash
63
- uvx --from lkr-dev-cli[all] lkr auth login
63
+ uvx lkr-dev-cli auth login
64
64
  ```
65
65
 
66
66
  - Select a new instance
@@ -73,7 +73,7 @@ You will be redirected to the Looker OAuth authorization page, click Allow. If y
73
73
  If everything is successful, you will see `Successfully authenticated!`. Test it with
74
74
 
75
75
  ```bash
76
- uvx --from lkr-dev-cli[all] lkr auth whoami
76
+ uvx lkr-dev-cli auth whoami
77
77
  ```
78
78
 
79
79
  ### Using API Key
@@ -81,7 +81,7 @@ uvx --from lkr-dev-cli[all] lkr auth whoami
81
81
  If you provide environment variables for `LOOKERSDK_CLIENT_ID`, `LOOKERSDK_CLIENT_SECRET`, and `LOOKERSDK_BASE_URL`, `lkr` will use the API key to authenticate and the commands. We also support command line arguments to pass in the client id, client secret, and base url.
82
82
 
83
83
  ```bash
84
- uvx --from lkr-dev-cli[all] lkr --client-id <your client id> --client-secret <your client secret> --base-url <your instance url> auth whoami
84
+ uvx lkr-dev-cli --client-id <your client id> --client-secret <your client secret> --base-url <your instance url> auth whoami
85
85
  ```
86
86
 
87
87
 
@@ -120,8 +120,8 @@ Built into the `lkr` is an MCP server. Right now its tools are based on helping
120
120
  {
121
121
  "mcpServers": {
122
122
  "lkr-mcp": {
123
- "command": "uv",
124
- "args": ["run", "--with", "lkr-dev-cli[all]", "lkr", "mcp", "run"]
123
+ "command": "uvx",
124
+ "args": ["lkr-dev-cli[all]", "mcp", "run"]
125
125
  },
126
126
  "lkr-mcp-docker": {
127
127
  "command": "docker",
@@ -422,7 +422,7 @@ By running this tool, an admin can proactively identify and fix permission gaps
422
422
  This command should be run by a **Looker Admin**.
423
423
 
424
424
  ```bash
425
- uvx --from lkr-dev-cli[all] lkr tools schedule-download-deprecation
425
+ uvx lkr-dev-cli[all] tools schedule-download-deprecation
426
426
  ```
427
427
 
428
428
  Options:
@@ -4,7 +4,7 @@ The `lkr` cli is a tool for interacting with Looker. It combines Looker's SDK an
4
4
 
5
5
  ## Usage
6
6
 
7
- `uv` makes everyone's life easier. Go [install it](https://docs.astral.sh/uv/getting-started/installation/). You can start using `lkr` by running `uvx --from lkr-dev-cli[all] lkr --help`.
7
+ `uv` makes everyone's life easier. Go [install it](https://docs.astral.sh/uv/getting-started/installation/). You can start using `lkr` by running `uvx lkr-dev-cli --help`.
8
8
 
9
9
  Alternatively, you can install `lkr` with `pip install lkr-dev-cli[all]` and use commands directly like `lkr <command>`.
10
10
 
@@ -24,7 +24,7 @@ See the [prerequisites section](#oauth2-prerequisites)
24
24
  Login to `lkr`
25
25
 
26
26
  ```bash
27
- uvx --from lkr-dev-cli[all] lkr auth login
27
+ uvx lkr-dev-cli auth login
28
28
  ```
29
29
 
30
30
  - Select a new instance
@@ -37,7 +37,7 @@ You will be redirected to the Looker OAuth authorization page, click Allow. If y
37
37
  If everything is successful, you will see `Successfully authenticated!`. Test it with
38
38
 
39
39
  ```bash
40
- uvx --from lkr-dev-cli[all] lkr auth whoami
40
+ uvx lkr-dev-cli auth whoami
41
41
  ```
42
42
 
43
43
  ### Using API Key
@@ -45,7 +45,7 @@ uvx --from lkr-dev-cli[all] lkr auth whoami
45
45
  If you provide environment variables for `LOOKERSDK_CLIENT_ID`, `LOOKERSDK_CLIENT_SECRET`, and `LOOKERSDK_BASE_URL`, `lkr` will use the API key to authenticate and the commands. We also support command line arguments to pass in the client id, client secret, and base url.
46
46
 
47
47
  ```bash
48
- uvx --from lkr-dev-cli[all] lkr --client-id <your client id> --client-secret <your client secret> --base-url <your instance url> auth whoami
48
+ uvx lkr-dev-cli --client-id <your client id> --client-secret <your client secret> --base-url <your instance url> auth whoami
49
49
  ```
50
50
 
51
51
 
@@ -84,8 +84,8 @@ Built into the `lkr` is an MCP server. Right now its tools are based on helping
84
84
  {
85
85
  "mcpServers": {
86
86
  "lkr-mcp": {
87
- "command": "uv",
88
- "args": ["run", "--with", "lkr-dev-cli[all]", "lkr", "mcp", "run"]
87
+ "command": "uvx",
88
+ "args": ["lkr-dev-cli[all]", "mcp", "run"]
89
89
  },
90
90
  "lkr-mcp-docker": {
91
91
  "command": "docker",
@@ -386,7 +386,7 @@ By running this tool, an admin can proactively identify and fix permission gaps
386
386
  This command should be run by a **Looker Admin**.
387
387
 
388
388
  ```bash
389
- uvx --from lkr-dev-cli[all] lkr tools schedule-download-deprecation
389
+ uvx lkr-dev-cli[all] tools schedule-download-deprecation
390
390
  ```
391
391
 
392
392
  Options:
@@ -19,7 +19,7 @@ The tool instantiates Looker SDK natively, searches all bound methods, and passe
19
19
  ### 1. Starting the Server
20
20
  To immediately trigger the stdio listener, use:
21
21
  ```bash
22
- uvx -q --from lkr-dev-cli[codemode] lkr code-mode run
22
+ uvx -q lkr-dev-cli[codemode] code-mode run
23
23
  ```
24
24
 
25
25
  ### 2. Client Configuration
@@ -30,7 +30,7 @@ To hook this server into Cursor or Claude Desktop natively over stdio, append th
30
30
  "mcpServers": {
31
31
  "lkr_codemode": {
32
32
  "command": "uvx",
33
- "args": ["-q", "--from", "lkr-dev-cli[codemode]", "lkr", "code-mode", "run"],
33
+ "args": ["-q", "lkr-dev-cli[codemode]", "code-mode", "run"],
34
34
  "env": {
35
35
  "LOOKERSDK_BASE_URL": "https://your.looker.instance",
36
36
  "LOOKERSDK_CLIENT_ID": "your-client-id",
@@ -44,7 +44,7 @@ To hook this server into Cursor or Claude Desktop natively over stdio, append th
44
44
  ### 3. Visual Inspector
45
45
  To check things out on a web panel:
46
46
  ```bash
47
- npx @modelcontextprotocol/inspector uvx -q --from lkr-dev-cli[codemode] lkr code-mode run
47
+ npx @modelcontextprotocol/inspector uvx -q lkr-dev-cli[codemode] code-mode run
48
48
  ```
49
49
 
50
50
  ## Architectural & Troubleshooting Notes
@@ -17,18 +17,32 @@ $ lkr [OPTIONS] COMMAND [ARGS]...
17
17
  * `--quiet`
18
18
  * `--force-oauth`
19
19
  * `--dev`
20
+ * `--oauth-account TEXT`: OAuth account to lookup in DB and use regardless of what&#x27;s active
20
21
  * `--install-completion`: Install completion for the current shell.
21
22
  * `--show-completion`: Show completion for the current shell, to copy it or customize the installation.
22
23
  * `--help`: Show this message and exit.
23
24
 
24
25
  **Commands**:
25
26
 
27
+ * `db-template`
26
28
  * `auth`: Authentication commands for LookML Repository
27
29
  * `mcp`
28
30
  * `observability`
29
31
  * `tools`
30
32
  * `code-mode`
31
33
 
34
+ ## `lkr db-template`
35
+
36
+ **Usage**:
37
+
38
+ ```console
39
+ $ lkr db-template [OPTIONS]
40
+ ```
41
+
42
+ **Options**:
43
+
44
+ * `--import-error TEXT`: [default: No module named &#x27;lkr.db_template.main&#x27;]
45
+
32
46
  ## `lkr auth`
33
47
 
34
48
  Authentication commands for LookML Repository
@@ -63,6 +77,7 @@ $ lkr auth login [OPTIONS]
63
77
  **Options**:
64
78
 
65
79
  * `-I, --instance-name TEXT`: Name of the Looker instance to login or switch to
80
+ * `-p, --port INTEGER RANGE`: Port to run the local OAuth redirect web server on [1&lt;=x&lt;=65535]
66
81
  * `--help`: Show this message and exit.
67
82
 
68
83
  ### `lkr auth logout`
@@ -188,6 +203,7 @@ $ lkr tools [OPTIONS] COMMAND [ARGS]...
188
203
 
189
204
  * `user-attribute-updater`
190
205
  * `schedule-download-deprecation`: Build a table of users and their...
206
+ * `lookml`: LookML synchronization and deployment tools
191
207
 
192
208
  ### `lkr tools user-attribute-updater`
193
209
 
@@ -223,6 +239,88 @@ $ lkr tools schedule-download-deprecation [OPTIONS]
223
239
  * `--email`: Use Email instead of Name
224
240
  * `--help`: Show this message and exit.
225
241
 
242
+ ### `lkr tools lookml`
243
+
244
+ LookML synchronization and deployment tools
245
+
246
+ **Usage**:
247
+
248
+ ```console
249
+ $ lkr tools lookml [OPTIONS] COMMAND [ARGS]...
250
+ ```
251
+
252
+ **Options**:
253
+
254
+ * `--help`: Show this message and exit.
255
+
256
+ **Commands**:
257
+
258
+ * `push`: Push local files to Looker, removing files...
259
+ * `pull`: Pull remote files from Looker to local...
260
+ * `deploy`: Commit dev workspace and deploy Looker...
261
+
262
+ #### `lkr tools lookml push`
263
+
264
+ Push local files to Looker, removing files on the instance that aren&#x27;t being pushed.
265
+
266
+ **Usage**:
267
+
268
+ ```console
269
+ $ lkr tools lookml push [OPTIONS] FOLDER_NAME
270
+ ```
271
+
272
+ **Arguments**:
273
+
274
+ * `FOLDER_NAME`: Local folder name / Looker project ID to push [required]
275
+
276
+ **Options**:
277
+
278
+ * `--project-id, --project TEXT`: Looker project ID to push to (if different from folder name)
279
+ * `--deploy`: Commit and deploy to production after push
280
+ * `--message TEXT`: Commit message when deploying [default: push from lkr cli]
281
+ * `--help`: Show this message and exit.
282
+
283
+ #### `lkr tools lookml pull`
284
+
285
+ Pull remote files from Looker to local disk, removing local files that aren&#x27;t on the instance.
286
+
287
+ **Usage**:
288
+
289
+ ```console
290
+ $ lkr tools lookml pull [OPTIONS] FOLDER_NAME
291
+ ```
292
+
293
+ **Arguments**:
294
+
295
+ * `FOLDER_NAME`: Local folder name / Looker project ID to pull into [required]
296
+
297
+ **Options**:
298
+
299
+ * `--project-id, --project TEXT`: Looker project ID to pull from (if different from folder name)
300
+ * `--deploy`: Commit and deploy to production on Looker after pull
301
+ * `--message TEXT`: Commit message when deploying [default: pull from lkr cli then commit and deploy]
302
+ * `--help`: Show this message and exit.
303
+
304
+ #### `lkr tools lookml deploy`
305
+
306
+ Commit dev workspace and deploy Looker project to production.
307
+
308
+ **Usage**:
309
+
310
+ ```console
311
+ $ lkr tools lookml deploy [OPTIONS] [FOLDER_NAME]
312
+ ```
313
+
314
+ **Arguments**:
315
+
316
+ * `[FOLDER_NAME]`: Local folder name / Looker project ID to deploy
317
+
318
+ **Options**:
319
+
320
+ * `--project-id, --project TEXT`: Looker project ID to deploy (if folder_name not specified)
321
+ * `--message TEXT`: Commit message [default: commit and deploy from lkr cli]
322
+ * `--help`: Show this message and exit.
323
+
226
324
  ## `lkr code-mode`
227
325
 
228
326
  **Usage**:
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "lkr-dev-cli"
3
- version = "0.0.42"
3
+ version = "0.0.44"
4
4
  description = "lkr: a command line interface for looker"
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -46,6 +46,7 @@ all = [
46
46
 
47
47
  [project.scripts]
48
48
  lkr = "lkr.main:app"
49
+ lkr-dev-cli = "lkr.main:app"
49
50
 
50
51
  [build-system]
51
52
  requires = ["hatchling"]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes