# icx_copy – Transfer files from or to remote Ruckus ICX 7000 series switches

New in version 2.9.

- Synopsis
- Parameters
- Notes
- Examples
- Return Values
- Status

## Synopsis

- This module transfers files from or to remote devices running ICX.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---

download
string

Choices:
- running-config
- startup-config
- flash_primary
- flash_secondary
- bootrom
- fips-primary-sig
- fips-secondary-sig
- fips-bootrom-sig

Name of the resource to be downloaded. Mutually exclusive with upload.

protocol
string / required

Choices:
- scp
- https

Data transfer protocol to be used

public_key
string

Choices:
- rsa
- dsa

public key type to be used to login to scp server

remote_filename string / required |  | The name or path of the remote file/resource to be uploaded or downloaded.
remote_pass string |  | remote password to be used for scp login.
remote_port string |  | The port number of the remote host. Default values will be selected based on protocol type. Default scp:22, http:443
remote_server string / required |  | IP address of the remote server
remote_user string |  | remote username to be used for scp login.

upload
string

Choices:
- running-config
- startup-config
- flash_primary
- flash_secondary

Name of the resource to be uploaded. Mutually exclusive with download.

## Notes

Note

- Tested against ICX 10.1.
- For information on using ICX platform, see the ICX OS Platform Options guide.

## Examples

    - name: upload running-config to the remote scp server
      icx_copy:
        upload: running-config
        protocol: scp
        remote_server: 172.16.10.49
        remote_filename: running.conf
        remote_user: user1
        remote_pass: pass123

    - name: download running-config from the remote scp server
      icx_copy:
        download: running-config
        protocol: scp
        remote_server: 172.16.10.49
        remote_filename: running.conf
        remote_user: user1
        remote_pass: pass123

    - name: download running-config from the remote scp server using rsa public key
      icx_copy:
        download: running-config
        protocol: scp
        remote_server: 172.16.10.49
        remote_filename: running.conf
        remote_user: user1
        remote_pass: pass123
        public_key: rsa

    - name: upload startup-config to the remote https server
      icx_copy:
        upload: startup-config
        protocol: https
        remote_server: 172.16.10.49
        remote_filename: config/running.conf
        remote_user: user1
        remote_pass: pass123

    - name: upload startup-config to the remote https server
      icx_copy:
        upload: startup-config
        protocol: https
        remote_server: 172.16.10.49
        remote_filename: config/running.conf
        remote_user: user1
        remote_pass: pass123

    - name: Download OS image into the flash from remote scp ipv6 server
      icx_copy:
        download: startup-config
        protocol: scp
        remote_server: ipv6 FE80:CD00:0000:0CDE:1257:0000:211E:729C
        remote_filename: img.bin
        remote_user: user1
        remote_pass: pass123

    - name: Download OS image into the secondary flash from remote scp ipv6 server
      icx_copy:
        Download: flash_secondary
        protocol: scp
        remote_server: ipv6 FE80:CD00:0000:0CDE:1257:0000:211E:729C
        remote_filename: img.bin
        remote_user: user1
        remote_pass: pass123

    - name: Download OS image into the secondary flash from remote scp ipv6 server on port 5000
      icx_copy:
        Download: flash_secondary
        protocol: scp
        remote_server: ipv6 FE80:CD00:0000:0CDE:1257:0000:211E:729C
        remote_port: 5000
        remote_filename: img.bin
        remote_user: user1
        remote_pass: pass123

    - name: Download OS image into the primary flash from remote https ipv6 server
      icx_copy:
        Download: flash_primary
        protocol: https
        remote_server: ipv6 FE80:CD00:0000:0CDE:1257:0000:211E:729C
        remote_filename: images/img.bin
        remote_user: user1
        remote_pass: pass123

    - name: Download OS image into the primary flash from remote https ipv6 server on port 8080
      icx_copy:
        Download: flash_primary
        protocol: https
        remote_server: ipv6 FE80:CD00:0000:0CDE:1257:0000:211E:729C
        remote_port: 8080
        remote_filename: images/img.bin
        remote_user: user1
        remote_pass: pass123

## Return Values

Common return values are documented here, the following are the fields unique to this module:

Key | Returned | Description
--- | --- | ---
changed boolean | always | true when downloaded any configuration or flash. false otherwise.

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]

### Authors

- Ruckus Wireless (@Commscope)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.