File
class flow_api.file.File
(select=None, cls=None, init=None, by='name', allow_normal=True, allow_deleted=False, bundle_id=[class 'flow_api.system.NotSet'], bundle_name=[class 'flow_api.system.NotSet'], commit_message=[class 'flow_api.system.NotSet'], content=[class 'flow_api.system.NotSet'], description=[class 'flow_api.system.NotSet'], is_readonly=[class 'flow_api.system.NotSet'], name=[class 'flow_api.system.NotSet'], project_id=[class 'flow_api.system.NotSet'], project_name=[class 'flow_api.system.NotSet'], debug=False
)
Base class: Resource
A file which is stored in Cloudomation Engine.
To store data in a file there are three additional arguments for the save()
method available:
import flow_api
def handler(system: flow_api.System, this: flow_api.Execution, inputs: dict):
# store a text (utf8 string)
system.file('my-file.txt').save_text_content('text content')
# read as base64
assert system.file('my-file.txt').get_base64_content() == 'dGV4dCBjb250ZW50'
# store bytes data
system.file('my-file.dat').save_bytes_content(b'bytes data äöü')
# read as text (utf8 string)
assert system.file('my-file.dat').get_text_content() == 'bytes data äöü'
# store a base64 encoded string
system.file('my-file.ext').save_base64_content('Q2xvdWRvbWF0aW9u')
# read as bytes
assert system.file('my-file.ext').get_bytes_content() == b'Cloudomation'
# list files
for file_ in system.files():
this.log(file_.get('name', 'content_size_bytes'))
# clean up
system.file('my-file.txt').delete()
system.file('my-file.dat').delete()
system.file('my-file.ext').delete()
return this.success('all done')
See the corresponding Resources class at File
Parameters
Name | Type | Description |
---|---|---|
allow_deleted | bool | |
allow_normal | bool | |
bundle_id | typing.Union[ flow_api.system.NotSet, str, NoneType ] | Reference to the bundle this record is associated with. Allowed for BUNDLE_REPOSITORY, CONNECTOR, CUSTOM_OBJECT, DEVOLUTIONS_CONFIG, FILE, FLOW, LDAP_CONFIG, OAUTH, OBJECT_TEMPLATE, PLUGIN, ROLE, SCHEDULE, SCHEDULER, SCHEMA, SETTING, SYNC_CONFIG, TAG, VAULT_CONFIG, WEBHOOK, WRAPPER. Not allowed for BUNDLE, EXECUTION, MESSAGE, ORGANIZATION, PROCESS, PROJECT, USER, WORKSPACE. Mutually exclusive with project_id |
bundle_name | typing.Union[ flow_api.system.NotSet, str, NoneType ] | The name of the bundle. Will look up the bundle and set bundle_id. |
by | str | |
cls | typing.Union[ type, NoneType ] | |
commit_message | typing.Union[ flow_api.system.NotSet, str, NoneType ] | The commit message for this change. |
content | typing.Union[ flow_api.system.NotSet, bytes ] | The binary content of the file. |
debug | bool | if set, the content of the data being written will be logged. |
description | typing.Union[ flow_api.system.NotSet, str, NoneType ] | A multiline description of what this record is and does. |
init | typing.Union[ dict, NoneType ] | |
is_readonly | typing.Union[ flow_api.system.NotSet, bool ] | A flag to control if the record can be modified. Allowed for BUNDLE, BUNDLE_REPOSITORY, CONNECTOR, CUSTOM_OBJECT, DEVOLUTIONS_CONFIG, FILE, FLOW, OAUTH, OBJECT_TEMPLATE, PLUGIN, PROJECT, ROLE, SCHEDULE, SCHEDULER, SCHEMA, SETTING, SYNC_CONFIG, TAG, VAULT_CONFIG, WEBHOOK, WRAPPER. Not allowed for EXECUTION, LDAP_CONFIG, MESSAGE, ORGANIZATION, PROCESS, USER, WORKSPACE |
name | typing.Union[ flow_api.system.NotSet, str ] | The name of this record. Must be unique across a workspace. |
project_id | typing.Union[ flow_api.system.NotSet, str, NoneType ] | Reference to the project this record is associated with. Allowed for CONNECTOR, CUSTOM_OBJECT, DEVOLUTIONS_CONFIG, EXECUTION, FILE, FLOW, MESSAGE, OAUTH, OBJECT_TEMPLATE, PLUGIN, SCHEDULE, SCHEDULER, SCHEMA, SETTING, SYNC_CONFIG, TAG, VAULT_CONFIG, WEBHOOK, WRAPPER. Not allowed for BUNDLE, BUNDLE_REPOSITORY, LDAP_CONFIG, ORGANIZATION, PROCESS, PROJECT, ROLE, USER, WORKSPACE. Mutually exclusive with bundle_id. |
project_name | typing.Union[ flow_api.system.NotSet, str, NoneType ] | The name of the project. Will look up the project and set project_id. |
select | typing.Union[ str, NoneType ] |
Constants
RESOURCE = fileMethods
add_record_tag
details
add_record_user
details
add_resource_wrapper
details
add_tag
details
bundle
details
clone
details
created_by_identity
details
delete
details
deleted_by_identity
details
exists
details
export
details
get
details
get_base64_content
details
get_bytes_content
details
get_dict
details
get_identity_created_by
details
get_identity_deleted_by
details
get_identity_modified_by
details
get_json_content
details
get_logs
details
get_tags
details
get_text_content
details
get_yaml_content
details
modified_by_identity
details
organization
details
project
details
record_log_list
details
record_tag_list
details
record_user_list
details
remove_tag
details
resource_wrapper_list
details
restore
details
save
details
save_base64_content
details
save_bytes_content
details
save_json_content
details
save_text_content
details
save_yaml_content
details
workspace
details