cloudera.services.ml_project_file module – Manage a file within a Cloudera Machine Learning (CML) project
Note
This module is part of the cloudera.services collection (version 1.0.0).
It is not included in ansible-core.
To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install git+https://github.com/cloudera-labs/cloudera.services.git.
To use it in a playbook, specify: cloudera.services.ml_project_file.
New in cloudera.services 1.0.0
Synopsis
Upload or delete a file within a Cloudera Machine Learning (CML) project.
Paths are relative to the project root (
/home/cdsw).The module supports
check_mode.
Parameters
Parameter |
Comments |
|---|---|
The CML API key (bearer token) used to authenticate to the Workspace API. If not set, the value of the |
|
The path to a client certificate for authenticating to the API endpoint. |
|
The path to a client key for authenticating to the API endpoint. |
|
A flag to enable debug logging of the module’s execution. Choices:
|
|
Whether to re-upload the file even when it already exists. Choices:
|
|
A flag to force basic authentication for API requests. Choices:
|
|
The User-Agent string to send with API requests. Default: |
|
The number of items to return per page in a paginated API response. Default: |
|
The destination path of the file within the project, relative to the project root. |
|
The unique identifier of the enclosing project. Mutually exclusive with |
|
The name of the enclosing project. Mutually exclusive with |
|
The declarative state of the file. Choices:
|
|
The timeout in seconds for any API requests. Default: |
|
The base URL of the CML Workspace API endpoint, including the port if necessary. If not set, the value of the |
|
The password for authenticating to the API endpoint. |
|
The username for authenticating to the API endpoint. |
|
A flag to enable or disable GSSAPI authentication for API requests. Choices:
|
|
A flag to enable or disable the use of a proxy for API requests. Choices:
|
|
A flag to enable or disable SSL certificate validation for API requests. Choices:
|
Examples
- name: Upload a file from literal content
cloudera.services.ml_project_file:
url: "https://ml-workspace.example.com"
api_key: "{{ cml_api_key }}"
project_name: my-project
path: app.py
content: |
print("hello")
state: present
- name: Upload a local file to a nested path
cloudera.services.ml_project_file:
project_id: "{{ project_id }}"
path: src/run.py
src: ./files/run.py
- name: Force re-upload of an existing file
cloudera.services.ml_project_file:
project_id: "{{ project_id }}"
path: app.py
content: "print('updated')"
force: true
- name: Delete a file
cloudera.services.ml_project_file:
project_id: "{{ project_id }}"
path: app.py
state: absent
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
|---|---|
The project file details. Returned: always |
|
The size of the file in bytes. Returned: when available |
|
Whether the path is a directory. Returned: when available |
|
The path of the file, relative to the project root. Returned: always |
|
Returns the captured REST API log. Returned: when supported |
|
Returns a list of each line of the captured REST API log. Returned: when supported |