CRUD
The CRUD methods are used to create, read, update and delete projects.
Example:
A project
entity can be managed with the following methods.
Create:
Read:
Read or create:
Update:
Delete:
For project configuration options, please refer to the Config section, and the Setup section.
Create
You can create a project with the new_project()
or with log_project()
method.
New
This function create a new entity and saves it into the backend.
new_project
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name
|
str
|
Object name. |
required |
description
|
str
|
Description of the object (human readable). |
None
|
labels
|
list[str]
|
List of labels. |
None
|
local
|
bool
|
If True, use local backend, if False use DHCore backend. Default to False. |
False
|
config
|
dict
|
DHCore environment configuration. |
None
|
context
|
str
|
The context local folder of the project. |
None
|
setup_kwargs
|
dict
|
Setup keyword arguments passed to setup_project() function. |
None
|
**kwargs
|
dict
|
Keyword arguments. |
{}
|
Returns:
Type | Description |
---|---|
Project
|
Object instance. |
Examples:
Read
To read projects you can use the get_project()
, import_project()
or load_project()
.
Get
This function searches for a single project into the backend.
get_project
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name
|
str
|
The Project name. |
required |
local
|
bool
|
Flag to determine if backend is local. |
False
|
config
|
dict
|
DHCore environment configuration. |
None
|
setup_kwargs
|
dict
|
Setup keyword arguments passed to setup_project() function. |
None
|
**kwargs
|
dict
|
Parameters to pass to the API call. |
{}
|
Returns:
Type | Description |
---|---|
Project
|
Object instance. |
Examples:
Import
This function load the project from a local yaml file descriptor.
import_project
Parameters:
Name | Type | Description | Default |
---|---|---|---|
file
|
str
|
Path to YAML file. |
required |
local
|
bool
|
Flag to determine if backend is local. |
False
|
config
|
dict
|
DHCore environment configuration. |
None
|
setup_kwargs
|
dict
|
Setup keyword arguments passed to setup_project() function. |
None
|
Returns:
Type | Description |
---|---|
Project
|
Object instance. |
Examples:
Load
This function returns a projects from the backend or from a local file according to the parameter passed to the function. If the parameter is name
, the function will try to load the project from the backend. If the parameter is file
, the function will try to load the project from the local file.
load_project
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name
|
str
|
Project name. |
None
|
filename
|
str
|
Path to YAML file. |
None
|
local
|
bool
|
Flag to determine if backend is local. |
False
|
config
|
dict
|
DHCore environment configuration. |
None
|
setup_kwargs
|
dict
|
Setup keyword arguments passed to setup_project() function. |
None
|
**kwargs
|
dict
|
Keyword arguments. |
{}
|
Returns:
Type | Description |
---|---|
Project
|
Object instance. |
Examples:
If name is provided, load project from backend.
If filename is provided, load project from file.
Read or create
You can read or create a project with the get_or_create_project()
method.
get_or_create_project
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name
|
str
|
Project name. |
required |
local
|
bool
|
Flag to determine if backend is local. |
False
|
config
|
dict
|
DHCore environment configuration. |
None
|
context
|
str
|
Folder where the project will saves its context locally. |
None
|
setup_kwargs
|
dict
|
Setup keyword arguments passed to setup_project() function. |
None
|
**kwargs
|
dict
|
Keyword arguments. |
{}
|
Returns:
Type | Description |
---|---|
Project
|
Object instance. |
Update
To update a project you can use the update_project()
method.
update_project
Delete
To delete a project you can use the delete_project()
method.
delete_project
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name
|
str
|
Project name. |
required |
cascade
|
bool
|
Flag to determine if delete is cascading. |
True
|
clean_context
|
bool
|
Flag to determine if context will be deleted. If a context is deleted, all its objects are unreacheable. |
True
|
local
|
bool
|
Flag to determine if backend is local. |
False
|
**kwargs
|
dict
|
Parameters to pass to the API call. |
{}
|
Returns:
Type | Description |
---|---|
dict
|
Response from backend. |
Examples: