diff --git a/docs/getting_started/task_trigger_schedule.md b/docs/getting_started/task_trigger_schedule.md new file mode 100644 index 00000000..f1822e22 --- /dev/null +++ b/docs/getting_started/task_trigger_schedule.md @@ -0,0 +1,41 @@ +--- +title: Scheduling and Triggering Task Execution +--- + + In ClearML, tasks can be scheduled and triggered automatically, enabling seamless workflow automation. This section + provides an overview of the mechanisms available for managing task scheduling and event-based + triggering. + +## Task Scheduling +Task scheduling allows users to define one-shot or periodic executions at specified times and intervals. This +is useful for: + +* Running routine operations such as periodic model training, evaluation jobs, backups, and reports. +* Automating data ingestion and preprocessing workflows. +* Ensuring regular execution of monitoring and reporting tasks. + +ClearML's offers the following scheduling solutions: +* [**UI Application**](../webapp/applications/apps_task_scheduler.md) (available under the Enterprise Plan) - The **Task Scheduler** app + provides a simple no-code interface for managing task schedules. + +* [**Python Interface**](../references/sdk/scheduler.md) - Use the `TaskScheduler` class to programmatically manage + task schedules. + +## Task Execution Triggering + +ClearML's trigger manager enables you to automate task execution based on event occurence in the ClearML system, such as: +* Changes in task status (e.g. running, completed, etc.) +* Publication, archiving, or tagging of tasks, models, or datasets +* Task metrics crossing predefined thresholds + +This is useful for: +* Triggering a training task when a dataset has been tagged as `latest` or any other tag +* Running an inference task when a model has been published +* Retraining a model when accuracy falls below a certain threshold +* And more + +ClearML's offers the following trigger management solutions: +* [**UI Application**](../webapp/applications/apps_trigger_manager.md) (available under the Enterprise Plan) - The **Trigger Manager** app + provides a simple no-code interface for managing task triggers . +* [**Python Interface**](../references/sdk/trigger.md) - Use the `TriggerScheduler` class to programmatically manage + task triggers. diff --git a/sidebars.js b/sidebars.js index bbc4f709..d1cdbb7f 100644 --- a/sidebars.js +++ b/sidebars.js @@ -95,10 +95,7 @@ module.exports = { {type: 'ref', id: 'webapp/applications/apps_gradio'}, {type: 'ref', id: 'webapp/applications/apps_streamlit'}, ]}, - {"Automating Task Execution": [ - {type: 'ref', id: 'webapp/applications/apps_task_scheduler'}, - {type: 'ref', id: 'webapp/applications/apps_trigger_manager'}, - ]}, + 'getting_started/task_trigger_schedule', 'getting_started/project_progress', ], integrationsSidebar: [ diff --git a/src/css/custom.css b/src/css/custom.css index 67fa2cf0..160fad9e 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -46,7 +46,7 @@ html { --ifm-code-padding-vertical: 0.2rem; } -html[data-theme="dark"] { +[data-theme=dark]:root { --ifm-background-color: #040506; /* body bg */ --ifm-header-background-color: #101418; /* section 1 */ --ifm-footer-background-color: #101418; /* section 1 */ @@ -54,12 +54,16 @@ html[data-theme="dark"] { --ifm-footer-link-hover-color: #ffffff; /* specific footer link hover color */ --ifm-dropdown-background-color: #242D37; /* section 2 */ --ifm-table-stripe-background: #101418; /* section 1 */ - --ifm-toc-background-color: #242D37; /* section 2 */ --ifm-link-color: #6AD6C0; /* specific link color */ --ifm-link-hover-color: #AEFDED; /* specific link hover color */ - --ifm-font-color-base: #E5E5E5 /* body text */ + --ifm-font-color-base: #E5E5E5; /* body text */ + --ifm-hr-background-color: #242D37; /* section 1 */ + --ifm-toc-link-color: #E5E5E5; /* body text */ + --ifm-toc-background-color: #242D37; /* section 2 */ + --ifm-code-background: #242D37; /* section 2 */ } + @media (min-width: 1400px) { /* Expand sidebar width above 1400px */ html[data-theme="light"], @@ -468,7 +472,6 @@ html[data-theme="light"] .table-of-contents { box-shadow: 0 0 0 2px rgba(0,0,0,0.1) inset; } html[data-theme="dark"] .table-of-contents { - background-color: var(--ifm-toc-background-color); box-shadow: 0 0 0 2px rgba(0,0,0,0.4) inset; } html[data-theme="dark"] a.table-of-contents__link--active { @@ -492,9 +495,6 @@ a.table-of-contents__link--active:before { border-left: 6px solid var(--ifm-color-primary); transform: translateY(5px); } -html[data-theme="light"] .table-of-contents__link:not(.table-of-contents__link--active) { - color: rgba(0,0,0,0.9); -} /* toc: show "..." inside code tag */ .table-of-contents code { @@ -785,16 +785,6 @@ html[data-theme="dark"] h4 a.hash-link { } - -/*
*/ -.markdown hr { - border-bottom: none; -} -html[data-theme="dark"] .markdown hr { - border-color: rgba(255,255,255,0.1); -} - - /* admonition */ .admonition { overflow: hidden;