Commit Graph

25 Commits (341a67d3d4f0fc5f7baf318383139b349f442f94)

Author SHA1 Message Date
Memo García 341a67d3d4 Fix typo in keystone v3 creation dict
There is a misconfigured parameters when freezer client tries to create a
keystone instance for version 3 using tokens in which project_name and
project_domain_name are expecting values that does not exists

Closes-bug: 1543156

Change-Id: Ic1baea868e8b7d64fd3cb803e0637225a4a82d46
2016-02-08 14:53:30 +00:00
eldar nugaev 30dc62614f Command for changing logging level.
And pep8 fixing
(suddenly this pull request was rejected by jenkins and pep8.
so this commit also contains some small style changes for pep8.)

Currently the default value for logging is INFO and it is hardcoded.
Additional command will be helpful for debug/development process.

Implements blueprint: logging-level-cli

Change-Id: I1105e3da277e2a948f3ff50b04751169eddf26ed
2016-01-13 16:46:17 +00:00
Memo García b3161b0f39 Add default namespace to apiclient
When a client is created from other method rather than command line arguments,
it skips the commandline arguments and by doing this a Namespace is not created,
this commit fix that by creating a default Namespace when the value of self.opts is None

Resolves bug: 1532205

Change-Id: I7a01715c675756e0ce66111939b71a2761b0657a
2016-01-08 15:16:24 +00:00
Saad Zaher 940f9c962f Switch freezer-scheduler to oslo.config and oslo.log
switch freezer-scheduler to use oslo.config and
switch from native python logging module to oslo.log
This commit includes:
- using oslo.config for parsing cli and config files options
- using oslo.log instead of native python logging module
- this applied only on freezer-scheduler
Implements: blueprint using-oslo-libs

Change-Id: I92e99c087cb2c2f836770644621f711af597dffc
2015-12-10 12:49:58 +00:00
memo d950bab933 Initialize freezer-scheduler with insecure mode for keystone v3
Add verify and insecure flags for freezer scheduler and apiclient in order to handle
insecure connections when keystone and freezer-api are available through https
Add support for keystone v2 and v3 in the windows scheduler
Add explicit parameters to apiclient for v3 connections

Change-Id: Ib950c85e3d8d2b192ec7ba60e4fe5641202d2960
2015-11-28 18:50:02 +00:00
memo bd93113b9a Updated LICENSE file and headers
removed unnecesary header in license
added missing header in files

Change-Id: Iea79505307479541de01231dd25c3821e9e8997c
2015-11-09 16:13:56 +00:00
Saad Zaher bfb9ccd99e Fix error message if no credentials are provided
Provide meaningful error message from the scheduler
If no OpenStack credentials are provided.

Change-Id: I315a4252dc8259f6765f0a764d58fd106cd409e7
Closes-Bug: #1501384
2015-10-02 14:59:20 +00:00
Jenkins 25fcd746fb Merge "job event requests use specific api endpoint" 2015-09-09 17:45:31 +00:00
Jenkins e5dbdc934b Merge "Select endpoint type of freezer api service" 2015-09-09 17:45:00 +00:00
memo 7d5792cfe0 Default namespace for args options
added default namespace when the client is initialize from another project

Change-Id: Iafcce51720788a17573461c8fff3a21a0e8f5bb0
2015-09-01 16:48:19 +01:00
Fabrizio Vanni 0a1b5421dd Select endpoint type of freezer api service
This adds the ability to select the type of api endpoint

Adds the following command lint option to the freezer-scheduler

  --os-endpoint-type <endpoint-type>

Implements blueprint: scheduler-endpoint-type

Change-Id: Id0432f1e97165c1d4aca017562b7bcdab3595c50
2015-08-31 12:26:43 +01:00
Fabrizio Vanni 8641ac8da5 job event requests use specific api endpoint
Requests of job event are executed using the
api endpoint

  jobs/{job_id}/event

Event are not requested anymore modifying the job document
directly

Change-Id: Ib8c144c7e86d13a6e34ab7a20193051485d969e1
2015-08-27 09:31:26 +00:00
Jenkins f9b3146a13 Merge "apiclient support for keystone v2.0 and v3" 2015-08-21 15:36:31 +00:00
Fausto Marzi d1af253d09 Updating HP Copyright label
Change-Id: Ie468e9d2e0853a77043342251b814784a839efb9
2015-08-21 14:19:39 +01:00
Fabrizio Vanni e04f7cc41e apiclient support for keystone v2.0 and v3
The apiclient now supports authentication using keystone versions 2.0 and 3

Authentication methods can be password or token.

Implements blueprint apiclient-keystone-v3-support

Change-Id: Ie09886e8f07aeb0a54fdf6f802bdd7fbf33aa253
2015-08-14 18:21:13 +01:00
Fabrizio Vanni 58988fc3e3 freezer scheduler
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
2015-07-10 18:51:17 +01:00
Fabrizio Vanni 5d75e3c789 Add api support for jobs
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
2015-06-21 18:13:54 +00:00
Jonas Pfannschmidt 2f690e1ac5 This version contains the following pages:
- 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
2015-05-31 17:01:57 +01:00
Jonas Pfannschmidt 40430ca3e9 Added parameters to the "list-backups" python api
Added the following parameters: limit, offset,
search (can contain: time_before, time_after)

Change-Id: If43ac22b580ae387d85a4dc024a259ca2634a856
2015-05-20 20:06:01 +00:00
Fabrizio Vanni 1d08dc72c6 freezer api support for action
Adds an endpoint to the api for managing actions

Change-Id: I8a84ea4aa46a7acaecb103aa20f3dc8acd128d0c
2015-05-13 19:05:25 +01:00
Fabrizio Vanni 4565febd97 Add tests for client registration
Fix missing tests for client registration

Change-Id: Ic74038fc15c22ab81dd77547be4048033c131623
2015-05-06 14:29:17 +01:00
Fabrizio Vanni 0fb98abd05 freezer api support for client registration
Adds an endpoint to the api for the registration of freezer clients

Change-Id: I1ca2a5e0021d383df70dfd001ab12967714c35bc
Implements: blueprint freezerclient-registration
2015-04-30 14:07:19 +01:00
Fabrizio Vanni 1e101ddf1a client retrieval of freezer api endpoint
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
2015-04-27 11:16:47 +01:00
Jonas Pfannschmidt 2d1323f51f Fixed references to freezerclient which is now apiclient
Change-Id: I917de9146edd7e77536334fb8179eba73387dcb9
2015-04-14 17:57:38 +01:00
Fabrizio Vanni 955e970963 Freezer API
First implementation of the freezer API.
Slightly more than a skeleton with basic functionality

Change-Id: Iae04affea3aa0f4a943599b528df49d9d4a5b845
Implements: blueprint freezer-api-first-rel
2015-04-08 18:25:45 +01:00