aspera-cli 4.0.0.pre1 → 4.0.0.pre2
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.
- checksums.yaml +4 -4
- data/README.md +213 -255
- data/docs/Makefile +19 -13
- data/docs/README.erb.md +109 -76
- data/docs/test_env.conf +37 -14
- data/examples/aoc.rb +2 -2
- data/examples/transfer.rb +23 -14
- data/lib/aspera/{on_cloud.rb → aoc.rb} +24 -15
- data/lib/aspera/cli/main.rb +1 -0
- data/lib/aspera/cli/plugins/alee.rb +2 -2
- data/lib/aspera/cli/plugins/{oncloud.rb → aoc.rb} +34 -34
- data/lib/aspera/cli/plugins/ats.rb +1 -1
- data/lib/aspera/cli/plugins/config.rb +31 -17
- data/lib/aspera/cli/plugins/cos.rb +9 -49
- data/lib/aspera/cli/version.rb +1 -1
- data/lib/aspera/cos_node.rb +50 -0
- data/lib/aspera/data/1 +0 -0
- data/lib/aspera/data/2 +0 -0
- data/lib/aspera/data/3 +1 -0
- data/lib/aspera/data/4 +2 -0
- data/lib/aspera/data/5 +1 -0
- data/lib/aspera/data/6 +2 -0
- data/lib/aspera/data/7 +0 -0
- data/lib/aspera/data_repository.rb +13 -0
- data/lib/aspera/environment.rb +55 -0
- data/lib/aspera/fasp/aoc.rb +6 -6
- data/lib/aspera/fasp/installation.rb +112 -56
- data/lib/aspera/fasp/local.rb +2 -3
- data/lib/aspera/faspex_gw.rb +2 -2
- data/lib/aspera/open_application.rb +11 -24
- data/lib/aspera/preview/generator.rb +1 -5
- data/lib/aspera/rest.rb +56 -48
- data/lib/aspera/rest_error_analyzer.rb +5 -4
- data/lib/aspera/temp_file_manager.rb +1 -1
- metadata +52 -26
- data/docs/secrets.make +0 -38
- data/lib/aspera/cli/plugins/xnode.rb +0 -115
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 36a82a69216429313771832febaa8a3a84b02aa0c6f10c7ccdb5e637c768046e
|
4
|
+
data.tar.gz: 73c2b08c40ed75fbe99164cbdbaf236309d82bd25bf8dd5ce92081ed09faecda
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c04ef4969a3cac1435c85b7533b84756fbdf312ee692d79d249839d1cd0b7cd55a8f6f7436e01f8242414218321e81d350f8f1f446f7bb6c3de52f9771bb7612
|
7
|
+
data.tar.gz: e036d3c9ebc46356b99f7fd4a56e7586d992485628add560360d4fda9bd58bd655ba26a4bc1a45b4157597d62e8d250e7da7d44c808644c3cfbf54d3512234f6
|
data/README.md
CHANGED
@@ -1,11 +1,9 @@
|
|
1
1
|
[comment1]: # (Do not edit this README.md, edit docs/README.erb.md, for details, read docs/README.md)
|
2
|
-
|
3
|
-
|
4
2
|
# `ascli` : a Command Line for IBM Aspera products
|
5
3
|
|
6
|
-
Version : 4.0.0.
|
4
|
+
Version : 4.0.0.pre2
|
7
5
|
|
8
|
-
_Laurent/2016-
|
6
|
+
_Laurent/2016-2021_
|
9
7
|
|
10
8
|
This gem provides a command line interface to Aspera Applications.
|
11
9
|
|
@@ -38,7 +36,7 @@ Once the gem is installed, `ascli` shall be accessible:
|
|
38
36
|
|
39
37
|
```
|
40
38
|
$ ascli --version
|
41
|
-
4.0.0.
|
39
|
+
4.0.0.pre2
|
42
40
|
```
|
43
41
|
|
44
42
|
## First use
|
@@ -114,8 +112,7 @@ The following sections provide information on the installation.
|
|
114
112
|
## <a name="ruby"></a>Ruby
|
115
113
|
|
116
114
|
A ruby interpreter is required to run the tool or to use the gem and tool.
|
117
|
-
|
118
|
-
Ruby 2.5+ is prefered, but it should also work with 2.1+.
|
115
|
+
The Ruby version shall be > 2.4.
|
119
116
|
Any type of Ruby installation can be used.
|
120
117
|
|
121
118
|
Refer to the following sections for a proposed method for specific operating systems.
|
@@ -126,7 +123,7 @@ Refer to the following sections for a proposed method for specific operating sys
|
|
126
123
|
MacOS 10.13+ (High Sierra) comes with a recent Ruby, so you can use it directly, you will need to install aspera-cli using `sudo` :
|
127
124
|
|
128
125
|
```
|
129
|
-
$ sudo gem install aspera-cli
|
126
|
+
$ sudo gem install aspera-cli --pre
|
130
127
|
```
|
131
128
|
|
132
129
|
Alternatively, if you use [Homebrew](https://brew.sh/) already you can install Ruby with it:
|
@@ -205,7 +202,7 @@ For instance to build from source, and install in `/opt/ruby` :
|
|
205
202
|
Once you have Ruby and rights to install gems: Install the gem and its dependencies:
|
206
203
|
|
207
204
|
```
|
208
|
-
# gem install aspera-cli
|
205
|
+
# gem install aspera-cli --pre
|
209
206
|
```
|
210
207
|
|
211
208
|
To upgrade to the latest version:
|
@@ -222,7 +219,13 @@ an Aspera Transfer:
|
|
222
219
|
* ascp
|
223
220
|
* aspera-license (in same folder, or ../etc)
|
224
221
|
|
225
|
-
|
222
|
+
This can be installed directly with
|
223
|
+
|
224
|
+
```
|
225
|
+
$ ascli conf ascp install
|
226
|
+
```
|
227
|
+
|
228
|
+
Those can be found in one of IBM Aspera transfer server or client with its license file (some are free):
|
226
229
|
|
227
230
|
* IBM Aspera Connect Client (Free)
|
228
231
|
* IBM Aspera Desktop Client (Free)
|
@@ -385,7 +388,7 @@ The style of output can be set using the `format` parameter, supporting:
|
|
385
388
|
Table output can be filtered using the `select` parameter. Example:
|
386
389
|
|
387
390
|
```
|
388
|
-
$ ascli
|
391
|
+
$ ascli aoc admin res user list --fields=name,email,ats_admin --query=@json:'{"per_page":1000,"page":1,"sort":"name"}' --select=@json:'{"ats_admin":true}'
|
389
392
|
:...............................:..................................:...........:
|
390
393
|
: name : email : ats_admin :
|
391
394
|
:...............................:..................................:...........:
|
@@ -1222,12 +1225,70 @@ A non complete list of commands used in unit tests:
|
|
1222
1225
|
```
|
1223
1226
|
ascli
|
1224
1227
|
ascli -h
|
1228
|
+
ascli aoc admin analytics transfers --query=@json:'{"status":"completed","direction":"receive"}'
|
1229
|
+
ascli aoc admin ats access_key --id=akibmcloud --secret=somesecret node browse /
|
1230
|
+
ascli aoc admin ats access_key --id=akibmcloud delete
|
1231
|
+
ascli aoc admin ats access_key create --cloud=aws --region=my_aws_bucket_region --params=@json:'{"id":"ak_aws","name":"my test key AWS","storage":{"type":"aws_s3","bucket":"my_aws_bucket_name","credentials":{"access_key_id":"my_aws_bucket_key","secret_access_key":"my_aws_bucket_secret"},"path":"/"}}'
|
1232
|
+
ascli aoc admin ats access_key create --cloud=softlayer --region=my_icos_bucket_region --params=@json:'{"id":"akibmcloud","secret":"somesecret","name":"my test key","storage":{"type":"ibm-s3","bucket":"my_icos_bucket_name","credentials":{"access_key_id":"my_icos_bucket_key","secret_access_key":"my_icos_bucket_secret"},"path":"/"}}'
|
1233
|
+
ascli aoc admin ats access_key list --fields=name,id
|
1234
|
+
ascli aoc admin ats cluster clouds
|
1235
|
+
ascli aoc admin ats cluster list
|
1236
|
+
ascli aoc admin ats cluster show --cloud=aws --region=eu-west-1
|
1237
|
+
ascli aoc admin ats cluster show --id=1f412ae7-869a-445c-9c05-02ad16813be2
|
1238
|
+
ascli aoc admin resource node --name=AOC_NODE1_NAME --secret=AOC_NODE1_SECRET v3 access_key create --value=@json:'{"id":"testsub1","storage":{"path":"/folder1"}}'
|
1239
|
+
ascli aoc admin resource node --name=AOC_NODE1_NAME --secret=AOC_NODE1_SECRET v3 access_key delete --id=testsub1
|
1240
|
+
ascli aoc admin resource node --name=AOC_NODE1_NAME --secret=AOC_NODE1_SECRET v3 events
|
1241
|
+
ascli aoc admin resource node --name=AOC_NODE1_NAME --secret=AOC_NODE1_SECRET v4 browse /
|
1242
|
+
ascli aoc admin resource node --name=AOC_NODE1_NAME --secret=AOC_NODE1_SECRET v4 delete /folder1
|
1243
|
+
ascli aoc admin resource node --name=AOC_NODE1_NAME --secret=AOC_NODE1_SECRET v4 mkdir /folder1
|
1244
|
+
ascli aoc admin resource workspace list
|
1245
|
+
ascli aoc admin resource workspace_membership list --fields=ALL --query=@json:'{"page":1,"per_page":50,"embed":"member","inherited":false,"workspace_id":11363,"sort":"name"}'
|
1246
|
+
ascli aoc apiinfo
|
1247
|
+
ascli aoc automation workflow --id="my_wf_id" action create --value=@json:'{"name":"toto"}' | tee action.info
|
1248
|
+
ascli aoc automation workflow create --value=@json:'{"name":"test_workflow"}'
|
1249
|
+
ascli aoc automation workflow delete --id="my_wf_id"
|
1250
|
+
ascli aoc automation workflow list
|
1251
|
+
ascli aoc automation workflow list --select=@json:'{"name":"test_workflow"}' --fields=id --format=csv --display=data > test
|
1252
|
+
ascli aoc automation workflow list --value=@json:'{"show_org_workflows":"true"}' --scope=admin:all
|
1253
|
+
ascli aoc bearer_token --display=data --scope=user:all
|
1254
|
+
ascli aoc faspex
|
1255
|
+
ascli aoc files bearer /
|
1256
|
+
ascli aoc files browse /
|
1257
|
+
ascli aoc files browse / -N --link=my_aoc_publink_folder
|
1258
|
+
ascli aoc files delete /testsrc
|
1259
|
+
ascli aoc files download --transfer=connect /200KB.1
|
1260
|
+
ascli aoc files file 18891
|
1261
|
+
ascli aoc files find / --value='\.partial$'
|
1262
|
+
ascli aoc files http_node_download --to-folder=. /200KB.1
|
1263
|
+
ascli aoc files mkdir /testsrc
|
1264
|
+
ascli aoc files rename /somefolder testdst
|
1265
|
+
ascli aoc files short_link create --to-folder=/testdst --value=private
|
1266
|
+
ascli aoc files short_link create --to-folder=/testdst --value=public
|
1267
|
+
ascli aoc files short_link list --value=@json:'{"purpose":"shared_folder_auth_link"}'
|
1268
|
+
ascli aoc files transfer --from-folder=/testsrc --to-folder=/testdst testfile.bin
|
1269
|
+
ascli aoc files upload --to-folder=/testsrc testfile.bin
|
1270
|
+
ascli aoc files upload -N --to-folder=/ testfile.bin --link=my_aoc_publink_folder
|
1271
|
+
ascli aoc files v3 info
|
1272
|
+
ascli aoc org -N --link=my_aoc_publink_recv_from_aocuser
|
1273
|
+
ascli aoc organization
|
1274
|
+
ascli aoc packages list
|
1275
|
+
ascli aoc packages list --format=csv --fields=id --display=data|head -n 1);\
|
1276
|
+
ascli aoc packages recv --id="my_package_id" --to-folder=.
|
1277
|
+
ascli aoc packages recv --id=ALL --to-folder=. --once-only=yes --lock-port=12345
|
1278
|
+
ascli aoc packages send --value=@json:'{"name":"Important files delivery","recipients":["external.user@example.com"]}' --new-user-option=@json:'{"package_contact":true}' testfile.bin
|
1279
|
+
ascli aoc packages send --value=@json:'{"name":"Important files delivery","recipients":["internal.user@example.com"],"note":"my note"}' testfile.bin
|
1280
|
+
ascli aoc packages send --workspace="my_aoc_shbx_ws" --value=@json:'{"name":"Important files delivery","recipients":["my_aoc_shbx_name"]}' testfile.bin
|
1281
|
+
ascli aoc packages send -N --value=@json:'{"name":"Important files delivery"}' testfile.bin --link=my_aoc_publink_send_aoc_user
|
1282
|
+
ascli aoc packages send -N --value=@json:'{"name":"Important files delivery"}' testfile.bin --link=my_aoc_publink_send_shd_inbox
|
1283
|
+
ascli aoc user info modify @json:'{"name":"dummy change"}'
|
1284
|
+
ascli aoc user info show
|
1285
|
+
ascli aoc workspace
|
1225
1286
|
ascli ats access_key --id=ak_aws delete
|
1226
1287
|
ascli ats access_key --id=akibmcloud --secret=somesecret cluster
|
1227
1288
|
ascli ats access_key --id=akibmcloud --secret=somesecret node browse /
|
1228
1289
|
ascli ats access_key --id=akibmcloud delete
|
1229
|
-
ascli ats access_key create --cloud=aws --region=
|
1230
|
-
ascli ats access_key create --cloud=softlayer --region=
|
1290
|
+
ascli ats access_key create --cloud=aws --region=my_aws_bucket_region --params=@json:'{"id":"ak_aws","name":"my test key AWS","storage":{"type":"aws_s3","bucket":"my_aws_bucket_name","credentials":{"access_key_id":"my_aws_bucket_key","secret_access_key":"my_aws_bucket_secret"},"path":"/"}}'
|
1291
|
+
ascli ats access_key create --cloud=softlayer --region=my_icos_bucket_region --params=@json:'{"id":"akibmcloud","secret":"somesecret","name":"my test key","storage":{"type":"ibm-s3","bucket":"my_icos_bucket_name","credentials":{"access_key_id":"my_icos_bucket_key","secret_access_key":"my_icos_bucket_secret"},"path":"/"}}'
|
1231
1292
|
ascli ats access_key list --fields=name,id
|
1232
1293
|
ascli ats api_key create
|
1233
1294
|
ascli ats api_key instances
|
@@ -1237,55 +1298,58 @@ ascli ats cluster list
|
|
1237
1298
|
ascli ats cluster show --cloud=aws --region=eu-west-1
|
1238
1299
|
ascli ats cluster show --id=1f412ae7-869a-445c-9c05-02ad16813be2
|
1239
1300
|
ascli conf flush_tokens
|
1240
|
-
ascli conf wiz --url=https://
|
1241
|
-
ascli conf wiz --url=https://
|
1301
|
+
ascli conf wiz --url=https://my_aoc_org.ibmaspera.com --config-file=SAMPLE_CONFIG_FILE --pkeypath='' --username=my_aoc_user --test-mode=yes
|
1302
|
+
ascli conf wiz --url=https://my_aoc_org.ibmaspera.com --config-file=SAMPLE_CONFIG_FILE --pkeypath='' --username=my_aoc_user --test-mode=yes --use-generic-client=yes
|
1242
1303
|
ascli config ascp connect id 'Aspera Connect for Windows' info
|
1243
|
-
ascli config ascp connect id 'Aspera Connect for Windows' links id 'Windows Installer' download --to-folder
|
1304
|
+
ascli config ascp connect id 'Aspera Connect for Windows' links id 'Windows Installer' download --to-folder=.
|
1244
1305
|
ascli config ascp connect id 'Aspera Connect for Windows' links list
|
1245
1306
|
ascli config ascp connect list
|
1307
|
+
ascli config ascp info
|
1308
|
+
ascli config ascp install
|
1246
1309
|
ascli config ascp products list
|
1247
1310
|
ascli config ascp show
|
1248
1311
|
ascli config email_test aspera.user1@gmail.com
|
1249
1312
|
ascli config export
|
1250
|
-
ascli config genkey
|
1313
|
+
ascli config genkey mykey
|
1251
1314
|
ascli config plugins
|
1252
|
-
ascli config proxy_check --fpac=file:///
|
1253
|
-
ascli console transfer current list
|
1254
|
-
ascli console transfer smart list
|
1315
|
+
ascli config proxy_check --fpac=file:///examples/proxy.pac https://eudemo.asperademo.com
|
1316
|
+
ascli console transfer current list
|
1317
|
+
ascli console transfer smart list
|
1255
1318
|
ascli console transfer smart sub 112 @json:'{"source":{"paths":["10MB.1"]},"source_type":"user_selected"}'
|
1256
|
-
ascli cos
|
1319
|
+
ascli cos -N --bucket=my_icos_bucket_name --endpoint=my_icos_bucket_endpoint --apikey=my_icos_bucket_apikey --crn=my_icos_resource_instance_id node info
|
1320
|
+
ascli cos -N --bucket=my_icos_bucket_name --region=my_icos_bucket_region --service-credentials=@json:@file:service_creds.json node info
|
1257
1321
|
ascli cos node access_key --id=self show
|
1258
|
-
ascli cos node download
|
1322
|
+
ascli cos node download testfile.bin --to-folder=.
|
1259
1323
|
ascli cos node info
|
1260
|
-
ascli cos node upload
|
1324
|
+
ascli cos node upload testfile.bin
|
1261
1325
|
ascli faspex nagios_check
|
1262
1326
|
ascli faspex package list
|
1263
1327
|
ascli faspex package list --box=sent --fields=package_id --format=csv --display=data|tail -n 1);\
|
1264
|
-
ascli faspex package recv --box=sent --to-folder
|
1265
|
-
ascli faspex package recv --to-folder
|
1266
|
-
ascli faspex package recv --to-folder
|
1267
|
-
ascli faspex package recv --to-folder
|
1268
|
-
ascli faspex package send --delivery-info=@json:'{"title":"
|
1269
|
-
ascli faspex package send --link="my_faspex_publink_send_to_dropbox" --delivery-info=@json:'{"title":"
|
1270
|
-
ascli faspex package send --link="my_faspex_publink_send_to_fxuser" --delivery-info=@json:'{"title":"
|
1328
|
+
ascli faspex package recv --box=sent --to-folder=. --id="my_package_id"
|
1329
|
+
ascli faspex package recv --to-folder=. --id="my_package_id"
|
1330
|
+
ascli faspex package recv --to-folder=. --id=ALL --once-only=yes
|
1331
|
+
ascli faspex package recv --to-folder=. --link="my_faspex_publink_recv_from_fxuser"
|
1332
|
+
ascli faspex package send --delivery-info=@json:'{"title":"Important files delivery","recipients":["internal.user@example.com"]}' testfile.bin
|
1333
|
+
ascli faspex package send --link="my_faspex_publink_send_to_dropbox" --delivery-info=@json:'{"title":"Important files delivery"}' testfile.bin
|
1334
|
+
ascli faspex package send --link="my_faspex_publink_send_to_fxuser" --delivery-info=@json:'{"title":"Important files delivery"}' testfile.bin
|
1271
1335
|
ascli faspex source name "Server Files" node br /
|
1272
1336
|
ascli faspex5 node list --value=@json:'{"type":"received","subtype":"mypackages"}'
|
1273
1337
|
ascli faspex5 package list --value=@json:'{"state":["released"]}'
|
1274
|
-
ascli faspex5 package receive --id="my_package_id" --to-folder
|
1275
|
-
ascli faspex5 package send --value=@json:'{"title":"test title","recipients":["admin"]}'
|
1338
|
+
ascli faspex5 package receive --id="my_package_id" --to-folder=.
|
1339
|
+
ascli faspex5 package send --value=@json:'{"title":"test title","recipients":["admin"]}' testfile.bin
|
1276
1340
|
ascli node -N -Ptst_node_preview access_key create --value=@json:'{"id":"aoc_1","storage":{"type":"local","path":"/"}}'
|
1277
1341
|
ascli node -N -Ptst_node_preview access_key delete --id=aoc_1
|
1278
|
-
ascli node async --id=1 bandwidth
|
1279
|
-
ascli node async --id=1 counters
|
1280
|
-
ascli node async --id=1 files
|
1342
|
+
ascli node async --id=1 bandwidth
|
1343
|
+
ascli node async --id=1 counters
|
1344
|
+
ascli node async --id=1 files
|
1281
1345
|
ascli node async list
|
1282
1346
|
ascli node async show --id=1
|
1283
1347
|
ascli node async show --id=ALL
|
1284
1348
|
ascli node basic_token
|
1285
1349
|
ascli node browse / -r
|
1286
|
-
ascli node delete
|
1287
|
-
ascli node delete
|
1288
|
-
ascli node download --to-folder
|
1350
|
+
ascli node delete folder_1/10MB.1
|
1351
|
+
ascli node delete folder_1/testfile.bin
|
1352
|
+
ascli node download --to-folder=. folder_1/testfile.bin
|
1289
1353
|
ascli node info
|
1290
1354
|
ascli node nagios_check
|
1291
1355
|
ascli node search / --value=@json:'{"sort":"mtime"}'
|
@@ -1293,122 +1357,64 @@ ascli node service --id=service1 delete
|
|
1293
1357
|
ascli node service create @json:'{"id":"service1","type":"WATCHD","run_as":{"user":"user1"}}'
|
1294
1358
|
ascli node service list
|
1295
1359
|
ascli node transfer list --value=@json:'{"active_only":true}'
|
1296
|
-
ascli node upload --to-folder="
|
1297
|
-
ascli node upload --to-folder=
|
1298
|
-
ascli oncloud admin analytics transfers --query=@json:'{"status":"completed","direction":"receive"}'
|
1299
|
-
ascli oncloud admin ats access_key --id=akibmcloud --secret=somesecret node browse /
|
1300
|
-
ascli oncloud admin ats access_key --id=akibmcloud delete
|
1301
|
-
ascli oncloud admin ats access_key create --cloud=aws --region=MY_AWS_REGION --params=@json:'{"id":"ak_aws","name":"my test key AWS","storage":{"type":"aws_s3","bucket":"MY_AWS_BUCKET","credentials":{"access_key_id":"MY_AWS_ACCESS_KEY","secret_access_key":"MY_AWS_SECRET_KEY"},"path":"/"}}'
|
1302
|
-
ascli oncloud admin ats access_key create --cloud=softlayer --region=MY_ICOS_REGION --params=@json:'{"id":"akibmcloud","secret":"somesecret","name":"my test key","storage":{"type":"ibm-s3","bucket":"MY_ICOS_BUCKET","credentials":{"access_key_id":"MY_ICOS_AK_ID","secret_access_key":"MY_ICOS_SECRET_AK"},"path":"/"}}'
|
1303
|
-
ascli oncloud admin ats access_key list --fields=name,id
|
1304
|
-
ascli oncloud admin ats cluster clouds
|
1305
|
-
ascli oncloud admin ats cluster list
|
1306
|
-
ascli oncloud admin ats cluster show --cloud=aws --region=eu-west-1
|
1307
|
-
ascli oncloud admin ats cluster show --id=1f412ae7-869a-445c-9c05-02ad16813be2
|
1308
|
-
ascli oncloud admin resource node --name=MY_AOC_NODE1_NAME --secret=MY_AOC_NODE1_SECRET v3 access_key create --value=@json:'{"id":"testsub1","storage":{"path":"/folder1"}}'
|
1309
|
-
ascli oncloud admin resource node --name=MY_AOC_NODE1_NAME --secret=MY_AOC_NODE1_SECRET v3 access_key delete --id=testsub1
|
1310
|
-
ascli oncloud admin resource node --name=MY_AOC_NODE1_NAME --secret=MY_AOC_NODE1_SECRET v3 events
|
1311
|
-
ascli oncloud admin resource node --name=MY_AOC_NODE1_NAME --secret=MY_AOC_NODE1_SECRET v4 browse /
|
1312
|
-
ascli oncloud admin resource node --name=MY_AOC_NODE1_NAME --secret=MY_AOC_NODE1_SECRET v4 delete /folder1
|
1313
|
-
ascli oncloud admin resource node --name=MY_AOC_NODE1_NAME --secret=MY_AOC_NODE1_SECRET v4 mkdir /folder1
|
1314
|
-
ascli oncloud admin resource workspace list
|
1315
|
-
ascli oncloud admin resource workspace_membership list --fields=ALL --query=@json:'{"page":1,"per_page":50,"embed":"member","inherited":false,"workspace_id":11363,"sort":"name"}'
|
1316
|
-
ascli oncloud apiinfo
|
1317
|
-
ascli oncloud automation workflow --id="my_wf_id" action create --value=@json:'{"name":"toto"}' | tee action.info
|
1318
|
-
ascli oncloud automation workflow create --value=@json:'{"name":"test_workflow"}'
|
1319
|
-
ascli oncloud automation workflow delete --id="my_wf_id"
|
1320
|
-
ascli oncloud automation workflow list
|
1321
|
-
ascli oncloud automation workflow list --select=@json:'{"name":"test_workflow"}' --fields=id --format=csv --display=data > xyz
|
1322
|
-
ascli oncloud automation workflow list --value=@json:'{"show_org_workflows":"true"}' --scope=admin:all
|
1323
|
-
ascli oncloud bearer_token --display=data --scope=user:all
|
1324
|
-
ascli oncloud faspex
|
1325
|
-
ascli oncloud files bearer /
|
1326
|
-
ascli oncloud files browse /
|
1327
|
-
ascli oncloud files browse / -N --link=MY_AOC_PUBLINK_FOLDER
|
1328
|
-
ascli oncloud files delete /testsrc
|
1329
|
-
ascli oncloud files download --transfer=connect /200KB.1
|
1330
|
-
ascli oncloud files file 18891
|
1331
|
-
ascli oncloud files find / --value='\.partial$'
|
1332
|
-
ascli oncloud files http_node_download --to-folder=DIR_TMP/. /200KB.1
|
1333
|
-
ascli oncloud files mkdir /testsrc
|
1334
|
-
ascli oncloud files rename /somefolder testdst
|
1335
|
-
ascli oncloud files short_link create --to-folder=/testdst --value=private
|
1336
|
-
ascli oncloud files short_link create --to-folder=/testdst --value=public
|
1337
|
-
ascli oncloud files short_link list --value=@json:'{"purpose":"shared_folder_auth_link"}'
|
1338
|
-
ascli oncloud files transfer --from-folder=/testsrc --to-folder=/testdst MY_LOCAL_SAMPLE_FILENAME
|
1339
|
-
ascli oncloud files upload --to-folder=/testsrc MY_LOCAL_SAMPLE_FILEPATH
|
1340
|
-
ascli oncloud files upload -N --to-folder=/ MY_LOCAL_SAMPLE_FILEPATH --link=MY_AOC_PUBLINK_FOLDER
|
1341
|
-
ascli oncloud files v3 info
|
1342
|
-
ascli oncloud org -N --link=MY_AOC_PUBLINK_RECV_PACKAGE
|
1343
|
-
ascli oncloud organization
|
1344
|
-
ascli oncloud packages list
|
1345
|
-
ascli oncloud packages list --format=csv --fields=id --display=data|head -n 1);\
|
1346
|
-
ascli oncloud packages recv --id="my_package_id" --to-folder=DIR_TMP/.
|
1347
|
-
ascli oncloud packages recv --id=ALL --to-folder=DIR_TMP/. --once-only=yes --lock-port=12345
|
1348
|
-
ascli oncloud packages send --value=@json:'{"name":"PKG_TEST_TITLE","recipients":["MY_AOC_EXTERNAL_EMAIL"]}' --new-user-option=@json:'{"package_contact":true}' MY_LOCAL_SAMPLE_FILEPATH
|
1349
|
-
ascli oncloud packages send --value=@json:'{"name":"PKG_TEST_TITLE","recipients":["MY_EMAIL_ADDR"],"note":"my note"}' MY_LOCAL_SAMPLE_FILEPATH
|
1350
|
-
ascli oncloud packages send --workspace="MY_AOC_SH_BX_WS" --value=@json:'{"name":"PKG_TEST_TITLE","recipients":["MY_AOC_SH_BX_NAME"]}' MY_LOCAL_SAMPLE_FILEPATH
|
1351
|
-
ascli oncloud packages send -N --value=@json:'{"name":"PKG_TEST_TITLE"}' MY_LOCAL_SAMPLE_FILEPATH --link=MY_AOC_PUBLINK_SEND_DROPBOX
|
1352
|
-
ascli oncloud packages send -N --value=@json:'{"name":"PKG_TEST_TITLE"}' MY_LOCAL_SAMPLE_FILEPATH --link=MY_AOC_PUBLINK_SEND_USER
|
1353
|
-
ascli oncloud user info modify @json:'{"name":"dummy change"}'
|
1354
|
-
ascli oncloud user info show
|
1355
|
-
ascli oncloud workspace
|
1360
|
+
ascli node upload --to-folder="folder_1" --sources=@ts --ts=@json:'{"paths":[{"source":"/aspera-test-dir-small/10MB.1"}],"precalculate_job_size":true}' --transfer=node --transfer-info=@json:'{"url":"my_node_url","username":"my_node_user","password":"my_node_pass"}'
|
1361
|
+
ascli node upload --to-folder=folder_1 --ts=@json:'{"target_rate_cap_kbps":10000}' testfile.bin
|
1356
1362
|
ascli orchestrator info
|
1357
1363
|
ascli orchestrator plugins
|
1358
1364
|
ascli orchestrator processes
|
1359
|
-
ascli orchestrator workflow --id=
|
1360
|
-
ascli orchestrator workflow --id=
|
1361
|
-
ascli orchestrator workflow --id=
|
1362
|
-
ascli orchestrator workflow --id=
|
1365
|
+
ascli orchestrator workflow --id=ORCH_WORKFLOW_ID inputs
|
1366
|
+
ascli orchestrator workflow --id=ORCH_WORKFLOW_ID start --params=@json:'{"Param":"world !"}'
|
1367
|
+
ascli orchestrator workflow --id=ORCH_WORKFLOW_ID start --params=@json:'{"Param":"world !"}' --result=ResultStep:Complete_status_message
|
1368
|
+
ascli orchestrator workflow --id=ORCH_WORKFLOW_ID status
|
1363
1369
|
ascli orchestrator workflow list
|
1364
1370
|
ascli orchestrator workflow status
|
1365
1371
|
ascli preview check --skip-types=office
|
1366
1372
|
ascli preview folder 1 --skip-types=office --log-level=info --file-access=remote --ts=@json:'{"target_rate_kbps":1000000}'
|
1367
1373
|
ascli preview scan --skip-types=office --log-level=info
|
1368
|
-
ascli preview test --case=
|
1369
|
-
ascli preview test --case=
|
1370
|
-
ascli preview test --case=
|
1371
|
-
ascli preview test --case=
|
1372
|
-
ascli preview test --case=
|
1373
|
-
ascli preview test --case=
|
1374
|
-
ascli preview test --case=
|
1375
|
-
ascli preview test --case=
|
1374
|
+
ascli preview test --case=test mp4 "TSTFILE_MXF" --video-conversion=blend --log-level=debug
|
1375
|
+
ascli preview test --case=test mp4 "TSTFILE_MXF" --video-conversion=clips --log-level=debug
|
1376
|
+
ascli preview test --case=test mp4 "TSTFILE_MXF" --video-conversion=reencode --log-level=debug
|
1377
|
+
ascli preview test --case=test png "TSTFILE_DCM" --log-level=debug
|
1378
|
+
ascli preview test --case=test png "TSTFILE_DOCX" --log-level=debug
|
1379
|
+
ascli preview test --case=test png "TSTFILE_MXF" --video-png-conv=animated --log-level=debug
|
1380
|
+
ascli preview test --case=test png "TSTFILE_MXF" --video-png-conv=fixed --log-level=debug
|
1381
|
+
ascli preview test --case=test png "TSTFILE_PDF" --log-level=debug
|
1376
1382
|
ascli preview trevents --once-only=yes --skip-types=office --log-level=info
|
1377
1383
|
ascli server -N -Ptst_hstsfaspex_ssh -Plocal_user ctl all:status
|
1378
1384
|
ascli server -N -Ptst_hstsfaspex_ssh -Plocal_user nagios app_services --format=nagios
|
1379
1385
|
ascli server -N -Ptst_hstsfaspex_ssh -Plocal_user nodeadmin -- -l
|
1380
1386
|
ascli server -N -Ptst_server_bykey -Plocal_user br /
|
1381
1387
|
ascli server browse /
|
1382
|
-
ascli server browse
|
1383
|
-
ascli server cp NEW_SERVER_FOLDER/
|
1384
|
-
ascli server delete MY_HSTS_FOLDER_UPLOAD/target_hot
|
1385
|
-
ascli server delete MY_HSTS_FOLDER_UPLOAD/to.delete
|
1388
|
+
ascli server browse folder_1/target_hot
|
1389
|
+
ascli server cp NEW_SERVER_FOLDER/testfile.bin folder_1/200KB.2
|
1386
1390
|
ascli server delete NEW_SERVER_FOLDER
|
1391
|
+
ascli server delete folder_1/target_hot
|
1392
|
+
ascli server delete folder_1/to.delete
|
1387
1393
|
ascli server df
|
1388
|
-
ascli server download NEW_SERVER_FOLDER/
|
1389
|
-
ascli server download NEW_SERVER_FOLDER/
|
1394
|
+
ascli server download NEW_SERVER_FOLDER/testfile.bin --to-folder=.
|
1395
|
+
ascli server download NEW_SERVER_FOLDER/testfile.bin --to-folder=folder_1 --transfer=node
|
1390
1396
|
ascli server du /
|
1391
1397
|
ascli server info
|
1392
|
-
ascli server md5sum NEW_SERVER_FOLDER/
|
1393
|
-
ascli server mkdir MY_HSTS_FOLDER_UPLOAD/target_hot
|
1398
|
+
ascli server md5sum NEW_SERVER_FOLDER/testfile.bin
|
1394
1399
|
ascli server mkdir NEW_SERVER_FOLDER --logger=stdout
|
1395
|
-
ascli server
|
1396
|
-
ascli server
|
1397
|
-
ascli server
|
1398
|
-
ascli server upload --
|
1399
|
-
ascli server upload --src-type=pair
|
1400
|
-
ascli server upload --
|
1401
|
-
ascli server upload
|
1400
|
+
ascli server mkdir folder_1/target_hot
|
1401
|
+
ascli server mv folder_1/200KB.2 folder_1/to.delete
|
1402
|
+
ascli server nagios transfer --to-folder=folder_1 --format=nagios
|
1403
|
+
ascli server upload --sources=@ts --ts=@json:'{"paths":[{"source":"testfile.bin","destination":"NEW_SERVER_FOLDER/othername"}]}'
|
1404
|
+
ascli server upload --src-type=pair --sources=@json:'["testfile.bin","NEW_SERVER_FOLDER/othername"]'
|
1405
|
+
ascli server upload --src-type=pair testfile.bin NEW_SERVER_FOLDER/othername
|
1406
|
+
ascli server upload --to-folder=folder_1/target_hot --lock-port=12345 --ts=@json:'{"EX_ascp_args":["--remove-after-transfer","--remove-empty-directories","--exclude-newer-than=-8","--src-base","source_hot"]}' source_hot
|
1407
|
+
ascli server upload testfile.bin --to-folder=NEW_SERVER_FOLDER
|
1402
1408
|
ascli shares repository browse /
|
1403
|
-
ascli shares repository delete /
|
1404
|
-
ascli shares repository download --to-folder
|
1405
|
-
ascli shares repository upload --to-folder=/
|
1409
|
+
ascli shares repository delete /SHARES_UPLOAD/testfile.bin
|
1410
|
+
ascli shares repository download --to-folder=. /SHARES_UPLOAD/testfile.bin
|
1411
|
+
ascli shares repository upload --to-folder=/SHARES_UPLOAD testfile.bin
|
1406
1412
|
ascli shares2 appinfo
|
1407
1413
|
ascli shares2 organization list
|
1408
1414
|
ascli shares2 project list --organization=Sport
|
1409
1415
|
ascli shares2 repository browse /
|
1410
1416
|
ascli shares2 userinfo
|
1411
|
-
ascli sync start --parameters=@json:'{"sessions":[{"name":"test","reset":true,"remote_dir":"/sync_test","local_dir":"
|
1417
|
+
ascli sync start --parameters=@json:'{"sessions":[{"name":"test","reset":true,"remote_dir":"/sync_test","local_dir":"contents","host":"my_remote_host","tcp_port":33001,"user":"my_remote_user","private_key_path":"my_local_user_key"}]}'
|
1412
1418
|
|
1413
1419
|
...and more
|
1414
1420
|
```
|
@@ -1418,7 +1424,7 @@ ascli sync start --parameters=@json:'{"sessions":[{"name":"test","reset":true,"r
|
|
1418
1424
|
```
|
1419
1425
|
$ ascli -h
|
1420
1426
|
NAME
|
1421
|
-
ascli -- a command line tool for Aspera Applications (v4.0.0.
|
1427
|
+
ascli -- a command line tool for Aspera Applications (v4.0.0.pre2)
|
1422
1428
|
|
1423
1429
|
SYNOPSIS
|
1424
1430
|
ascli COMMANDS [OPTIONS] [ARGS]
|
@@ -1457,7 +1463,7 @@ OPTIONS: global
|
|
1457
1463
|
-v, --version display version
|
1458
1464
|
-w, --warnings check for language warnings
|
1459
1465
|
--ui=ENUM method to start browser: text, [1m[31mgraphical[0m[22m
|
1460
|
-
--log-level=ENUM Log level: info,
|
1466
|
+
--log-level=ENUM Log level: info, [1m[31mwarn[0m[22m, error, fatal, unknown, debug
|
1461
1467
|
--logger=ENUM log method: [1m[31mstderr[0m[22m, stdout, syslog
|
1462
1468
|
--lock-port=VALUE prevent dual execution of a command, e.g. in cron
|
1463
1469
|
--query=VALUE additional filter for API calls (extended value) (some commands)
|
@@ -1470,7 +1476,7 @@ OPTIONS:
|
|
1470
1476
|
--value=VALUE extended value for create, update, list filter
|
1471
1477
|
--property=VALUE name of property to set
|
1472
1478
|
--id=VALUE resource identifier (modify,delete,show)
|
1473
|
-
--config-file=VALUE read parameters from file in YAML format, current=/Users/
|
1479
|
+
--config-file=VALUE read parameters from file in YAML format, current=/Users/dwosk/.aspera/ascli/config.yaml
|
1474
1480
|
--override=ENUM override existing value: [1m[31myes[0m[22m, no
|
1475
1481
|
-N, --no-default do not load default configuration for plugin
|
1476
1482
|
--use-generic-client=ENUM wizard: AoC: use global or org specific jwt client id: yes, [1m[31mno[0m[22m
|
@@ -1543,16 +1549,6 @@ OPTIONS:
|
|
1543
1549
|
--password=VALUE user's password
|
1544
1550
|
|
1545
1551
|
|
1546
|
-
COMMAND: xnode
|
1547
|
-
SUBCOMMANDS: postprocess cleanup forward
|
1548
|
-
OPTIONS:
|
1549
|
-
--url=VALUE URL of application, e.g. https://org.asperafiles.com
|
1550
|
-
--username=VALUE username to log in
|
1551
|
-
--password=VALUE user's password
|
1552
|
-
--filter-transfer=VALUE Ruby expression for filter at transfer level (cleanup)
|
1553
|
-
--filter-file=VALUE Ruby expression for filter at file level (cleanup)
|
1554
|
-
|
1555
|
-
|
1556
1552
|
COMMAND: ats
|
1557
1553
|
SUBCOMMANDS: cluster access_key api_key aws_trust_policy
|
1558
1554
|
OPTIONS:
|
@@ -1584,41 +1580,6 @@ OPTIONS:
|
|
1584
1580
|
--region=VALUE IBM Cloud Object storage region
|
1585
1581
|
|
1586
1582
|
|
1587
|
-
COMMAND: oncloud
|
1588
|
-
SUBCOMMANDS: apiinfo bearer_token organization tier_restrictions user workspace packages files gateway admin automation servers
|
1589
|
-
OPTIONS:
|
1590
|
-
--url=VALUE URL of application, e.g. https://org.asperafiles.com
|
1591
|
-
--username=VALUE username to log in
|
1592
|
-
--password=VALUE user's password
|
1593
|
-
|
1594
|
-
COMMAND: ats
|
1595
|
-
SUBCOMMANDS: cluster access_key api_key aws_trust_policy
|
1596
|
-
OPTIONS:
|
1597
|
-
--ibm-api-key=VALUE IBM API key, see https://cloud.ibm.com/iam/apikeys
|
1598
|
-
--instance=VALUE ATS instance in ibm cloud
|
1599
|
-
--ats-key=VALUE ATS key identifier (ats_xxx)
|
1600
|
-
--ats-secret=VALUE ATS key secret
|
1601
|
-
--params=VALUE Parameters access key creation (@json:)
|
1602
|
-
--cloud=VALUE Cloud provider
|
1603
|
-
--region=VALUE Cloud region
|
1604
|
-
--auth=ENUM type of Oauth authentication: body_userpass, header_userpass, web, jwt, url_token, ibm_apikey
|
1605
|
-
--operation=ENUM client operation for transfers: push, pull
|
1606
|
-
--client-id=VALUE API client identifier in application
|
1607
|
-
--client-secret=VALUE API client passcode
|
1608
|
-
--redirect-uri=VALUE API client redirect URI
|
1609
|
-
--private-key=VALUE RSA private key PEM value for JWT (prefix file path with @val:@file:)
|
1610
|
-
--workspace=VALUE name of workspace
|
1611
|
-
--eid=VALUE identifier
|
1612
|
-
--name=VALUE resource name
|
1613
|
-
--link=VALUE public link to shared resource
|
1614
|
-
--new-user-option=VALUE new user creation option
|
1615
|
-
--from-folder=VALUE share to share source folder
|
1616
|
-
--scope=VALUE scope for AoC API calls
|
1617
|
-
--notify=VALUE notify users that file was received
|
1618
|
-
--bulk=ENUM bulk operation: yes, [1m[31mno[0m[22m
|
1619
|
-
--default-ports=ENUM use standard FASP ports or get from node api: yes, [1m[31mno[0m[22m
|
1620
|
-
|
1621
|
-
|
1622
1583
|
COMMAND: faspex
|
1623
1584
|
SUBCOMMANDS: nagios_check package source me dropbox v4 address_book login_methods
|
1624
1585
|
OPTIONS:
|
@@ -1681,27 +1642,10 @@ SUBCOMMANDS: start admin
|
|
1681
1642
|
OPTIONS:
|
1682
1643
|
--parameters=VALUE extended value for session set definition
|
1683
1644
|
--session-name=VALUE name of session to use for admin commands, by default first one
|
1684
|
-
|
1685
|
-
|
1686
|
-
|
1687
|
-
|
1688
|
-
OPTIONS:
|
1689
|
-
--url=VALUE URL of application, e.g. https://org.asperafiles.com
|
1690
|
-
--username=VALUE username to log in
|
1691
|
-
--password=VALUE user's password
|
1692
|
-
--ssh-keys=VALUE ssh key path list (Array or single)
|
1693
|
-
--ssh-options=VALUE ssh options (Hash)
|
1694
|
-
--cmd-prefix=VALUE prefix to add for as cmd execution, e.g. sudo or /opt/aspera/bin
|
1695
|
-
|
1696
|
-
|
1697
|
-
COMMAND: console
|
1698
|
-
SUBCOMMANDS: transfer nagios_check
|
1699
|
-
OPTIONS:
|
1700
|
-
--url=VALUE URL of application, e.g. https://org.asperafiles.com
|
1701
|
-
--username=VALUE username to log in
|
1702
|
-
--password=VALUE user's password
|
1703
|
-
--filter-from=DATE only after date
|
1704
|
-
--filter-to=DATE only before date
|
1645
|
+
[5m[37m[41mERROR:[0m[0m[25m Other: uninitialized constant Aspera::Cli::Plugins::Aoc
|
1646
|
+
Did you mean? Aspera::AoC
|
1647
|
+
[5m[37m[41mERROR:[0m[0m[25m Argument: unprocessed options: ["-Cnone"]
|
1648
|
+
Use '--log-level=debug' to get more details.
|
1705
1649
|
|
1706
1650
|
|
1707
1651
|
```
|
@@ -1742,7 +1686,7 @@ Preparing preset: aoc_myorg
|
|
1742
1686
|
Please provide path to your private RSA key, or empty to generate one:
|
1743
1687
|
option: pkeypath>
|
1744
1688
|
using existing key:
|
1745
|
-
/Users/myself/.aspera/ascli/
|
1689
|
+
/Users/myself/.aspera/ascli/aspera_aoc_key
|
1746
1690
|
Using global client_id.
|
1747
1691
|
option: username> john@example.com
|
1748
1692
|
Updating profile with new key
|
@@ -1751,7 +1695,7 @@ Setting config preset as default for aspera
|
|
1751
1695
|
saving config file
|
1752
1696
|
Done.
|
1753
1697
|
You can test with:
|
1754
|
-
$ ascli
|
1698
|
+
$ ascli aoc user info show
|
1755
1699
|
```
|
1756
1700
|
|
1757
1701
|
Optionally, it is possible to create a new organization-specific "integration".
|
@@ -1879,13 +1823,13 @@ If you are not using the built-in client_id and secret, JWT needs to be authoriz
|
|
1879
1823
|
* Using command line
|
1880
1824
|
|
1881
1825
|
```
|
1882
|
-
$ ascli
|
1826
|
+
$ ascli aoc admin res client list
|
1883
1827
|
:............:.........:
|
1884
1828
|
: id : name :
|
1885
1829
|
:............:.........:
|
1886
1830
|
: BJLPObQiFw : ascli :
|
1887
1831
|
:............:.........:
|
1888
|
-
$ ascli
|
1832
|
+
$ ascli aoc admin res client --id=BJLPObQiFw modify @json:'{"jwt_grant_enabled":true,"explicit_authorization_required":false}'
|
1889
1833
|
modified
|
1890
1834
|
```
|
1891
1835
|
|
@@ -1906,14 +1850,14 @@ open the previously generated public key located here: `$HOME/.aspera/ascli/aoca
|
|
1906
1850
|
* Using command line
|
1907
1851
|
|
1908
1852
|
```
|
1909
|
-
$ ascli
|
1853
|
+
$ ascli aoc admin res user list
|
1910
1854
|
:........:................:
|
1911
1855
|
: id : name :
|
1912
1856
|
:........:................:
|
1913
1857
|
: 109952 : Tech Support :
|
1914
1858
|
: 109951 : LAURENT MARTIN :
|
1915
1859
|
:........:................:
|
1916
|
-
$ ascli
|
1860
|
+
$ ascli aoc user info modify @ruby:'{"public_key"=>File.read(File.expand_path("~/.aspera/ascli/aocapikey.pub"))}'
|
1917
1861
|
modified
|
1918
1862
|
```
|
1919
1863
|
|
@@ -1943,7 +1887,7 @@ After this last step, commands do not require web login anymore.
|
|
1943
1887
|
Once client has been registered and [option preset](#lprt) created: `ascli` can be used:
|
1944
1888
|
|
1945
1889
|
```
|
1946
|
-
$ ascli
|
1890
|
+
$ ascli aoc files br /
|
1947
1891
|
Current Workspace: Default Workspace (default)
|
1948
1892
|
empty
|
1949
1893
|
```
|
@@ -1977,7 +1921,7 @@ In order to access some administrative actions on "nodes" (in fact, access keys)
|
|
1977
1921
|
secret is required, it is usually provided using the `secret` option. For example in a command like:
|
1978
1922
|
|
1979
1923
|
```
|
1980
|
-
$ ascli
|
1924
|
+
$ ascli aoc admin res node --id="access_key1" --secret="secret1" v3 info
|
1981
1925
|
```
|
1982
1926
|
|
1983
1927
|
It is also possible to provide a set of secrets used on a regular basis. This can be done using the `secrets` option. The value provided shall be a Hash, where keys are access key ids, and values are the associated secrets.
|
@@ -2004,7 +1948,7 @@ A secret repository can always be selected at runtime using `--secrets=@preset:x
|
|
2004
1948
|
* Bulk creation
|
2005
1949
|
|
2006
1950
|
```
|
2007
|
-
$ ascli
|
1951
|
+
$ ascli aoc admin res user create --bulk=yes @json:'[{"email":"dummyuser1@example.com"},{"email":"dummyuser2@example.com"}]'
|
2008
1952
|
:.......:.........:
|
2009
1953
|
: id : status :
|
2010
1954
|
:.......:.........:
|
@@ -2016,17 +1960,17 @@ $ ascli aspera admin res user create --bulk=yes @json:'[{"email":"dummyuser1@exa
|
|
2016
1960
|
* Find with filter and delete
|
2017
1961
|
|
2018
1962
|
```
|
2019
|
-
$ ascli
|
1963
|
+
$ ascli aoc admin res user list --query='@json:{"q":"dummyuser"}' --fields=id,email
|
2020
1964
|
:.......:........................:
|
2021
1965
|
: id : email :
|
2022
1966
|
:.......:........................:
|
2023
1967
|
: 98398 : dummyuser1@example.com :
|
2024
1968
|
: 98399 : dummyuser2@example.com :
|
2025
1969
|
:.......:........................:
|
2026
|
-
$ thelist=$(echo $(ascli
|
1970
|
+
$ thelist=$(echo $(ascli aoc admin res user list --query='@json:{"q":"dummyuser"}' --fields=id,email --field=id --format=csv)|tr ' ' ,)
|
2027
1971
|
$ echo $thelist
|
2028
1972
|
98398,98399
|
2029
|
-
$ ascli
|
1973
|
+
$ ascli aoc admin res user --bulk=yes --id=@json:[$thelist] delete
|
2030
1974
|
:.......:.........:
|
2031
1975
|
: id : status :
|
2032
1976
|
:.......:.........:
|
@@ -2038,7 +1982,7 @@ $ ascli aspera admin res user --bulk=yes --id=@json:[$thelist] delete
|
|
2038
1982
|
* Display current user's workspaces
|
2039
1983
|
|
2040
1984
|
```
|
2041
|
-
$ ascli
|
1985
|
+
$ ascli aoc user workspaces
|
2042
1986
|
:......:............................:
|
2043
1987
|
: id : name :
|
2044
1988
|
:......:............................:
|
@@ -2053,13 +1997,13 @@ $ ascli aspera user workspaces
|
|
2053
1997
|
Creation of a sub-access key is like creation of access key with the following difference: authentication to node API is made with accesskey (master access key) and only the path parameter is provided: it is relative to the storage root of the master key. (id and secret are optional)
|
2054
1998
|
|
2055
1999
|
```
|
2056
|
-
$ ascli
|
2000
|
+
$ ascli aoc admin resource node --name=_node_name_ --secret=_secret_ v4 access_key create --value=@json:'{"storage":{"path":"/folder1"}}'
|
2057
2001
|
```
|
2058
2002
|
|
2059
2003
|
* Display transfer events (ops/transfer)
|
2060
2004
|
|
2061
2005
|
```
|
2062
|
-
$ ascli
|
2006
|
+
$ ascli aoc admin res node --secret=_secret_ v3 transfer list --value=@json:'[["q","*"],["count",5]]'
|
2063
2007
|
```
|
2064
2008
|
|
2065
2009
|
# page=1&per_page=10&q=type:(file_upload+OR+file_delete+OR+file_download+OR+file_rename+OR+folder_create+OR+folder_delete+OR+folder_share+OR+folder_share_via_public_link)&sort=-date
|
@@ -2077,13 +2021,13 @@ $ ascli aspera admin res node --secret=_secret_ v3 transfer list --value=@json:'
|
|
2077
2021
|
* Display node events (events)
|
2078
2022
|
|
2079
2023
|
```
|
2080
|
-
$ ascli
|
2024
|
+
$ ascli aoc admin res node --secret=_secret_ v3 events
|
2081
2025
|
```
|
2082
2026
|
|
2083
2027
|
* display members of a workspace
|
2084
2028
|
|
2085
2029
|
```
|
2086
|
-
$ ascli
|
2030
|
+
$ ascli aoc admin res workspace_membership list --fields=member_type,manager,member.email --query=@json:'{"page":1,"per_page":50,"embed":"member","inherited":false,"workspace_id":11363,"sort":"name"}'
|
2087
2031
|
:.............:.........:..................................:
|
2088
2032
|
: member_type : manager : member.email :
|
2089
2033
|
:.............:.........:..................................:
|
@@ -2108,20 +2052,20 @@ a- get id of first workspace
|
|
2108
2052
|
|
2109
2053
|
```
|
2110
2054
|
WS1='First Workspace'
|
2111
|
-
WS1ID=$(ascli
|
2055
|
+
WS1ID=$(ascli aoc admin res workspace list --query=@json:'{"q":"'"$WS1"'"}' --select=@json:'{"name":"'"$WS1"'"}' --fields=id --format=csv)
|
2112
2056
|
```
|
2113
2057
|
|
2114
2058
|
b- get id of second workspace
|
2115
2059
|
|
2116
2060
|
```
|
2117
2061
|
WS2='Second Workspace'
|
2118
|
-
WS2ID=$(ascli
|
2062
|
+
WS2ID=$(ascli aoc admin res workspace list --query=@json:'{"q":"'"$WS2"'"}' --select=@json:'{"name":"'"$WS2"'"}' --fields=id --format=csv)
|
2119
2063
|
```
|
2120
2064
|
|
2121
2065
|
c- extract membership information and change workspace id
|
2122
2066
|
|
2123
2067
|
```
|
2124
|
-
$ ascli
|
2068
|
+
$ ascli aoc admin res workspace_membership list --fields=manager,member_id,member_type,workspace_id --query=@json:'{"per_page":10000,"workspace_id":'"$WS1ID"'}' --format=jsonpp > ws1_members.json
|
2125
2069
|
```
|
2126
2070
|
|
2127
2071
|
d- convert to creation data for second workspace:
|
@@ -2139,13 +2083,13 @@ jq '[.[] | {member_type,member_id,workspace_id,manager,workspace_id:"'"$WS2ID"'"
|
|
2139
2083
|
e- add members to second workspace
|
2140
2084
|
|
2141
2085
|
```
|
2142
|
-
$ ascli
|
2086
|
+
$ ascli aoc admin res workspace_membership create --bulk=yes @json:@file:ws2_members.json
|
2143
2087
|
```
|
2144
2088
|
|
2145
2089
|
* get users who did not log since a date
|
2146
2090
|
|
2147
2091
|
```
|
2148
|
-
$ ascli
|
2092
|
+
$ ascli aoc admin res user list --fields=email --query=@json:'{"per_page":10000,"q":"last_login_at:<2018-05-28"}'
|
2149
2093
|
:...............................:
|
2150
2094
|
: email :
|
2151
2095
|
:...............................:
|
@@ -2157,7 +2101,7 @@ $ ascli aspera admin res user list --fields=email --query=@json:'{"per_page":100
|
|
2157
2101
|
* list "Limited" users
|
2158
2102
|
|
2159
2103
|
```
|
2160
|
-
$ ascli
|
2104
|
+
$ ascli aoc admin res user list --fields=email --query=@json:'{"per_page":10000}' --select=@json:'{"member_of_any_workspace":false}'
|
2161
2105
|
```
|
2162
2106
|
|
2163
2107
|
* Perform a multi Gbps transfer between two remote shared folders
|
@@ -2171,7 +2115,7 @@ $ ascli conf wizard --url=https://sedemo.ibmaspera.com --username=laurent.martin
|
|
2171
2115
|
Detected: Aspera on Cloud
|
2172
2116
|
Preparing preset: aoc_sedemo
|
2173
2117
|
Using existing key:
|
2174
|
-
/Users/laurent/.aspera/ascli/
|
2118
|
+
/Users/laurent/.aspera/ascli/aspera_aoc_key
|
2175
2119
|
Using global client_id.
|
2176
2120
|
Please Login to your Aspera on Cloud instance.
|
2177
2121
|
Navigate to your "Account Settings"
|
@@ -2186,7 +2130,7 @@ Setting config preset as default for aspera
|
|
2186
2130
|
saving config file
|
2187
2131
|
Done.
|
2188
2132
|
You can test with:
|
2189
|
-
$ ascli
|
2133
|
+
$ ascli aoc user info show
|
2190
2134
|
```
|
2191
2135
|
|
2192
2136
|
This creates the option preset "aoc_<org name>" to allow seamless command line access and sets it as default for aspera on cloud.
|
@@ -2201,14 +2145,14 @@ $ ascli -Paoc_show aspera files transfer --from-folder='IBM Cloud SJ' --to-folde
|
|
2201
2145
|
|
2202
2146
|
* create registration key to register a node
|
2203
2147
|
```
|
2204
|
-
$ ascli
|
2148
|
+
$ ascli aoc admin res admin/client create @json:'{"data":{"name":"laurentnode","client_subject_scopes":["alee","aejd"],"client_subject_enabled":true}}' --fields=token --format=csv
|
2205
2149
|
jfqslfdjlfdjfhdjklqfhdkl
|
2206
2150
|
```
|
2207
2151
|
|
2208
2152
|
* delete all registration keys
|
2209
2153
|
|
2210
2154
|
```
|
2211
|
-
$ ascli
|
2155
|
+
$ ascli aoc admin res admin/client list --fields=id --format=csv|ascli aoc admin res admin/client delete --bulk=yes --id=@lines:@stdin:
|
2212
2156
|
+-----+---------+
|
2213
2157
|
| id | status |
|
2214
2158
|
+-----+---------+
|
@@ -2224,19 +2168,19 @@ $ ascli aspera admin res admin/client list --fields=id --format=csv|ascli aspera
|
|
2224
2168
|
* list shared folders in node
|
2225
2169
|
|
2226
2170
|
```
|
2227
|
-
$ ascli
|
2171
|
+
$ ascli aoc admin res node --id=8669 shared_folders
|
2228
2172
|
```
|
2229
2173
|
|
2230
2174
|
* list shared folders in workspace
|
2231
2175
|
|
2232
2176
|
```
|
2233
|
-
$ ascli
|
2177
|
+
$ ascli aoc admin res workspace --id=10818 shared_folders
|
2234
2178
|
```
|
2235
2179
|
|
2236
2180
|
* list members of shared folder
|
2237
2181
|
|
2238
2182
|
```
|
2239
|
-
$ ascli
|
2183
|
+
$ ascli aoc admin res node --id=8669 v4 perm 82 show
|
2240
2184
|
```
|
2241
2185
|
|
2242
2186
|
## Send a Package
|
@@ -2244,7 +2188,7 @@ $ ascli aspera admin res node --id=8669 v4 perm 82 show
|
|
2244
2188
|
Send a package:
|
2245
2189
|
|
2246
2190
|
```
|
2247
|
-
$ ascli
|
2191
|
+
$ ascli aoc packages send --value=@json:'{"name":"my title","note":"my note","recipients":["laurent.martin.aspera@fr.ibm.com","other@example.com"]}' --sources=@args my_file.dat
|
2248
2192
|
```
|
2249
2193
|
|
2250
2194
|
Notes:
|
@@ -2259,7 +2203,7 @@ Notes:
|
|
2259
2203
|
It is possible to automatically download new packages, like using Aspera Cargo:
|
2260
2204
|
|
2261
2205
|
```
|
2262
|
-
$ ascli
|
2206
|
+
$ ascli aoc packages recv --id=ALL --once-only=yes --lock-port=12345
|
2263
2207
|
```
|
2264
2208
|
|
2265
2209
|
* `--id=ALL` (case sensitive) will download all packages
|
@@ -2303,19 +2247,19 @@ f["type"].eql?("file") and (DateTime.now-DateTime.parse(f["modified_time"]))<100
|
|
2303
2247
|
* expression to find files older than 1 year on a given node and store in file list
|
2304
2248
|
|
2305
2249
|
```
|
2306
|
-
$ ascli
|
2250
|
+
$ ascli aoc admin res node --name='my node name' --secret='my secret' v4 find / --fields=path --value='exec:f["type"].eql?("file") and (DateTime.now-DateTime.parse(f["modified_time"]))<100' --format=csv > my_file_list.txt
|
2307
2251
|
```
|
2308
2252
|
|
2309
2253
|
* delete the files, one by one
|
2310
2254
|
|
2311
2255
|
```
|
2312
|
-
$ cat my_file_list.txt|while read path;do echo ascli
|
2256
|
+
$ cat my_file_list.txt|while read path;do echo ascli aoc admin res node --name='my node name' --secret='my secret' v4 delete "$path" ;done
|
2313
2257
|
```
|
2314
2258
|
|
2315
2259
|
* delete the files in bulk
|
2316
2260
|
|
2317
2261
|
```
|
2318
|
-
cat my_file_list.txt | ascli
|
2262
|
+
cat my_file_list.txt | ascli aoc admin res node --name='my node name' --secret='my secret' v3 delete @lines:@stdin:
|
2319
2263
|
```
|
2320
2264
|
|
2321
2265
|
## Activity
|
@@ -2323,13 +2267,13 @@ cat my_file_list.txt | ascli aspera admin res node --name='my node name' --secre
|
|
2323
2267
|
The activity app can be queried with:
|
2324
2268
|
|
2325
2269
|
```
|
2326
|
-
$ ascli
|
2270
|
+
$ ascli aoc admin analytics transfers
|
2327
2271
|
```
|
2328
2272
|
|
2329
2273
|
It can also support filters and send notification email with a template:
|
2330
2274
|
|
2331
2275
|
```
|
2332
|
-
$ ascli
|
2276
|
+
$ ascli aoc admin analytics transfers --once-only=yes --lock-port=123455 \
|
2333
2277
|
--query=@json:'{"status":"completed","direction":"receive"}' \
|
2334
2278
|
--notify=@json:'{"to":"<''%=transfer[:user_email.to_s]%>","subject":"<''%=transfer[:files_completed.to_s]%> files received","body":"Dear <''%=transfer[:user_email.to_s]%>\nWe received <''%=transfer[:files_completed.to_s]%> files for a total of <''%=transfer[:transferred_bytes.to_s]%> bytes, starting with file:\n<''%=transfer[:content.to_s]%>\n\nThank you."}'
|
2335
2279
|
```
|
@@ -2349,9 +2293,9 @@ By default transfer nodes are expected to use ports TCP/UDP 33001. The web UI en
|
|
2349
2293
|
|
2350
2294
|
ATS is usable either :
|
2351
2295
|
|
2352
|
-
* from an AoC subscription : ascli
|
2296
|
+
* from an AoC subscription : ascli aoc admin ats : use AoC authentication
|
2353
2297
|
|
2354
|
-
* or from an IBM Cloud subscription : ascli ats
|
2298
|
+
* or from an IBM Cloud subscription : ascli ats : use IBM Cloud API key authentication
|
2355
2299
|
|
2356
2300
|
## IBM Cloud ATS : creation of api key
|
2357
2301
|
|
@@ -2455,21 +2399,35 @@ $ ascli server --ssh-keys=@list:,~/.ssh/id_rsa
|
|
2455
2399
|
$ ascli server --ssh-keys=@json:'["~/.ssh/id_rsa"]'
|
2456
2400
|
```
|
2457
2401
|
|
2458
|
-
The underlying ssh library `net::ssh` provides several options that may be used
|
2459
|
-
|
2402
|
+
The underlying ssh library `net::ssh` provides several options that may be used depending on environment. By default the ssh library expect that an ssh-agent is running.
|
2403
|
+
|
2404
|
+
If you get an error message such as:
|
2460
2405
|
|
2461
2406
|
```
|
2407
|
+
[Linux]
|
2462
2408
|
ERROR -- net.ssh.authentication.agent: could not connect to ssh-agent: Agent not configured
|
2463
2409
|
```
|
2464
2410
|
|
2465
|
-
|
2411
|
+
or
|
2412
|
+
|
2413
|
+
```
|
2414
|
+
[Windows]
|
2415
|
+
ERROR -- net.ssh.authentication.agent: could not connect to ssh-agent: pageant process not running
|
2416
|
+
```
|
2417
|
+
|
2418
|
+
This means that you dont have such an ssh agent running:
|
2466
2419
|
|
2467
|
-
|
2420
|
+
* check env var: `SSH_AGENT_SOCK`
|
2421
|
+
* check if the key is protected with a passphrase
|
2422
|
+
* [check the manual](https://net-ssh.github.io/ssh/v1/chapter-2.html#s2)
|
2423
|
+
* To diable use of `ssh-agent`, use the option `ssh_option` like this (or set in preset):
|
2468
2424
|
|
2469
2425
|
```
|
2470
2426
|
$ ascli server --ssh-options=@ruby:'{use_agent: false}' ...
|
2471
2427
|
```
|
2472
2428
|
|
2429
|
+
This can also be set as default using a preset
|
2430
|
+
|
2473
2431
|
## Example
|
2474
2432
|
|
2475
2433
|
One can test the "server" application using the well known demo server:
|
@@ -2764,7 +2722,7 @@ To change this parameter in `aspera.conf`, use `asconfigurator`. To display the
|
|
2764
2722
|
|
2765
2723
|
If you use a value different than 16777216, then specify it using option `max_size`.
|
2766
2724
|
|
2767
|
-
Note: the HSTS parameter (max_request_file_create_size_kb) is in
|
2725
|
+
Note: the HSTS parameter (max_request_file_create_size_kb) is in *kiloBytes* while the generator parameter is in *Bytes* (factor of 1024).
|
2768
2726
|
|
2769
2727
|
## <a name="prev_ext"></a>External tools: Linux
|
2770
2728
|
|
@@ -2894,8 +2852,7 @@ using one of three overwrite method:
|
|
2894
2852
|
|
2895
2853
|
Deletion of preview for deleted source files: not implemented yet.
|
2896
2854
|
|
2897
|
-
If the `scan` or `events` detection method is used, then the option : `skip_folders` can be used
|
2898
|
-
to skip some folders. It expects a list of path starting with slash, use the `@json:` notation, example:
|
2855
|
+
If the `scan` or `events` detection method is used, then the option : `skip_folders` can be used to skip some folders. It expects a list of path relative to the storage root (docroot) starting with slash, use the `@json:` notation, example:
|
2899
2856
|
|
2900
2857
|
```
|
2901
2858
|
$ ascli preview scan --skip-folders=@json:'["/not_here"]'
|
@@ -2903,14 +2860,14 @@ $ ascli preview scan --skip-folders=@json:'["/not_here"]'
|
|
2903
2860
|
|
2904
2861
|
The option `folder_reset_cache` forces the node service to refresh folder contents using various methods.
|
2905
2862
|
|
2906
|
-
##
|
2863
|
+
## Preview File types
|
2907
2864
|
|
2908
2865
|
Two types of preview can be generated:
|
2909
2866
|
|
2910
2867
|
* png: thumbnail
|
2911
2868
|
* mp4: video preview (only for video)
|
2912
2869
|
|
2913
|
-
|
2870
|
+
Use option `skip_format` to skip generation of a format.
|
2914
2871
|
|
2915
2872
|
## Supported input Files types
|
2916
2873
|
|
@@ -3072,7 +3029,7 @@ USAGE
|
|
3072
3029
|
asession
|
3073
3030
|
asession -h|--help
|
3074
3031
|
asession <transfer spec extended value>
|
3075
|
-
|
3032
|
+
|
3076
3033
|
If no argument is provided, default will be used: @json:@stdin
|
3077
3034
|
-h, --help display this message
|
3078
3035
|
<transfer spec extended value> a JSON value for transfer_spec, using the prefix: @json:
|
@@ -3186,15 +3143,16 @@ So, it evolved into `ascli`:
|
|
3186
3143
|
|
3187
3144
|
# Release Notes
|
3188
3145
|
|
3189
|
-
* 4.0.0.
|
3146
|
+
* 4.0.0.pre2
|
3190
3147
|
|
3191
|
-
|
3192
|
-
|
3193
|
-
|
3194
|
-
|
3195
|
-
|
3196
|
-
|
3197
|
-
|
3148
|
+
* now available as open source at [https://github.com/IBM/aspera-cli](https://github.com/IBM/aspera-cli) with general cleanup
|
3149
|
+
* changed default tool name from `mlia` to `ascli`
|
3150
|
+
* changed `aspera` command to `aoc`
|
3151
|
+
* changed gem name from `asperalm` to `aspera-cli`
|
3152
|
+
* changed module name from `Asperalm` to `Aspera`
|
3153
|
+
* removed command `folder` in `preview`, merged to `scan`
|
3154
|
+
* persistency files go to sub folder instead of main folder
|
3155
|
+
* added possibility to install SDK: `config ascp install`
|
3198
3156
|
|
3199
3157
|
* 0.11.8
|
3200
3158
|
|