systemlink-cli 1.3.1__py3-none-any.whl

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 (74) hide show
  1. slcli/__init__.py +1 -0
  2. slcli/__main__.py +23 -0
  3. slcli/_version.py +4 -0
  4. slcli/asset_click.py +1289 -0
  5. slcli/cli_formatters.py +218 -0
  6. slcli/cli_utils.py +504 -0
  7. slcli/comment_click.py +602 -0
  8. slcli/completion_click.py +418 -0
  9. slcli/config.py +81 -0
  10. slcli/config_click.py +498 -0
  11. slcli/dff_click.py +979 -0
  12. slcli/dff_decorators.py +24 -0
  13. slcli/example_click.py +404 -0
  14. slcli/example_loader.py +274 -0
  15. slcli/example_provisioner.py +2777 -0
  16. slcli/examples/README.md +134 -0
  17. slcli/examples/_schema/schema-v1.0.json +169 -0
  18. slcli/examples/demo-complete-workflow/README.md +323 -0
  19. slcli/examples/demo-complete-workflow/config.yaml +638 -0
  20. slcli/examples/demo-test-plans/README.md +132 -0
  21. slcli/examples/demo-test-plans/config.yaml +154 -0
  22. slcli/examples/exercise-5-1-parametric-insights/README.md +101 -0
  23. slcli/examples/exercise-5-1-parametric-insights/config.yaml +1589 -0
  24. slcli/examples/exercise-7-1-test-plans/README.md +93 -0
  25. slcli/examples/exercise-7-1-test-plans/config.yaml +323 -0
  26. slcli/examples/spec-compliance-notebooks/README.md +140 -0
  27. slcli/examples/spec-compliance-notebooks/config.yaml +112 -0
  28. slcli/examples/spec-compliance-notebooks/notebooks/SpecAnalysis_ComplianceCalculation.ipynb +1553 -0
  29. slcli/examples/spec-compliance-notebooks/notebooks/SpecComplianceCalculation.ipynb +1577 -0
  30. slcli/examples/spec-compliance-notebooks/notebooks/SpecfileExtractionAndIngestion.ipynb +912 -0
  31. slcli/examples/spec-compliance-notebooks/spec_template.xlsx +0 -0
  32. slcli/feed_click.py +892 -0
  33. slcli/file_click.py +932 -0
  34. slcli/function_click.py +1400 -0
  35. slcli/function_templates.py +85 -0
  36. slcli/main.py +406 -0
  37. slcli/mcp_click.py +269 -0
  38. slcli/mcp_server.py +748 -0
  39. slcli/notebook_click.py +1770 -0
  40. slcli/platform.py +345 -0
  41. slcli/policy_click.py +679 -0
  42. slcli/policy_utils.py +411 -0
  43. slcli/profiles.py +411 -0
  44. slcli/response_handlers.py +359 -0
  45. slcli/routine_click.py +763 -0
  46. slcli/skill_click.py +253 -0
  47. slcli/skills/slcli/SKILL.md +713 -0
  48. slcli/skills/slcli/references/analysis-recipes.md +474 -0
  49. slcli/skills/slcli/references/filtering.md +236 -0
  50. slcli/skills/systemlink-webapp/SKILL.md +744 -0
  51. slcli/skills/systemlink-webapp/references/deployment.md +123 -0
  52. slcli/skills/systemlink-webapp/references/nimble-angular.md +380 -0
  53. slcli/skills/systemlink-webapp/references/systemlink-services.md +192 -0
  54. slcli/ssl_trust.py +93 -0
  55. slcli/system_click.py +2216 -0
  56. slcli/table_utils.py +124 -0
  57. slcli/tag_click.py +794 -0
  58. slcli/templates_click.py +599 -0
  59. slcli/testmonitor_click.py +1667 -0
  60. slcli/universal_handlers.py +305 -0
  61. slcli/user_click.py +1218 -0
  62. slcli/utils.py +832 -0
  63. slcli/web_editor.py +295 -0
  64. slcli/webapp_click.py +981 -0
  65. slcli/workflow_preview.py +287 -0
  66. slcli/workflows_click.py +988 -0
  67. slcli/workitem_click.py +2258 -0
  68. slcli/workspace_click.py +576 -0
  69. slcli/workspace_utils.py +206 -0
  70. systemlink_cli-1.3.1.dist-info/METADATA +20 -0
  71. systemlink_cli-1.3.1.dist-info/RECORD +74 -0
  72. systemlink_cli-1.3.1.dist-info/WHEEL +4 -0
  73. systemlink_cli-1.3.1.dist-info/entry_points.txt +7 -0
  74. systemlink_cli-1.3.1.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,134 @@
1
+ # SystemLink Examples Directory
2
+
3
+ This directory contains example configurations for quickly setting up demo resources in SystemLink Enterprise (SLE).
4
+
5
+ ## Examples
6
+
7
+ ### demo-test-plans
8
+
9
+ A complete example demonstrating the end-to-end test planning workflow. Includes:
10
+
11
+ - 1 location (Demo HQ)
12
+ - 1 product (Demo Widget Pro)
13
+ - 2 systems (Test Stand 1 & 2)
14
+ - 2 assets (Asset 1 & 2)
15
+ - 2 DUTs (DUT 1 & 2)
16
+ - 1 test template
17
+
18
+ **Setup time:** ~5 minutes
19
+
20
+ ### spec-compliance-notebooks
21
+
22
+ A complete example providing Jupyter notebooks for performing specification compliance analysis on test data. Publishes three notebooks with the File Analysis interface:
23
+
24
+ - Spec Compliance Calculation
25
+ - Spec Analysis & Compliance Calculation
26
+ - Specfile Extraction and Ingestion
27
+
28
+ **Setup time:** ~3 minutes
29
+
30
+ ### exercise-5-1-parametric-insights
31
+
32
+ Training data for **Exercise 5-1: Query and Visualize Parametric Test Data**.
33
+ Provisions a six-week dataset of thermal cycle test results for the **Model ABC** battery
34
+ pack product across three test stands, plus distractor products (Model XYZ, Model ABC Rev B)
35
+ to populate the Products table realistically. Includes deliberate anomalies students will
36
+ discover through visualization:
37
+
38
+ - 18 test results (Model ABC) with 11 parametric measurements per result
39
+ - TC-03 runs ~3–4 °C warmer than TC-01/TC-02 (calibration offset)
40
+ - TC-01 Cycle 5: internal resistance spike → FAIL
41
+ - TC-03 Cycle 4: cell temperature spike → FAIL
42
+
43
+ **Setup time:** ~5 minutes
44
+
45
+ ## Usage
46
+
47
+ ```bash
48
+ # List available examples
49
+ slcli example list
50
+
51
+ # Show details about an example
52
+ slcli example info demo-test-plans
53
+
54
+ # Preview what would be created (dry-run)
55
+ slcli example install demo-test-plans -w <workspace-id> --dry-run
56
+
57
+ # Create resources in a specific workspace (name or ID)
58
+ slcli example install demo-test-plans -w <workspace>
59
+ # Write an audit log of provisioning results
60
+ slcli example install demo-test-plans -w <workspace> --audit-log install-log.json --format json
61
+
62
+ # Delete example resources from a workspace
63
+ slcli example delete demo-test-plans -w <workspace-id> --dry-run
64
+ slcli example delete demo-test-plans -w <workspace>
65
+ # Write an audit log of deletion results
66
+ slcli example delete demo-test-plans -w <workspace> --audit-log delete-log.json --format json
67
+ ```
68
+
69
+ ## Creating New Examples
70
+
71
+ 1. Create a new directory in `examples/`:
72
+
73
+ ```
74
+ examples/my-example/
75
+ ├── config.yaml # Example configuration
76
+ └── README.md # Optional: Setup guide
77
+ ```
78
+
79
+ 2. Create `config.yaml` following the schema in `_schema/schema-v1.0.json`
80
+
81
+ 3. Test locally:
82
+ ```bash
83
+ slcli example info my-example
84
+ ```
85
+
86
+ ## Configuration Format
87
+
88
+ All examples use YAML format with the following structure:
89
+
90
+ ```yaml
91
+ format_version: "1.0"
92
+ name: "example-slug"
93
+ title: "Example Title"
94
+ description: "Detailed description..."
95
+ author: "Author Name"
96
+ tags: ["training", "demo"]
97
+ estimated_setup_time_minutes: 5
98
+
99
+ resources:
100
+ - type: "location"
101
+ name: "Location Name"
102
+ properties:
103
+ # API-specific fields
104
+ id_reference: "loc_ref"
105
+ tags: ["example"]
106
+
107
+ - type: "system"
108
+ name: "System Name"
109
+ properties:
110
+ location_id: "${loc_ref}" # Reference resolution
111
+ id_reference: "sys_ref"
112
+ tags: ["example"]
113
+
114
+ cleanup:
115
+ order: ["system", "location"]
116
+ filter_tags: ["example"]
117
+ require_confirmation: true
118
+ ```
119
+
120
+ ## Resource Types Supported
121
+
122
+ - `location` - Physical location
123
+ - `product` - Product definition
124
+ - `system` - Test system
125
+ - `asset` - Asset on a system
126
+ - `dut` - Device under test
127
+ - `testtemplate` - Test plan template
128
+
129
+ ## Notes
130
+
131
+ - Examples are versioned with the `format_version` field (currently 1.0)
132
+ - Resource cleanup is tag-based and order-aware
133
+ - References use `${id_reference}` syntax for interpolation
134
+ - All resources created by an example are tagged with the example name for safe deletion
@@ -0,0 +1,169 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "SLE Example Configuration Schema v1.0",
4
+ "type": "object",
5
+ "required": [
6
+ "format_version",
7
+ "name",
8
+ "title",
9
+ "resources"
10
+ ],
11
+ "properties": {
12
+ "format_version": {
13
+ "type": "string",
14
+ "enum": [
15
+ "1.0"
16
+ ],
17
+ "description": "Schema version"
18
+ },
19
+ "name": {
20
+ "type": "string",
21
+ "pattern": "^[a-z0-9-]+$",
22
+ "description": "Unique slug identifier (lowercase, hyphens, numbers)"
23
+ },
24
+ "title": {
25
+ "type": "string",
26
+ "description": "Human-readable example title"
27
+ },
28
+ "description": {
29
+ "type": "string",
30
+ "description": "Detailed description of what example includes"
31
+ },
32
+ "author": {
33
+ "type": "string",
34
+ "description": "Author/organization name"
35
+ },
36
+ "created_date": {
37
+ "type": "string",
38
+ "description": "ISO 8601 creation date (YYYY-MM-DD)"
39
+ },
40
+ "updated_date": {
41
+ "type": "string",
42
+ "description": "ISO 8601 update date (YYYY-MM-DD)"
43
+ },
44
+ "tags": {
45
+ "type": "array",
46
+ "items": {
47
+ "type": "string"
48
+ },
49
+ "description": "Tags for categorization (training, beginner, etc.)"
50
+ },
51
+ "estimated_setup_time_minutes": {
52
+ "type": "integer",
53
+ "minimum": 1,
54
+ "description": "Estimated setup time in minutes"
55
+ },
56
+ "required_systemlink_version": {
57
+ "type": "string",
58
+ "description": "Minimum required SLE version (e.g., 2024.1)"
59
+ },
60
+ "target_workspace": {
61
+ "type": [
62
+ "string",
63
+ "null"
64
+ ],
65
+ "description": "Target workspace name or null for default"
66
+ },
67
+ "resources": {
68
+ "type": "array",
69
+ "items": {
70
+ "$ref": "#/definitions/resource"
71
+ },
72
+ "description": "Resources to provision in order"
73
+ },
74
+ "cleanup": {
75
+ "type": "object",
76
+ "properties": {
77
+ "order": {
78
+ "type": "array",
79
+ "items": {
80
+ "type": "string"
81
+ },
82
+ "description": "Resource types to delete in this order"
83
+ },
84
+ "filter_tags": {
85
+ "type": "array",
86
+ "items": {
87
+ "type": "string"
88
+ },
89
+ "description": "Only delete resources with these tags"
90
+ },
91
+ "require_confirmation": {
92
+ "type": "boolean",
93
+ "default": true,
94
+ "description": "Require confirmation before cleanup"
95
+ }
96
+ }
97
+ },
98
+ "validation": {
99
+ "type": "object",
100
+ "properties": {
101
+ "require_workspace": {
102
+ "type": "boolean",
103
+ "default": true,
104
+ "description": "Workspace must exist before install"
105
+ }
106
+ }
107
+ },
108
+ "post_install": {
109
+ "type": "object",
110
+ "properties": {
111
+ "instructions": {
112
+ "type": "string",
113
+ "description": "Post-install instructions for user"
114
+ }
115
+ }
116
+ }
117
+ },
118
+ "definitions": {
119
+ "resource": {
120
+ "type": "object",
121
+ "required": [
122
+ "type",
123
+ "name",
124
+ "properties",
125
+ "id_reference"
126
+ ],
127
+ "properties": {
128
+ "type": {
129
+ "type": "string",
130
+ "enum": [
131
+ "location",
132
+ "product",
133
+ "system",
134
+ "asset",
135
+ "dut",
136
+ "testtemplate",
137
+ "workflow",
138
+ "work_item",
139
+ "work_order",
140
+ "test_result",
141
+ "data_table",
142
+ "file"
143
+ ],
144
+ "description": "SLE resource type"
145
+ },
146
+ "name": {
147
+ "type": "string",
148
+ "description": "Resource name (displayed in SLE)"
149
+ },
150
+ "properties": {
151
+ "type": "object",
152
+ "description": "Resource-specific properties (API fields)"
153
+ },
154
+ "id_reference": {
155
+ "type": "string",
156
+ "pattern": "^[a-z_][a-z0-9_]*$",
157
+ "description": "Internal reference ID for interpolation (${ref_name})"
158
+ },
159
+ "tags": {
160
+ "type": "array",
161
+ "items": {
162
+ "type": "string"
163
+ },
164
+ "description": "Tags for cleanup filtering and organization"
165
+ }
166
+ }
167
+ }
168
+ }
169
+ }
@@ -0,0 +1,323 @@
1
+ # Demo Complete Workflow Example
2
+
3
+ A **comprehensive example** demonstrating the full SystemLink test execution workflow from resource provisioning through test results and data management.
4
+
5
+ ## Overview
6
+
7
+ This example showcases:
8
+
9
+ - **Tier 0 (Foundational)**: Locations, products, test systems
10
+ - **Tier 1 (Cross-cutting)**: DUTs (devices under test), assets, fixtures, reference equipment
11
+ - **Tier 2 (Work & Execution)**: Custom workflows, test templates, work items, work orders
12
+ - **Tier 3 (Data & Results)**: Test results, structured data tables, test logs and reports
13
+
14
+ Perfect for understanding how SystemLink coordinates complex multi-phase test campaigns with complete traceability from planning through data management.
15
+
16
+ ## Resource Hierarchy
17
+
18
+ ```
19
+ Location: Production Test Lab
20
+ ├── Product: Advanced Control System v3.0
21
+ │ ├── System: Test Bench 1 → DUT-001
22
+ │ ├── System: Test Bench 2 → DUT-002
23
+ │ ├── Assets: Reference instruments & data logger
24
+ │ │
25
+ │ └── Workflow: ACS Validation Workflow
26
+ │ └── Test Template: ACS Validation Suite
27
+ │ ├── Work Item 1: Validation Run 1 (Unit 001)
28
+ │ │ ├── Test Result 1: Voltage Regulation Test
29
+ │ │ │ └── Data Table: Voltage measurements (25 rows)
30
+ │ │ ├── Test Result 2: Response Time Test
31
+ │ │ │ └── Data Table: Step response measurements (5 rows)
32
+ │ │ ├── Test Result 3: Thermal Test
33
+ │ │ │ └── Data Table: Temperature profile (33 rows)
34
+ │ │ └── Files: Test logs, raw data, waveforms
35
+ │ │
36
+ │ └── Work Item 2: Regression Test (Unit 002)
37
+ │ ├── Test Result 4: Voltage Regression Test
38
+ │ │ └── Data Table: Regression comparison (5 rows)
39
+ │ └── Files: Regression data, comparison report
40
+
41
+ └── Work Order: ACS Validation Campaign
42
+ ├── Schedules: Work Item 1 & 2
43
+ ├── Reserves: Test Bench 1 & 2, DUT-001, DUT-002
44
+ └── Test Result 5: Campaign Summary
45
+ └── Files: Executive report, test matrix
46
+ ```
47
+
48
+ ## Key Features
49
+
50
+ ### 1. **Custom Workflow** (Tier 2)
51
+
52
+ - Event-driven execution model with 5 sequential procedures
53
+ - Integrates with test template for automated test planning
54
+ - Tracks initialization, testing phases, data collection, and cleanup
55
+
56
+ ### 2. **Test Template** (Tier 2)
57
+
58
+ - Reusable test plan for ACS validation
59
+ - Detailed procedures for voltage regulation, response time, and thermal testing
60
+ - Explicit acceptance criteria (< 2% ripple, < 100ms response, < 80°C thermal)
61
+ - References custom workflow for execution coordination
62
+
63
+ ### 3. **Work Items & Work Order** (Tier 2)
64
+
65
+ - **Work Item 1**: Validates ACS unit 001 on primary bench (high priority)
66
+ - **Work Item 2**: Regression tests ACS unit 002 on secondary bench (medium priority)
67
+ - **Work Order**: Coordinates both work items with resource reservation (start: 08:00, end: 12:00)
68
+
69
+ ### 4. **Test Results** (Tier 3)
70
+
71
+ - **5 result records** capturing execution outcomes:
72
+ - Voltage regulation (Run 1)
73
+ - Response time (Run 1)
74
+ - Thermal performance (Run 1)
75
+ - Voltage regression (Run 2)
76
+ - Campaign summary
77
+ - Each result tracks operator, timestamps, measurements, verdict, and linked files
78
+
79
+ ### 5. **Data Tables** (Tier 3)
80
+
81
+ - **Voltage Regulation**: 25 rows of load sweep data (0A-5A)
82
+ - **Response Time**: 5 rows of step response measurements
83
+ - **Thermal Profile**: 33 rows of temperature evolution (0-30 minutes)
84
+ - **Regression Comparison**: 5 rows comparing Run 1 vs Run 2 across load points
85
+ - All structured with proper column definitions, units, and sample data
86
+
87
+ ### 6. **Files & Documentation** (Tier 1 & 3)
88
+
89
+ - Raw test data (`.csv` files)
90
+ - Waveform captures (`.tds` oscilloscope format)
91
+ - Test execution logs (`.txt`)
92
+ - Campaign reports (`.pdf`, `.xlsx`)
93
+ - All properly tagged and cross-referenced to test results
94
+
95
+ ## Installation
96
+
97
+ ### Prerequisites
98
+
99
+ - SystemLink server (v2024.1 or later)
100
+ - Target workspace with product/system/asset management enabled
101
+ - SystemLink CLI configured with valid credentials
102
+
103
+ ### Quick Install
104
+
105
+ ```bash
106
+ # Provision all resources (dry-run first to verify)
107
+ slcli example install demo-complete-workflow -w <workspace> --dry-run
108
+
109
+ # Actual provisioning
110
+ slcli example install demo-complete-workflow -w <workspace>
111
+
112
+ # Cleanup (removes all tagged resources)
113
+ slcli example uninstall demo-complete-workflow -w <workspace> --dry-run
114
+ slcli example uninstall demo-complete-workflow -w <workspace>
115
+ ```
116
+
117
+ ### Expected Output
118
+
119
+ ```
120
+ Installation Progress
121
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
122
+ Resource Name Type Action Server ID Error
123
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
124
+ Production Test Lab location create <location-id>
125
+ Advanced Control System v3.0 product create <product-id>
126
+ Control System Test Bench 1 system create <system-id-1>
127
+ Control System Test Bench 2 system create <system-id-2>
128
+ DUT-ACS-001 (Bench 1) dut create <asset-id-1>
129
+ DUT-ACS-002 (Bench 2) dut create <asset-id-2>
130
+ Reference Voltage Source asset create <asset-id-3>
131
+ Data Logger asset create <asset-id-4>
132
+ ACS Validation Workflow workflow create <workflow-id>
133
+ ACS Validation Suite testtemplate create <template-id>
134
+ ACS Validation Run 1 - Unit 001 work_item create <work-item-id-1>
135
+ ACS Regression Test - Unit 002 work_item create <work-item-id-2>
136
+ ACS Validation Campaign work_order create <work-order-id>
137
+ ACS Run 1 - Result 1 test_result create <result-id-1>
138
+ [... 4 more results ...]
139
+ Voltage Regulation Results data_table create <table-id-1>
140
+ [... 3 more data tables ...]
141
+ voltage_regulation_run1.csv file create <file-id-1>
142
+ [... 3 more files ...]
143
+
144
+ Summary: 20 resources successfully created
145
+ Estimated setup time: 10 minutes
146
+ ```
147
+
148
+ ## Resource Details
149
+
150
+ ### Foundational Resources
151
+
152
+ - **Location**: Production Test Lab (Austin, TX)
153
+ - **Product**: Advanced Control System v3.0 (part # DCS-3000)
154
+ - **Systems**:
155
+ - Test Bench 1 (CSTB-001) → Primary validation bench
156
+ - Test Bench 2 (CSTB-002) → Regression testing bench
157
+
158
+ ### Test Assets
159
+
160
+ - **DUT-001**: ACS unit 001 (serial: ACS-SN-20250101-001)
161
+ - **DUT-002**: ACS unit 002 (serial: ACS-SN-20250102-002)
162
+ - **Reference Equipment**:
163
+ - Reference Voltage Source (GPIB-connected)
164
+ - Data Logger (Ethernet-connected)
165
+
166
+ ### Test Execution Configuration
167
+
168
+ - **Campaign Duration**: 2 hours (08:00-10:10)
169
+ - **DUTs Tested**: 2
170
+ - **Test Phases**: 3 (voltage, response time, thermal)
171
+ - **Test Results**: 5 (3 for Run 1, 1 for Run 2, 1 summary)
172
+ - **Measurements**: 73 total data points across 4 tables
173
+
174
+ ### Acceptance Criteria
175
+
176
+ - **Voltage Regulation**: Ripple < 2% across 0-5A load range
177
+ - **Response Time**: Rise time < 100ms for step input
178
+ - **Thermal**: Peak internal temperature < 80°C at full load
179
+ - **Campaign**: All measurements pass specification limits
180
+
181
+ ## Data Exploration
182
+
183
+ After installation, query the resources:
184
+
185
+ ```bash
186
+ # List all created locations
187
+ slcli location list -w <workspace> --format table
188
+
189
+ # Find the ACS product
190
+ slcli product list -w <workspace> --take 50 | grep "Advanced Control"
191
+
192
+ # View test systems
193
+ slcli system list -w <workspace> | grep "Test Bench"
194
+
195
+ # Query test results
196
+ slcli result list -w <workspace> --take 20
197
+
198
+ # Export measurement data
199
+ slcli datatable export <workspace> <table-id> -o measurements.csv
200
+ ```
201
+
202
+ ## Workflow Understanding
203
+
204
+ ### Phase 1: Planning (Tier 0-1 Provisioning)
205
+
206
+ Resources created: Location, Product, Systems, Assets
207
+
208
+ ### Phase 2: Test Planning (Tier 2 Provisioning)
209
+
210
+ Resources created: Workflow, Test Template, Work Items, Work Order
211
+
212
+ ### Phase 3: Test Execution (Tier 2 Execution)
213
+
214
+ - Work Order triggers scheduled start at 08:00
215
+ - Work Item 1 executes on Bench 1 (08:15-09:30)
216
+ - Work Item 2 executes on Bench 2 (09:45-10:10)
217
+ - Each item executes 3 test phases with measurements logged
218
+
219
+ ### Phase 4: Results Collection (Tier 3 Population)
220
+
221
+ - Test Results created as executions complete
222
+ - Data Tables populated with measurement data
223
+ - Files stored (logs, reports, raw data)
224
+ - Campaign Summary aggregates all results
225
+
226
+ ## Use Cases
227
+
228
+ 1. **Learning**: Understand how SystemLink coordinates multi-phase tests with complete traceability
229
+ 2. **Testing**: Validate test execution workflow in your environment
230
+ 3. **Template**: Adapt for your own validation campaigns
231
+ 4. **Benchmarking**: Measure SystemLink performance with realistic workload
232
+ 5. **Documentation**: Examples for training and integration documentation
233
+
234
+ ## Customization
235
+
236
+ To adapt for your environment:
237
+
238
+ 1. **Replace Product Names**: Update `Advanced Control System v3.0` to your product
239
+ 2. **Adjust Test Phases**: Modify workflow procedures and test template phases
240
+ 3. **Change DUT Count**: Add more work items referencing different DUTs
241
+ 4. **Scale Results**: Increase test result count to simulate longer campaigns
242
+ 5. **Update Measurements**: Replace sample data with your actual test specifications
243
+
244
+ ## Files Included
245
+
246
+ ```
247
+ demo-complete-workflow/
248
+ ├── config.yaml # Complete resource configuration
249
+ └── README.md # This file
250
+ ```
251
+
252
+ ## Cleanup
253
+
254
+ Remove all created resources:
255
+
256
+ ```bash
257
+ slcli example uninstall demo-complete-workflow -w <workspace>
258
+ ```
259
+
260
+ This removes all resources tagged with `slcli-example:demo-complete-workflow`, leaving your workspace clean.
261
+
262
+ ## Troubleshooting
263
+
264
+ ### Resources Already Exist
265
+
266
+ If you see "skipped" status:
267
+
268
+ ```bash
269
+ # List existing resources to verify
270
+ slcli location list -w <workspace> | grep "Production Test Lab"
271
+
272
+ # Either reuse existing IDs or use different resource names
273
+ ```
274
+
275
+ ### Partial Installation Failure
276
+
277
+ Resources are created individually. If installation fails mid-way:
278
+
279
+ ```bash
280
+ # Check what was created
281
+ slcli location list -w <workspace>
282
+ slcli product list -w <workspace>
283
+ slcli system list -w <workspace>
284
+
285
+ # Run uninstall to clean up and retry
286
+ slcli example uninstall demo-complete-workflow -w <workspace>
287
+ slcli example install demo-complete-workflow -w <workspace>
288
+ ```
289
+
290
+ ### Test Results Not Appearing
291
+
292
+ Test results are created as part of the provisioning flow:
293
+
294
+ ```bash
295
+ # Verify work items were created
296
+ slcli workitem list -w <workspace>
297
+
298
+ # Check for test results
299
+ slcli result list -w <workspace>
300
+
301
+ # If missing, check error messages in installation output
302
+ ```
303
+
304
+ ## Additional Resources
305
+
306
+ - **SystemLink API Documentation**: https://dev-api.lifecyclesolutions.ni.com/
307
+ - **Test Monitor Specs**: https://dev-api.lifecyclesolutions.ni.com/nitestmonitor/swagger/
308
+ - **Work Item API**: https://dev-api.lifecyclesolutions.ni.com/niworkitem/swagger/
309
+ - **systemlink-cli GitHub**: https://github.com/ni/systemlink-cli
310
+
311
+ ## Contact & Support
312
+
313
+ For issues or questions about this example:
314
+
315
+ - File an issue: [GitHub Issues](https://github.com/ni/systemlink-cli/issues)
316
+ - Check existing examples in `slcli/examples/`
317
+ - Review the CLI help: `slcli example --help`
318
+
319
+ ---
320
+
321
+ **Created**: 2025-12-18
322
+ **Format Version**: 1.0
323
+ **Recommended SystemLink Version**: 2024.1+