REST API¶
Примечание
Для получения доступа к REST API необходим токен. Получение токена описано во вкладке с дополнительной информацией.
SchedulerAPI¶
Позволяет осуществлять запуск функций модулей TIONIX или платформы OpenStack в необходимый период времени или по расписанию.
Информация о модуле¶
Подробная информация о модуле.
Пример запроса:¶
curl -X GET -H "X-Auth-Token: $token" -H "Content-Type: application/json" http://controller:10001/tnx-scheduler/ | python -m json.tool
Ответ¶
Параметры ответа:¶
Name | In | Type | Description |
---|---|---|---|
info | body | object | Информация. |
version | body | string | Версия. |
Пример получения информации о модуле в JSON формате:
{
"info": {
"version": "2.0"
}
}
Запланированные задачи¶
Действия с запланированными задачами.
Просмотр перечня типов и групп объектов, доступных для планирования задач.
Пример запроса:¶
curl -X GET -H "X-Auth-Token: $token" -H "Content-Type: application/json" http://controller:10001/timetable/task_objects/ | python -m json.tool
Ответ¶
Параметры ответа:¶
Name | In | Type | Description |
---|---|---|---|
object_types | body | object | Перечень типов и групп объектов. |
hypervisor | body | array | Гипервизор. |
instance | body | array | Виртуальная машина. |
project | body | array | Проект. |
volume | body | array | Диск. |
Пример результата в JSON формате:
HTTP 200 OK
Content-Type: application/json
{
"object_types": {
"all": [
"admin",
"project",
"identity",
"vdi"
],
"hypervisor": [
"admin"
],
"instance": [
"admin",
"vdi",
"project"
],
"project": [
"vdi",
"identity"
],
"volume": [
"admin",
"project"
]
}
}
Просмотр списка доступных функций для планирования задач.
Запрос¶
Параметры запроса:¶
Name | In | Type | Description |
---|---|---|---|
type | query | string | Тип объекта для планирования. Возможные значения:
|
groups | query | string | Группа типа объекта для планирования. Возможные значения:
|
locale (Optional) | query | string | Выбор языка. |
Пример запроса:¶
curl -X GET -H "X-Auth-Token: $token" -H "Content-Type: application/json" http://controller:10001/timetable/tasks_list/?type=hypervisor'&'groups=admin | python -m json.tool
Ответ¶
Пример результата в JSON формате:
HTTP 200 OK
Content-Type: application/json
[
[
"node_power_on",
"Power on"
],
[
"run_request",
"Run curl request"
],
[
"host_shutdown",
"Shutdown"
],
[
"node_power_off",
"Power off"
],
[
"run_command",
"Run openstack shell command"
]
]
Получение списка выполняющихся задач.
Запрос¶
Параметры запроса:¶
Name | In | Type | Description |
---|---|---|---|
tenant_id | query | string | Идентификатор проекта. |
offset (Optional) | query | string | Номер позиции для получения данных. |
limit (Optional) | query | string | Ограничение количества получаемых данных. |
all_tenants (Optional) | query | bool | Получение списка задач, запланированных во всех проектах, доступных пользователю, или только в текущем проекте. По умолчанию: False. |
sort_key (Optional) | query | string | Наименование поля для сортировки. |
locale (Optional) | query | string | Выбор языка. |
filter_tenants (Optional) | query | list | Фильтрация задач по идентификаторам проектов. |
start_date (Optional) | query | string | Фильтрация задач по дате создания (начальная дата). |
end_date (Optional) | query | string | Фильтрация задач по дате создания (конечная дата). |
show_deleted (Optional) | query | bool | Вывод удаленных задач. По умолчанию: False. |
subject_id (Optional) | query | string | Идентификатор субъекта задачи. |
subject_type (Optional) | query | string | Фильтрация по типу субъекта. Возможные значения:
|
subject_group (Optional) | query | string | Фильтрация по группе объекта. Возможные значения:
|
name (Optional) | query | string | Фильтрация по описанию задачи. |
status (Optional) | query | bool | Фильтрация по полю enabled периодической задачи. |
type (Optional) | query | string | Фильтрация по типу задачи. Возможные значения:
|
action (Optional) | query | string | Фильтрация по наименованию действия. |
Пример запроса:¶
curl -X GET -H "X-Auth-Token: $token" -H "Content-Type: application/json" http://controller:10001/timetable/tasks_monitoring/?tenant_id=$tenant | python -m json.tool
Ответ¶
Параметры ответа:¶
Name | In | Type | Description |
---|---|---|---|
rows | body | array | Список задач планировщика. |
action | body | string | Наименование действия. |
author_name | body | string | Пользователь, создавший задачу. |
begin_date | body | string | Дата начала выполнения задачи. |
begin_time | body | string | Время начала выполнения задачи. |
created_at | body | string | Дата и время создания. |
deleted | body | bool | Флаг, указывающий на то, что задача удалена. |
deleted_at (Optional) | body | string | Дата и время удаления. |
enabled | body | bool | Флаг, показывающий, активна ли задача. |
expires | body | string | Время действия запланированной задачи. |
timetable_id | query | string | Идентификатор задачи. |
last_run_at (Optional) | body | string | Дата и время последнего запуска задачи. |
name (Optional) | query | string | Фильтрация по описанию задачи. |
repeat | body | string | Флаг, указывающий на то, является ли задача периодической. |
schedule | body | string | Дополнительная информация. |
subject | body | string | Наименование субъекта задачи. |
subject_id | body | string | Идентификатор субъекта задачи. |
subject_type | body | string | Тип объекта. Возможные значения:
|
subject_group | body | string | Группа объекта. Возможные значения:
|
tenant_id | body | string | Идентификатор проекта. |
timezone | body | string | Часовой пояс. |
total_run_count | body | integer | Общее количество запусков задачи. |
last_run_result | body | string | Результат последнего запуска. |
unique_name | body | string | Наименование действия. |
total_count | body | integer | Общее количество задач. |
Пример результата в JSON формате:
HTTP 200 OK
Content-Type: application/json
{
"rows": [
{
"action": "Suspend Instance",
"author_name": "admin",
"begin_date": "2018-11-23",
"begin_time": "08:46:00",
"created_at": "2018-11-23T08:43:04.311732Z",
"deleted": false,
"deleted_at": null,
"enabled": false,
"expires": "2018-11-23T23:59:59Z",
"last_run_at": "2018-11-23T08:46:00.010190Z",
"last_run_result": "success",
"name": "test1",
"repeat": false,
"schedule": "<crontab: 46 8 * 23 11 (m/h/d/dM/MY)>",
"subject": "test",
"subject_group": "project",
"subject_id": "19c06232-ee43-4e75-b4c9-3575bb17d753",
"subject_type": "instance",
"tenant_id": "db0d89f6c40c46b4a6879ee1b1a1d907",
"timetable_id": 3,
"timezone": "Europe/Moscow",
"total_run_count": 1,
"unique_name": "server_suspend"
}
],
"total_count": 1
}
Получение подробной информации о задаче.
Запрос¶
Параметры запроса:¶
Name | In | Type | Description |
---|---|---|---|
timetable_id | query | string | Идентификатор задачи. |
Пример запроса:¶
curl -X GET -H "X-Auth-Token: $token" -H "Content-Type: application/json" http://controller:10001/timetable/5/ | python -m json.tool
Ответ¶
Параметры ответа:¶
Name | In | Type | Description |
---|---|---|---|
author_name | body | string | Пользователь, создавший задачу. |
begin_date | body | string | Дата начала выполнения задачи. |
begin_time | body | string | Время начала выполнения задачи. |
created_at | body | string | Дата и время создания. |
description | body | string | Название задачи. |
timetable_id | query | string | Идентификатор задачи. |
periodic_task | body | object | Свойства периодичности. |
args | body | string | Дополнительные аргументы. |
crontab (Optional) | body | string | Настройки cron. Пример: "crontab":{"month_of_year": "5", "day_of_week": "*", "hour": "10", "minute": "35", "day_of_month": "17"} . |
day_of_month | body | string | День месяца. |
day_of_week | body | string | День недели. |
hour | body | string | Час. |
minute | body | string | Минута. |
month_of_year | body | string | Месяц. |
date_changed | body | string | Дата и время изменения. |
description | body | string | Название задачи. |
enabled | body | bool | Флаг, показывающий, активна ли задача. |
exchange (Optional) | body | string | Изменение. |
expires | body | string | Время действия запланированной задачи. |
task_id | body | integer | Идентификатор запуска периодической задачи. |
interval (Optional) | body | string | Интервал периодичности выполнения задачи. |
kwargs | body | string | Дополнительные аргументы. |
last_run_at (Optional) | body | string | Дата и время последнего запуска задачи. |
name (Optional) | query | string | Фильтрация по описанию задачи. |
next_run_time | body | string | Дата и время следующего запуска. |
queue (Optional) | body | string | Очередь задач. |
routing_key (Optional) | body | string | Ключ маршрутизации. |
task | body | string | Имя задачи. |
total_run_count | body | integer | Общее количество запусков задачи. |
repeat | body | string | Флаг, указывающий на то, является ли задача периодической. |
run_count_limit (Optional) | body | string | Максимальное количество повторений. |
last_run_message | body | string | Сообщение после последнего запуска. |
last_run_result | body | string | Результат последнего запуска. |
subject | body | string | Наименование субъекта задачи. |
subject_id | body | string | Идентификатор субъекта задачи. |
subject_type | body | string | Тип объекта. Возможные значения:
|
subject_group | body | string | Группа объекта. Возможные значения:
|
tenant_id | body | string | Идентификатор проекта. |
timezone | body | string | Часовой пояс. |
unique_name | body | string | Наименование действия. |
Пример результата в JSON формате:
HTTP 200 OK
Content-Type: application/json
{
"author_name": "admin",
"begin_date": "2018-11-23",
"begin_time": "08:46:00",
"created_at": "2018-11-23T08:43:04.311732Z",
"deleted": false,
"description": "test1",
"id": 3,
"last_run_message": "Instance \"test\" is successfully suspended.",
"last_run_result": "success",
"periodic_task": {
"args": "[]",
"crontab": {
"day_of_month": "23",
"day_of_week": "*",
"hour": "8",
"minute": "46",
"month_of_year": "11"
},
"date_changed": "2018-11-23T08:46:01.920124Z",
"description": "",
"enabled": false,
"exchange": null,
"expires": "2018-11-23T23:59:59Z",
"id": 4,
"interval": null,
"kwargs": "{\"user_domain_name\": \"Default\", \"object_id\": \"19c06232-ee43-4e75-b4c9-3575bb17d753\", \"timetable_id\": \"3\", \"object_name\": \"test\", \"repeatable\": false, \"trust_id\": \"52fc433d2a24400b906bd223001a400a\", \"periodic_task_uuid_name\": \"df205e30-33fd-486a-8be4-bcdb536c18de\", \"user_name\": \"admin\", \"tenant\": \"db0d89f6c40c46b4a6879ee1b1a1d907\"}",
"last_run_at": "2018-11-23T08:46:00.010190Z",
"name": "df205e30-33fd-486a-8be4-bcdb536c18de",
"next_run_time": null,
"queue": null,
"routing_key": null,
"task": "tionix_node_control.scheduler_tasks.server_suspend.server_suspend",
"total_run_count": 1
},
"repeat": false,
"run_count_limit": null,
"subject": "test",
"subject_group": "project",
"subject_id": "19c06232-ee43-4e75-b4c9-3575bb17d753",
"subject_type": "instance",
"tenant_id": "db0d89f6c40c46b4a6879ee1b1a1d907",
"timetable_id": 3,
"timezone": "Europe/Moscow",
"unique_name": "server_suspend"
}
Создание задачи с определенными параметрами.
Запрос¶
Name | In | Type | Description |
---|---|---|---|
unique_name | body | string | Наименование действия. |
subject_type | body | string | Тип объекта. Возможные значения:
Примечание При выборе типа |
subject_group | body | string | Группа объекта. Возможные значения:
|
description | body | string | Название задачи. |
author_name | body | string | Пользователь, создавший задачу. |
expires | body | string | Время действия запланированной задачи. |
repeat | body | string | Флаг, указывающий на то, является ли задача периодической. |
run_count_limit (Optional) | body | string | Максимальное количество повторений. |
crontab (Optional) | body | string | Настройки cron. Пример: "crontab":{"month_of_year": "5", "day_of_week": "*", "hour": "10", "minute": "35", "day_of_month": "17"} . |
begin_time | body | string | Время начала выполнения задачи. |
timezone | body | string | Часовой пояс. |
subject | body | string | Наименование субъекта задачи. |
begin_date | body | string | Дата начала выполнения задачи. |
subject_id | body | string | Идентификатор субъекта задачи. |
key_arguments | body | list | Параметры аутентификации и дополнительные параметры задачи. Пример: "key_arguments":"{\"user_domain_name\": \"default\", \"user_name\": \"admin\", \"user_password\": \"password\", \"tenant\": \"70ac61efe4a64d29a3839a17cd31e393\"}" . |
tenant_id | body | string | Идентификатор проекта. |
object_id | body | string | Идентификатор объекта задачи. Аргумент запроса, необходимый для дополнительной валидации. |
object_name | body | string | Имя объекта задачи. Аргумент запроса, необходимый для дополнительной валидации. |
Пример запроса:¶
curl -X POST -H "X-Auth-Token: $token" -H "Content-Type: application/json" -d '{"unique_name":"server_suspend", "subject_type":"instance", "subject_group":"project", "begin_date":"2018-12-05", "description":"xz", "key_arguments":"{\"user_domain_name\": \"default\", \"user_name\": \"admin\", \"user_password\": \"password\", \"tenant\": \"db0d89f6c40c46b4a6879ee1b1a1d907\"}", "subject_id":"19c06232-ee43-4e75-b4c9-3575bb17d753", "expires":"2018-12-20 23:59:59", "author_name":"admin", "ending":"2018-12-20", "repeat":"False", "crontab": {"day_of_month":"*", "minute":"0", "hour":"0", "day_of_week":"*", "month_of_year":"*" }, "begin_time":"16:30:00", "timezone":"UTC", "tenant_id":"db0d89f6c40c46b4a6879ee1b1a1d907", "author_name":"admin", "subject":"test"}' http://controller:10001/timetable/ | python -m json.tool
Ответ¶
Параметры ответа:¶
Name | In | Type | Description |
---|---|---|---|
timetable_id | query | string | Идентификатор задачи. |
author_name | body | string | Пользователь, создавший задачу. |
tenant_id | body | string | Идентификатор проекта. |
description | body | string | Название задачи. |
unique_name | body | string | Наименование действия. |
repeat | body | string | Флаг, указывающий на то, является ли задача периодической. |
run_count_limit (Optional) | body | string | Максимальное количество повторений. |
subject | body | string | Наименование субъекта задачи. |
begin_date | body | string | Дата начала выполнения задачи. |
begin_time | body | string | Время начала выполнения задачи. |
timezone | body | string | Часовой пояс. |
created_at | body | string | Дата и время создания. |
periodic_task | body | object | Свойства периодичности. |
task_id | body | integer | Идентификатор запуска периодической задачи. |
name (Optional) | query | string | Фильтрация по описанию задачи. |
task | body | string | Имя задачи. |
args | body | string | Дополнительные аргументы. |
kwargs | body | string | Дополнительные аргументы. |
queue (Optional) | body | string | Очередь задач. |
exchange (Optional) | body | string | Изменение. |
routing_key (Optional) | body | string | Ключ маршрутизации. |
expires | body | string | Время действия запланированной задачи. |
enabled | body | bool | Флаг, показывающий, активна ли задача. |
last_run_at (Optional) | body | string | Дата и время последнего запуска задачи. |
total_run_count | body | integer | Общее количество запусков задачи. |
date_changed | body | string | Дата и время изменения. |
description | body | string | Название задачи. |
crontab (Optional) | body | string | Настройки cron. Пример: "crontab":{"month_of_year": "5", "day_of_week": "*", "hour": "10", "minute": "35", "day_of_month": "17"} . |
id | body | integer | Идентификатор. |
minute | body | string | Минута. |
hour | body | string | Час. |
day_of_week | body | string | День недели. |
day_of_month | body | string | День месяца. |
month_of_year | body | string | Месяц. |
subject_type | body | string | Тип объекта. Возможные значения:
|
subject_group | body | string | Группа объекта. Возможные значения:
|
subject_id | body | string | Идентификатор субъекта задачи. |
Пример результата в JSON формате:
{
"author_name": "admin",
"begin_date": "2018-12-05",
"begin_time": "16:30:00",
"created_at": "2018-12-05T13:29:07.186864Z",
"deleted": false,
"description": "xz",
"id": 9,
"last_run_message": "",
"last_run_result": "",
"periodic_task": {
"args": "[]",
"crontab": {
"day_of_month": "*",
"day_of_week": "*",
"hour": "0",
"minute": "0",
"month_of_year": "*"
},
"date_changed": "2018-12-05T13:29:07.223478Z",
"description": "",
"enabled": true,
"exchange": null,
"expires": "2018-12-20T23:59:59Z",
"id": 10,
"interval": null,
"kwargs": "{\"user_domain_name\": \"default\", \"object_id\": \"19c06232-ee43-4e75-b4c9-3575bb17d753\", \"timetable_id\": \"9\", \"object_name\": \"test\", \"repeatable\": false, \"trust_id\": \"1891d3254e0f4a7e9e527cca3dc26235\", \"periodic_task_uuid_name\": \"d03fe52b-4af5-44a9-8738-b9f30e54d079\", \"user_name\": \"admin\", \"tenant\": \"db0d89f6c40c46b4a6879ee1b1a1d907\"}",
"last_run_at": null,
"name": "d03fe52b-4af5-44a9-8738-b9f30e54d079",
"next_run_time": "2018-12-06T00:00:00.999148",
"queue": null,
"routing_key": null,
"task": "tionix_node_control.scheduler_tasks.server_suspend.server_suspend",
"total_run_count": 0
},
"repeat": false,
"run_count_limit": null,
"subject": "test",
"subject_group": "project",
"subject_id": "19c06232-ee43-4e75-b4c9-3575bb17d753",
"subject_type": "instance",
"tenant_id": "db0d89f6c40c46b4a6879ee1b1a1d907",
"timetable_id": 9,
"timezone": "UTC",
"unique_name": "server_suspend"
}
Запрос¶
Параметры запроса:¶
Name | In | Type | Description |
---|---|---|---|
offset (Optional) | query | string | Номер позиции для получения данных. |
limit (Optional) | query | string | Ограничение количества получаемых данных. |
tenant_id | body | string | Идентификатор проекта. |
timetable_id | query | string | Идентификатор задачи. |
Пример запроса:¶
Любые из атрибутов задачи, кроме crontab
curl -X PATCH -H "X-Auth-Token: $token" -H "Content-Type: application/json" -d '{"unique_name":"server_suspend", "subject_type":"instance", "subject_group":"project", "begin_date":"2018-12-05", "description":"new description", "key_arguments":"{\"user_domain_name\": \"default\", \"user_name\": \"admin\", \"user_password\": \"password\", \"tenant\": \"db0d89f6c40c46b4a6879ee1b1a1d907\"}", "subject_id":"19c06232-ee43-4e75-b4c9-3575bb17d753", "expires":"2018-12-20 23:59:59", "author_name":"admin", "ending":"2018-12-20", "repeat":"False", "begin_time":"16:30:00", "timezone":"UTC", "tenant_id":"db0d89f6c40c46b4a6879ee1b1a1d907", "author_name":"admin", "subject":"test"}' http://controller:10001/timetable/9/ | python -m json.tool
Ответ¶
Параметры ответа:¶
Name | In | Type | Description |
---|---|---|---|
author_name | body | string | Пользователь, создавший задачу. |
begin_date | body | string | Дата начала выполнения задачи. |
begin_time | body | string | Время начала выполнения задачи. |
created_at | body | string | Дата и время создания. |
description | body | string | Название задачи. |
timetable_id | query | string | Идентификатор задачи. |
password | body | string | Пароль пользователя, создавшего задачу. |
periodic_task | body | object | Свойства периодичности. |
crontab (Optional) | body | string | Настройки cron. Пример: "crontab":{"month_of_year": "5", "day_of_week": "*", "hour": "10", "minute": "35", "day_of_month": "17"} . |
day_of_month | body | string | День месяца. |
day_of_week | body | string | День недели. |
hour | body | string | Час. |
task_id | body | integer | Идентификатор запуска периодической задачи. |
minute | body | string | Минута. |
month_of_year | body | string | Месяц. |
date_changed | body | string | Дата и время изменения. |
description | body | string | Название задачи. |
enabled | body | bool | Флаг, показывающий, активна ли задача. |
exchange (Optional) | body | string | Изменение. |
expires | body | string | Время действия запланированной задачи. |
id | body | integer | Идентификатор. |
kwargs | body | string | Дополнительные аргументы. |
last_run_at (Optional) | body | string | Дата и время последнего запуска задачи. |
name (Optional) | query | string | Фильтрация по описанию задачи. |
queue (Optional) | body | string | Очередь задач. |
routing_key (Optional) | body | string | Ключ маршрутизации. |
task | body | string | Имя задачи. |
total_run_count | body | integer | Общее количество запусков задачи. |
repeat | body | string | Флаг, указывающий на то, является ли задача периодической. |
subject | body | string | Наименование субъекта задачи. |
subject_id | body | string | Идентификатор субъекта задачи. |
subject_type | body | string | Тип объекта. Возможные значения:
|
subject_group | body | string | Группа объекта. Возможные значения:
|
tenant_id | body | string | Идентификатор проекта. |
timezone | body | string | Часовой пояс. |
unique_name | body | string | Наименование действия. |
Пример результата в JSON формате:
HTTP 200 OK
Content-Type: application/json
{
"author_name": "admin",
"begin_date": "2018-12-05",
"begin_time": "16:30:00",
"created_at": "2018-12-05T13:29:07.186864Z",
"deleted": false,
"description": "new description",
"id": 9,
"last_run_message": "",
"last_run_result": "",
"periodic_task": {
"args": "[]",
"crontab": {
"day_of_month": "*",
"day_of_week": "*",
"hour": "0",
"minute": "0",
"month_of_year": "*"
},
"date_changed": "2018-12-05T13:29:07.223478Z",
"description": "",
"enabled": true,
"exchange": null,
"expires": "2018-12-20T23:59:59Z",
"id": 10,
"interval": null,
"kwargs": "{\"user_domain_name\": \"default\", \"object_id\": \"19c06232-ee43-4e75-b4c9-3575bb17d753\", \"timetable_id\": \"9\", \"object_name\": \"test\", \"repeatable\": false, \"trust_id\": \"1891d3254e0f4a7e9e527cca3dc26235\", \"periodic_task_uuid_name\": \"d03fe52b-4af5-44a9-8738-b9f30e54d079\", \"user_name\": \"admin\", \"tenant\": \"db0d89f6c40c46b4a6879ee1b1a1d907\"}",
"last_run_at": null,
"name": "d03fe52b-4af5-44a9-8738-b9f30e54d079",
"next_run_time": "2018-12-06T00:00:00.999148",
"queue": null,
"routing_key": null,
"task": "tionix_node_control.scheduler_tasks.server_suspend.server_suspend",
"total_run_count": 0
},
"repeat": false,
"run_count_limit": null,
"subject": "test",
"subject_group": "project",
"subject_id": "19c06232-ee43-4e75-b4c9-3575bb17d753",
"subject_type": "instance",
"tenant_id": "db0d89f6c40c46b4a6879ee1b1a1d907",
"timetable_id": 9,
"timezone": "UTC",
"unique_name": "server_suspend"
}
Запрос¶
Параметры запроса:¶
Name | In | Type | Description |
---|---|---|---|
offset (Optional) | query | string | Номер позиции для получения данных. |
limit (Optional) | query | string | Ограничение количества получаемых данных. |
tenant_id | body | string | Идентификатор проекта. |
timetable_id | query | string | Идентификатор задачи. |
Пример запроса:¶
Любые из атрибутов задачи, включая crontab
curl -X PUT -H "X-Auth-Token: $token" -H "Content-Type: application/json" -d '{"unique_name":"server_suspend", "subject_type":"instance", "subject_group":"project", "begin_date":"2018-12-05", "description":"xz", "key_arguments":"{\"user_domain_name\": \"default\", \"user_name\": \"admin\", \"user_password\": \"password\", \"tenant\": \"db0d89f6c40c46b4a6879ee1b1a1d907\"}", "subject_id":"19c06232-ee43-4e75-b4c9-3575bb17d753", "expires":"2018-12-20 23:59:59", "author_name":"admin", "ending":"2018-12-20", "repeat":"False", "crontab": {"day_of_month":"*", "minute":"0", "hour":"0", "day_of_week":"*", "month_of_year":"*" }, "begin_time":"16:30:00", "timezone":"UTC", "tenant_id":"db0d89f6c40c46b4a6879ee1b1a1d907", "author_name":"admin", "subject":"test"}' http://controller:10001/timetable/ | python -m json.tool
Ответ¶
Параметры ответа:¶
Name | In | Type | Description |
---|---|---|---|
timetable_id | query | string | Идентификатор задачи. |
author_name | body | string | Пользователь, создавший задачу. |
tenant_id | body | string | Идентификатор проекта. |
description | body | string | Название задачи. |
unique_name | body | string | Наименование действия. |
repeat | body | string | Флаг, указывающий на то, является ли задача периодической. |
run_count_limit (Optional) | body | string | Максимальное количество повторений. |
subject | body | string | Наименование субъекта задачи. |
begin_date | body | string | Дата начала выполнения задачи. |
begin_time | body | string | Время начала выполнения задачи. |
timezone | body | string | Часовой пояс. |
created_at | body | string | Дата и время создания. |
periodic_task | body | object | Свойства периодичности. |
task_id | body | integer | Идентификатор запуска периодической задачи. |
name (Optional) | query | string | Фильтрация по описанию задачи. |
task | body | string | Имя задачи. |
args | body | string | Дополнительные аргументы. |
kwargs | body | string | Дополнительные аргументы. |
queue (Optional) | body | string | Очередь задач. |
exchange (Optional) | body | string | Изменение. |
routing_key (Optional) | body | string | Ключ маршрутизации. |
expires | body | string | Время действия запланированной задачи. |
enabled | body | bool | Флаг, показывающий, активна ли задача. |
last_run_at (Optional) | body | string | Дата и время последнего запуска задачи. |
total_run_count | body | integer | Общее количество запусков задачи. |
date_changed | body | string | Дата и время изменения. |
description | body | string | Название задачи. |
crontab (Optional) | body | string | Настройки cron. Пример: "crontab":{"month_of_year": "5", "day_of_week": "*", "hour": "10", "minute": "35", "day_of_month": "17"} . |
id | body | integer | Идентификатор. |
minute | body | string | Минута. |
hour | body | string | Час. |
day_of_week | body | string | День недели. |
day_of_month | body | string | День месяца. |
month_of_year | body | string | Месяц. |
subject_type | body | string | Тип объекта. Возможные значения:
|
subject_group | body | string | Группа объекта. Возможные значения:
|
subject_id | body | string | Идентификатор субъекта задачи. |
Пример результата в JSON формате:
HTTP 200 OK
Content-Type: application/json
{
"author_name": "admin",
"begin_date": "2018-12-05",
"begin_time": "16:30:00",
"created_at": "2018-12-05T13:29:07.186864Z",
"deleted": false,
"description": "xz",
"id": 9,
"last_run_message": "",
"last_run_result": "",
"periodic_task": {
"args": "[]",
"crontab": {
"day_of_month": "*",
"day_of_week": "*",
"hour": "0",
"minute": "0",
"month_of_year": "*"
},
"date_changed": "2018-12-05T13:29:07.223478Z",
"description": "",
"enabled": true,
"exchange": null,
"expires": "2018-12-20T23:59:59Z",
"id": 10,
"interval": null,
"kwargs": "{\"user_domain_name\": \"default\", \"object_id\": \"19c06232-ee43-4e75-b4c9-3575bb17d753\", \"timetable_id\": \"9\", \"object_name\": \"test\", \"repeatable\": false, \"trust_id\": \"1891d3254e0f4a7e9e527cca3dc26235\", \"periodic_task_uuid_name\": \"d03fe52b-4af5-44a9-8738-b9f30e54d079\", \"user_name\": \"admin\", \"tenant\": \"db0d89f6c40c46b4a6879ee1b1a1d907\"}",
"last_run_at": null,
"name": "d03fe52b-4af5-44a9-8738-b9f30e54d079",
"next_run_time": "2018-12-06T00:00:00.999148",
"queue": null,
"routing_key": null,
"task": "tionix_node_control.scheduler_tasks.server_suspend.server_suspend",
"total_run_count": 0
},
"repeat": false,
"run_count_limit": null,
"subject": "test",
"subject_group": "project",
"subject_id": "19c06232-ee43-4e75-b4c9-3575bb17d753",
"subject_type": "instance",
"tenant_id": "db0d89f6c40c46b4a6879ee1b1a1d907",
"timetable_id": 9,
"timezone": "UTC",
"unique_name": "server_suspend"
}
Удаление конкретной задачи.
Запрос¶
Параметры запроса:¶
Name | In | Type | Description |
---|---|---|---|
offset (Optional) | query | string | Номер позиции для получения данных. |
limit (Optional) | query | string | Ограничение количества получаемых данных. |
timetable_id | query | string | Идентификатор задачи. |
Пример запроса:¶
curl -X DELETE -H "X-Auth-Token: $token" -H "Content-Type: application/json" http://controller:10001/timetable/5/
Эта операция не имеет содержания ответа.
Запрос¶
Name | In | Type | Description |
---|---|---|---|
subject_type | path | string | Тип объекта. Возможные значения:
|
subject_id | path | string | Идентификатор объекта задачи. Аргумент запроса, необходимый для дополнительной валидации. |
Пример запроса:¶
curl -X DELETE -H "X-Auth-Token: $token" "http://controller:10001/timetable/tasks_monitoring/?subject_type=instance&subject_id=19c06232-ee43-4e75-b4c9-3575bb17d753"
Эта операция не имеет содержания ответа.