Skip to content

Commit f08144c

Browse files
authored
Fix an issue with pydantic 2.11 schema changes, and add additional documentation (#29)
1 parent e9f0232 commit f08144c

File tree

6 files changed

+230
-155
lines changed

6 files changed

+230
-155
lines changed

ark_sdk_python/args/ark_pydantic_argparse.py

+1
Original file line numberDiff line numberDiff line change
@@ -514,6 +514,7 @@ def schema_to_argparse(
514514
'properties' not in schema['properties'][prop_name]
515515
and (
516516
'additionalProperties' in schema['properties'][prop_name]
517+
and isinstance(schema['properties'][prop_name]['additionalProperties'], dict)
517518
and 'type' in schema['properties'][prop_name]['additionalProperties']
518519
and len(schema['properties'][prop_name]['additionalProperties']) == 1
519520
)

docs/howto/enduser_rdp_workflow.md

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
title: End-user rdp workflow
3+
description: End-user rdp Workflow
4+
---
5+
6+
# End-user rdp Workflow
7+
Here is an example workflow for connecting to a windows box using rdp:
8+
9+
1. Install Ark SDK: `pip3 install ark-sdk-python`
10+
1. Create a profile:
11+
* Interactively:
12+
```shell linenums="0"
13+
ark configure
14+
```
15+
* Silently:
16+
```shell linenums="0"
17+
ark configure --silent --work-with-isp --isp-username myuser
18+
```
19+
1. Log in to Ark:
20+
```shell linenums="0"
21+
ark login --silent --isp-secret <my-ark-secret>
22+
```
23+
1. Get a short-lived SSO RDP file for a windows box from the SIA service:
24+
```shell linenums="0"
25+
ark exec dpa sso short-lived-rdp-file -ta targetaddress -td targetdomain -tu targetuser
26+
```
27+
1. Use the RDP file with mstsc or any other RDP client to connect

docs/howto/enduser_ssh_workflow.md

+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
title: End-user ssh workflow
3+
description: End-user ssh Workflow
4+
---
5+
6+
# End-user ssh Workflow
7+
Here is an example workflow for connecting to a linux box using ssh:
8+
9+
1. Install Ark SDK: `pip3 install ark-sdk-python`
10+
1. Create a profile:
11+
* Interactively:
12+
```shell linenums="0"
13+
ark configure
14+
```
15+
* Silently:
16+
```shell linenums="0"
17+
ark configure --silent --work-with-isp --isp-username myuser
18+
```
19+
1. Log in to Ark:
20+
```shell linenums="0"
21+
ark login --silent --isp-secret <my-ark-secret>
22+
```
23+
1. Get a short-lived SSH private key for a linux box from the SIA service:
24+
```shell linenums="0"
25+
ark exec sia sso short-lived-ssh-key
26+
```
27+
1. Log in directly to the linux box:
28+
```shell linenums="0"
29+
ssh -i ~/.ssh/sia_ssh_key.pem myuser@suffix@targetuser@targetaddress@sia_proxy
30+
```

mkdocs.yml

+2
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ nav:
1414
- Work with Ark cache: howto/working_with_ark_cache.md
1515
- End-user database workflow: howto/enduser_databases_workflow.md
1616
- End-user Kubernetes workflow: howto/enduser_kubernetes_workflow.md
17+
- End-user SSH workflow: howto/enduser_ssh_workflow.md
18+
- End-user RDP workflow: howto/enduser_rdp_workflow.md
1719
- Simple commands workflow: howto/simple_commands_workflow.md
1820
- Simple SDK workflow: howto/simple_sdk_workflow.md
1921
- Refresh authentication: howto/refreshing_authentication.md

0 commit comments

Comments
 (0)