The freezer scheduler is to be executed
as daemon process on the client machines
It has the following responsibilities:
* when using the api:
- register -if necessary- as a client in the api
- download the list of jobs from the api
- schedule the jobs for execution
- launch the freezer client at the scheduled time
- collect metadata and exit codes and upload them to the api
- periodically poll the api for new/updated jobs
- if a job is part of a session (a coordinated group of jobs)
it updates the session status when job starts/stops
* when not using the api
- load jobs configurations from files
- schedule the jobs for execution
- launch the freezer client at the scheduled time
The freezer scheduler can also be used to manage jobs
and sessions using the following positional parameters:
job-list
job-get
job-create
job-delete
job-start
job-stop
session-list
session-get
session-create
session-delete
session-list-job
session-add-job
session-remove-job
or to register the client in the api using the positional parameter:
register
Implements blueprint: freezer-scheduler-start
Change-Id: I06ae202a0f464f7240c137744a5b54d1177cabd9
removes distinction between actions and configs in the api
The v1/jobs endpoint is the single point of access to the api
to store, search and retrieve operating instruction about
a single freezer run.
optional scheduling informations can be added to a job to
allow for future/recurrent job execution.
removes api endpoints
- v1/actions
- v1/configs
adds api endpoints:
- v1/jobs
Implements blueprint: freezer-api-jobs
Change-Id: Ideeef14dfccd21ddd10b4faa438124c04d2e1ff8
- Overview displays charts/reports (Currently only placeholders)
- Configurations allows to define new backup configurations and link them to
instances
- Backups shows a list of all succesful backups and allows to restore them
- Restores shows a history of all restored backups
It communicates with the api server via the client apis (freeezer.client.client).
The "glue code" between client apis and the UI lives in freezer.api.api.
Implements: Blueprint freezer-api-web-ui
Change-Id: I48cd8cba2b0169c6e64f650233c1a31b91ced34f
Adds an endpoint to the api for the registration of freezer clients
Change-Id: I1ca2a5e0021d383df70dfd001ab12967714c35bc
Implements: blueprint freezerclient-registration
The api client queries keystone to obtain the freezer api endpoint,
provided that the freezer api service and endpoint have been registered in
keystone.
An optional parameter to specify the api endpoint is supported
Change-Id: I6626a60d1fd5d18a59376165e94c789832865ae0
Implements: blueprint freezer-apiclient-endpoint
First implementation of the freezer API.
Slightly more than a skeleton with basic functionality
Change-Id: Iae04affea3aa0f4a943599b528df49d9d4a5b845
Implements: blueprint freezer-api-first-rel