pingera-cli 0.1.2__tar.gz → 0.1.3__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 (45) hide show
  1. {pingera_cli-0.1.2/pingera_cli.egg-info → pingera_cli-0.1.3}/PKG-INFO +17 -2
  2. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/README.md +15 -0
  3. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/docs/cli-commands.md +108 -87
  4. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/__init__.py +1 -1
  5. pingera_cli-0.1.3/pingera_cli/commands/check_groups.py +533 -0
  6. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/commands/checks.py +192 -14
  7. {pingera_cli-0.1.2 → pingera_cli-0.1.3/pingera_cli.egg-info}/PKG-INFO +17 -2
  8. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli.egg-info/SOURCES.txt +1 -0
  9. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli.egg-info/requires.txt +1 -1
  10. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pyproject.toml +1 -1
  11. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/.gitignore +0 -0
  12. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/.replit +0 -0
  13. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/LICENSE +0 -0
  14. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/assert +0 -0
  15. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/__main__.py +0 -0
  16. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/commands/__init__.py +0 -0
  17. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/commands/auth.py +0 -0
  18. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/commands/base.py +0 -0
  19. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/commands/on_demand_checks.py +0 -0
  20. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/formatters/__init__.py +0 -0
  21. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/formatters/base_formatter.py +0 -0
  22. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/formatters/generic_formatter.py +0 -0
  23. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/formatters/multistep_formatter.py +0 -0
  24. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/formatters/registry.py +0 -0
  25. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/formatters/ssl_formatter.py +0 -0
  26. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/formatters/synthetic_formatter.py +0 -0
  27. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/formatters/web_formatter.py +0 -0
  28. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/main.py +0 -0
  29. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/utils/__init__.py +0 -0
  30. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/utils/config.py +0 -0
  31. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli/utils/console.py +0 -0
  32. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli.egg-info/dependency_links.txt +0 -0
  33. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli.egg-info/entry_points.txt +0 -0
  34. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/pingera_cli.egg-info/top_level.txt +0 -0
  35. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/replit.md +0 -0
  36. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/run_tests.py +0 -0
  37. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/setup.cfg +0 -0
  38. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/setup.py +0 -0
  39. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/tests/__init__.py +0 -0
  40. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/tests/conftest.py +0 -0
  41. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/tests/requirements.txt +0 -0
  42. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/tests/test_auth.py +0 -0
  43. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/tests/test_checks.py +0 -0
  44. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/tests/test_config.py +0 -0
  45. {pingera_cli-0.1.2 → pingera_cli-0.1.3}/tests/test_on_demand_checks.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pingera-cli
3
- Version: 0.1.2
3
+ Version: 0.1.3
4
4
  Summary: A beautiful Python CLI tool built with typer and rich, distributed via pip and based on Pingera SDK
5
5
  Home-page: https://github.com/pingera/pingera-cli
6
6
  Author: PingeraCLI Team
@@ -31,7 +31,7 @@ Description-Content-Type: text/markdown
31
31
  License-File: LICENSE
32
32
  Requires-Dist: typer[all]>=0.9.0
33
33
  Requires-Dist: rich>=13.0.0
34
- Requires-Dist: pingera-sdk
34
+ Requires-Dist: pingera-sdk>=1.0.5
35
35
  Requires-Dist: click>=8.0.0
36
36
  Provides-Extra: dev
37
37
  Requires-Dist: pytest>=6.0; extra == "dev"
@@ -123,6 +123,21 @@ pngr checks run custom \
123
123
  --name "Quick Test"
124
124
  ```
125
125
 
126
+ ### Manage check groups
127
+ ```bash
128
+ # List all check groups
129
+ pngr checks groups list
130
+
131
+ # Create a new group
132
+ pngr checks groups create \
133
+ --name "Production APIs" \
134
+ --description "Critical production endpoints" \
135
+ --color "#FF5733"
136
+
137
+ # Assign a check to a group
138
+ pngr checks assign-group check_123 --group-id group_456
139
+ ```
140
+
126
141
  ### List available regions
127
142
  ```bash
128
143
  pngr checks list-regions
@@ -77,6 +77,21 @@ pngr checks run custom \
77
77
  --name "Quick Test"
78
78
  ```
79
79
 
80
+ ### Manage check groups
81
+ ```bash
82
+ # List all check groups
83
+ pngr checks groups list
84
+
85
+ # Create a new group
86
+ pngr checks groups create \
87
+ --name "Production APIs" \
88
+ --description "Critical production endpoints" \
89
+ --color "#FF5733"
90
+
91
+ # Assign a check to a group
92
+ pngr checks assign-group check_123 --group-id group_456
93
+ ```
94
+
80
95
  ### List available regions
81
96
  ```bash
82
97
  pngr checks list-regions
@@ -11,7 +11,6 @@ These options are available for all commands:
11
11
 
12
12
  ```
13
13
  --api-key <key> API key for authentication (can also use PINGERA_API_KEY env var)
14
- --bearer-token <token> Bearer token for authentication (can also use PINGERA_BEARER_TOKEN env var)
15
14
  --base-url <url> API base URL (default: https://api.pingera.ru)
16
15
  --output <format> Output format: table, json, yaml (default: table)
17
16
  --page-id <id> Default page ID for status page operations (can also use PINGERA_PAGE_ID env var)
@@ -32,41 +31,6 @@ pngr auth status # Check authentication status
32
31
  pngr auth logout # Clear stored credentials
33
32
  ```
34
33
 
35
- ## Alerts Commands
36
-
37
- ### `pngr alerts`
38
- Manage alerts and notifications.
39
-
40
- ```bash
41
- # List alerts
42
- pngr alerts list [--page <num>] [--page-size <size>] [--status <status>]
43
-
44
- # Get specific alert
45
- pngr alerts get <alert-id>
46
-
47
- # Create alert
48
- pngr alerts create --name <name> --type <type> [--channels <channels>] [--enabled]
49
-
50
- # Update alert
51
- pngr alerts update <alert-id> [--name <name>] [--enabled/--disabled]
52
-
53
- # Delete alert
54
- pngr alerts delete <alert-id> [--confirm]
55
-
56
- # Get alert statistics
57
- pngr alerts stats
58
-
59
- # Manage alert channels
60
- pngr alerts channels list
61
- pngr alerts channels create --name <name> --type <type> --config <json>
62
- pngr alerts channels delete <channel-id>
63
-
64
- # Manage alert rules
65
- pngr alerts rules list
66
- pngr alerts rules create --name <name> --conditions <json>
67
- pngr alerts rules delete <rule-id>
68
- ```
69
-
70
34
  ## Checks Commands
71
35
 
72
36
  ### `pngr checks`
@@ -74,7 +38,7 @@ Manage monitoring checks.
74
38
 
75
39
  ```bash
76
40
  # List checks
77
- pngr checks list [--page <num>] [--page-size <size>] [--type <type>] [--status <status>]
41
+ pngr checks list [--page <num>] [--page-size <size>] [--type <type>] [--status <status>] [--name <name>] [--group-id <id>]
78
42
 
79
43
  # Get specific check
80
44
  pngr checks get <check-id>
@@ -88,63 +52,44 @@ pngr checks update <check-id> [--name <name>] [--url <url>] [--host <host>] [--p
88
52
  # Delete check
89
53
  pngr checks delete <check-id> [--confirm]
90
54
 
55
+ # Assign check to group
56
+ pngr checks assign-group <check-id> [--group-id <group-id>]
57
+
91
58
  # Get check results
92
59
  pngr checks results <check-id> [--from <date>] [--to <date>] [--page <num>] [--page-size <size>]
93
60
 
94
61
  # Get detailed result information
95
62
  pngr checks result <check-id> <result-id>
96
63
 
97
- # Find checks by criteria
98
- pngr checks find --name <partial-name>
99
- pngr checks find --url <partial-url>
100
- pngr checks find --type <check-type>
101
- pngr checks find --name <name> --type <type>
102
-
103
- # Manage check jobs
64
+ # Manage on-demand check jobs
104
65
  pngr checks jobs list
105
66
  pngr checks jobs get <job-id>
106
67
  ```
107
68
 
108
- ### `pngr checks results`
109
- Query unified check results.
69
+ ### `pngr checks groups`
70
+ Manage check groups for organizing checks.
110
71
 
111
72
  ```bash
112
- # Get unified results
113
- pngr checks results unified [--check-ids <id1,id2>] [--from <date>] [--to <date>] [--status <status>] [--page <num>]
73
+ # List check groups
74
+ pngr checks groups list [--page <num>] [--page-size <size>]
114
75
 
115
- # Get aggregated statistics
116
- pngr checks results stats [--check-ids <id1,id2>] [--from <date>] [--to <date>]
117
- ```
76
+ # Get specific group
77
+ pngr checks groups get <group-id>
118
78
 
119
- ## Heartbeats Commands
79
+ # Create group
80
+ pngr checks groups create --name <name> [--description <desc>] [--color <hex>] [--position <num>] [--active/--inactive]
120
81
 
121
- ### `pngr heartbeats`
122
- Manage heartbeat monitoring.
82
+ # Update group
83
+ pngr checks groups update <group-id> [--name <name>] [--description <desc>] [--color <hex>] [--position <num>] [--active/--inactive]
123
84
 
124
- ```bash
125
- # List heartbeats
126
- pngr heartbeats list [--page <num>] [--page-size <size>] [--status <status>]
85
+ # Delete group
86
+ pngr checks groups delete <group-id> [--confirm]
127
87
 
128
- # Get specific heartbeat
129
- pngr heartbeats get <heartbeat-id>
130
-
131
- # Create heartbeat
132
- pngr heartbeats create --name <name> --interval <seconds> [--grace-period <seconds>]
133
-
134
- # Update heartbeat
135
- pngr heartbeats update <heartbeat-id> [--name <name>] [--interval <seconds>]
136
-
137
- # Delete heartbeat
138
- pngr heartbeats delete <heartbeat-id> [--confirm]
139
-
140
- # Send heartbeat ping
141
- pngr heartbeats ping <heartbeat-id>
142
-
143
- # Get heartbeat logs
144
- pngr heartbeats logs <heartbeat-id> [--from <date>] [--to <date>] [--page <num>]
88
+ # Get checks in a group
89
+ pngr checks groups checks <group-id> [--page <num>] [--page-size <size>]
145
90
  ```
146
91
 
147
- ## On-Demand Checks Commands
92
+ ## On-Demand Checks Commands
148
93
 
149
94
  ### `pngr checks run`
150
95
  Execute checks on demand.
@@ -171,7 +116,70 @@ pngr checks jobs result <job-id>
171
116
  pngr checks jobs list
172
117
  ```
173
118
 
174
- ## Status Pages Commands
119
+ ## Alerts Commands (soon)
120
+
121
+ ### `pngr alerts`
122
+ Manage alerts and notifications.
123
+
124
+ ```bash
125
+ # List alerts
126
+ pngr alerts list [--page <num>] [--page-size <size>] [--status <status>]
127
+
128
+ # Get specific alert
129
+ pngr alerts get <alert-id>
130
+
131
+ # Create alert
132
+ pngr alerts create --name <name> --type <type> [--channels <channels>] [--enabled]
133
+
134
+ # Update alert
135
+ pngr alerts update <alert-id> [--name <name>] [--enabled/--disabled]
136
+
137
+ # Delete alert
138
+ pngr alerts delete <alert-id> [--confirm]
139
+
140
+ # Get alert statistics
141
+ pngr alerts stats
142
+
143
+ # Manage alert channels
144
+ pngr alerts channels list
145
+ pngr alerts channels create --name <name> --type <type> --config <json>
146
+ pngr alerts channels delete <channel-id>
147
+
148
+ # Manage alert rules
149
+ pngr alerts rules list
150
+ pngr alerts rules create --name <name> --conditions <json>
151
+ pngr alerts rules delete <rule-id>
152
+ ```
153
+
154
+ ## Heartbeats Commands (soon)
155
+
156
+ ### `pngr heartbeats`
157
+ Manage heartbeat monitoring.
158
+
159
+ ```bash
160
+ # List heartbeats
161
+ pngr heartbeats list [--page <num>] [--page-size <size>] [--status <status>]
162
+
163
+ # Get specific heartbeat
164
+ pngr heartbeats get <heartbeat-id>
165
+
166
+ # Create heartbeat
167
+ pngr heartbeats create --name <name> --interval <seconds> [--grace-period <seconds>]
168
+
169
+ # Update heartbeat
170
+ pngr heartbeats update <heartbeat-id> [--name <name>] [--interval <seconds>]
171
+
172
+ # Delete heartbeat
173
+ pngr heartbeats delete <heartbeat-id> [--confirm]
174
+
175
+ # Send heartbeat ping
176
+ pngr heartbeats ping <heartbeat-id>
177
+
178
+ # Get heartbeat logs
179
+ pngr heartbeats logs <heartbeat-id> [--from <date>] [--to <date>] [--page <num>]
180
+ ```
181
+
182
+ ## Status Pages Commands (soon)
175
183
 
176
184
  ### `pngr pages`
177
185
  Manage status pages.
@@ -330,15 +338,6 @@ display:
330
338
  timestamps: "relative" # relative, absolute, none
331
339
  ```
332
340
 
333
- ## Command Aliases
334
-
335
- Short aliases for common commands:
336
- - `pngr ls` → `pngr checks list`
337
- - `pngr ps` → `pngr pages list`
338
- - `pngr cs` → `pngr components list`
339
- - `pngr is` → `pngr incidents list`
340
- - `pngr st` → `pngr components status`
341
-
342
341
  ## Examples
343
342
 
344
343
  ```bash
@@ -394,8 +393,30 @@ pngr checks update check_123 --interval 600 --active
394
393
  # Get check results for last 24 hours
395
394
  pngr checks results check_123 --from 1d
396
395
 
396
+ # List all check groups
397
+ pngr checks groups list
398
+
399
+ # Create a new check group
400
+ pngr checks groups create --name "Production APIs" --description "Critical production API endpoints" --color "#FF5733" --position 1
401
+
402
+ # Get specific group details
403
+ pngr checks groups get group_123
404
+
405
+ # Update a group
406
+ pngr checks groups update group_123 --name "Updated Group Name" --color "#4F46E5"
407
+
408
+ # Delete a group
409
+ pngr checks groups delete group_123
410
+
411
+ # Get checks in a specific group
412
+ pngr checks groups checks group_123
413
+
414
+ # Assign a check to a group
415
+ pngr checks assign-group check_123 --group-id group_456
416
+
417
+ # Remove check from group
418
+ pngr checks assign-group check_123 --group-id null
419
+
397
420
  # Export incidents as JSON
398
421
  pngr incidents list --output json > incidents.json
399
422
  ```
400
-
401
- This command structure provides comprehensive coverage of all SDK functionality while maintaining an intuitive and consistent CLI experience.
@@ -2,7 +2,7 @@
2
2
  Pingera CLI - A beautiful CLI tool for Pingera Platform
3
3
  """
4
4
 
5
- __version__ = "0.1.2"
5
+ __version__ = "0.1.3"
6
6
  __author__ = "Pingera Team"
7
7
  __description__ = "A beautiful Python CLI tool built with typer and rich, distributed via pip and based on Pingera SDK"
8
8