asset file download

Stream the content of the specified file with the appropriate HTTP headers for entity tags, file size, and mime type.

Extended description

Projects have the following directory structure.
  • /projects
  • /projects/<project-id>
  • /projects/<project-id>/project
  • /projects/<project-id>/project/readme.json
  • /projects/<project-id>/assets
  • /projects/<project-id>/assets/ <project assets>

The asset file download command can download files from the /projects/<project-id>/assets folder only.

Syntax

cpd-cli asset file download \
--path=<asset-file-path> \
--profile=<cpd-profile-name> \
[--accept=application/zip |
application/gzip | application/json | text/plain |
application/xml] \
[--account-id=<catalog-id>] \
[--byte-limit=<byte-limit>] \
[--catalog-id=<catalog-id>] \
[--context=<catalog-project-or-space-id>] \
[--cpd-config=<cpd-config-location>] \
[--cpd-scope=<cpd-scope>] \
[--flat=true|false] \
[--force=true|false] \
[--inflate=true|false] \
[--jmes-query=<jmespath-query>] \
[--output=json|yaml|table] \
[--output-file=<output-file-location>] \
[--project-id=<project-id>] \
[--quiet] \
[--raw-output=true|false] \
[--root=true|false] \
[--signature=<signed-string>] \
[--size-limit=<asset-size-limit>] \
[--space-id=<space-identifier>] \
[--verbose]

Arguments

The asset file download command has no arguments.

Options

Table 1: Command options
Option Description
--accept Specify the response type. A character encoding can be specified by including a 'charset' parameter. For example, 'text/plain;charset=utf-8'.
Status
Required.
Syntax
--accept=application/zip | application/gzip | application/json | text/plain | application/xml
Default value
No default.
Valid values
application/zip | application/gzip | application/json | text/plain | application/xml
--account-id Specify the catalog ID that the file is associated with. A catalog, project, or space ID must also be 
specified.
Status
Required.
Syntax
--account-id=<catalog-id>
Default value
No default.
Valid values
Any valid catalog ID.
--byte-limit Specify the maximum number of
 bytes of data to return.
Status
Optional.
Syntax
--byte-limit=<byte-limit>
Default value
No default.
Valid values
Any valid integer value (in bytes).
--catalog-id Specify either a catalog ID,
 project ID, or space ID (specify one only).
Status
Optional.
Syntax
--catalog-id=<catalog-id>
Default value
No default.
Valid values
A valid catalog, project, or space ID.
--context Specify the configuration context
 name.
Status
Optional.
Syntax
--context=<catalog-project-or-space-id>
Default value
Not applicable.
Valid values
A valid configuration context name.
--cpd-config The IBM Software Hub
 configuration location. For example, $HOME/.cpd-cli/config.
Status
Optional.
Syntax
--cpd-config=<cpd-config-location>
Default value
$HOME/.cpd-cli/config
Valid values
A valid IBM® Software Hub configuration location.
--cpd-scope The IBM Software Hub space, project, or catalog scope. For example, cpd://default-context/spaces/7bccdda4-9752-4f37-868e-891de6c48135.
Status
Optional.
Syntax
--cpd-scope=<cpd-scope>
Default value
No default.
Valid values
A valid IBM Software Hub space, project, or catalog scope.
--flat When set to true, folder
 structures are recursively flattened and the response is a list of files in parent and child
 directories. The 'path' shows the full resource path from the starting
 directory.
Status
Optional.
Syntax
--flat=true|false
Default value
false
Valid values
false
Folder structures are not recursively flattened.
true
When set to true, folder
 structures are recursively flattened and the response is a list of files in parent and child
 directories. The 'path' shows the full resource path from the starting
 directory.
--force When set to 'true', asset files skip validation on whether the target is an archive. The setting is valid only when --inflate=true.

Status
Optional.
Syntax
--force=true|false
Default value
true
Valid values
true
Folder structures are not recursively flattened.
false
When set to true, folder
 structures are recursively flattened and the response is a list of files in parent and child
 directories. The 'path' shows the full resource path from the starting
 directory.

--help

-h

Display command help.
Status
Optional.
Syntax
--help
Default value
No default.
Valid values
Not applicable.
--inflate When set to true, the option takes the supplied file and decompresses it into the target directory. The option is acceptable only
 for project, space, and catalog targets and takes precedence over any other options. The root directory must exist.
Status
Optional.
Syntax
--inflate=true|false
Default value
true
Valid values
true
The supplied file is decompressed into the target directory.
false
The supplied file is not decompressed into the target directory.
--jmes-query Provide a JMESPath query to customize the output.
Status
Optional.
Syntax
--jmes-query=<jmespath-query>
Default value
No default.
Valid values
A valid JMESPath query.
--output Specify an output format.
Status
Optional.
Syntax
--output=json|yaml|text
Default value
text
Valid values
Valid formats include JSON, YAML, or text (the default format).
--output-file Specify a file path where all output is redirected.
Status
Optional.
Syntax
--output-file=<output-file-location>
Default value
No default.
Valid values
A valid output file path location.
--path Specify the asset file path.
Status
Required.
Syntax
--path=<asset-file-path>
Default value
No default.
Valid values
A valid asset file path.
--profile The name of the profile that you created to store information about an instance of Cloud Pak for Data and your credentials for the instance.
Status
Required.
Syntax
--profile=<cpd-profile-name>
Default value
No default.
Valid values

The name of the profile that you created.

--project-id Specify an IBM Software Hub project instance.
Status
Optional.
Syntax
--project-id=<project-id>
Default value
No default.
Valid values
A valid project identifier.
--quiet Suppress verbose messages.
Status
Optional.
Syntax
--quiet
Default value
No default.
Valid values
Not applicable.
--raw-output When set to true, single values are not surrounded by quotation marks in
 JSON output mode.
Status
Optional.
Syntax
--raw-output=true|false
Default value
false
Valid values
false
Single values in JSON output mode are surrounded by quotation marks.
true
Single values in JSON output mode are not surrounded by quotation marks.
--root When set to true, the API return
 is relative to the target container's root directory instead of the assets directory. The option is supported for services and for account administrators when targeting the account directory.
Status
Optional.
Syntax
--root=true|false
Default value
false
Valid values
false
The API return is not relative to the target container's root directory.
true
The API return is relative to the target container's root directory.
--signature Specify the signed string that is obtained by making an API request to the signing endpoint (this is an additional authorization method).
Status
Optional.
Syntax
--signature=<signed-string>
Default value
No default.
Valid values
Any valid signed string.
--size-limit Specify an asset size limit (in MB). The option returns '400 bad request' when the asset is larger than the specified
 value.
Status
Optional.
Syntax
--size-limit=<asset-size-limit>
Default value
No default.
Valid values
Any valid asset size limit value (in MB).
--space-id Specify a space identifier.
Status
Optional.
Syntax
--space-id=<space-identifier>
Default value
No default.
Valid values
A valid space identifier.
--verbose Logs include more detailed messages.
Status
Optional.
Syntax
--verbose
Default value
No default.
Valid values
Not applicable.

Examples

Note: The following examples use environment variables. Use a script to create environment variables with the correct values for your environment. You can add the listed environment variables to the installation variables script. For more information, see Setting up installation environment variables.
Define the environment variables.
Replace the following properties with your data.
export DOWNLOAD_PATH=<The download file path>
export SCRIPT_PATH=<The script path>
export SPACE_ID=<The deployment space identifier>
Download a script to a specific path.
cpd-cli asset file download \
--output-file=${DOWNLOAD_PATH} \
--path=${SCRIPT_PATH} \
--space-id=${SPACE_ID}