Commit Graph

27 Commits (2864edd6d149e18ad4a57cdb4115156d0a64ef5d)
 

Author SHA1 Message Date
Memo García 2864edd6d1 Python freezer client
Split apiclient from freezer-agent repo
Use cliff as a cli for freezer

Implements bp: freezerclient
7 years ago
eldar nugaev d9212240de Fix freezer for py3 compatibility
Change-Id: I03160bf2dba1b67b1daf7c60f4f0182acc2a4d90
7 years ago
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
7 years ago
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
7 years ago
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
8 years ago
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
8 years ago
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
8 years ago
memo bd93113b9a Updated LICENSE file and headers
removed unnecesary header in license
added missing header in files

Change-Id: Iea79505307479541de01231dd25c3821e9e8997c
8 years ago
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
8 years ago
Jenkins 25fcd746fb Merge "job event requests use specific api endpoint" 8 years ago
Jenkins e5dbdc934b Merge "Select endpoint type of freezer api service" 8 years ago
memo 7d5792cfe0 Default namespace for args options
added default namespace when the client is initialize from another project

Change-Id: Iafcce51720788a17573461c8fff3a21a0e8f5bb0
8 years ago
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
8 years ago
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
8 years ago
Jenkins f9b3146a13 Merge "apiclient support for keystone v2.0 and v3" 8 years ago
Fausto Marzi d1af253d09 Updating HP Copyright label
Change-Id: Ie468e9d2e0853a77043342251b814784a839efb9
8 years ago
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
8 years ago
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
8 years ago
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
8 years ago
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
8 years ago
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
8 years ago
Fabrizio Vanni 1d08dc72c6 freezer api support for action
Adds an endpoint to the api for managing actions

Change-Id: I8a84ea4aa46a7acaecb103aa20f3dc8acd128d0c
8 years ago
Fabrizio Vanni 4565febd97 Add tests for client registration
Fix missing tests for client registration

Change-Id: Ic74038fc15c22ab81dd77547be4048033c131623
8 years ago
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
8 years ago
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
8 years ago
Jonas Pfannschmidt 2d1323f51f Fixed references to freezerclient which is now apiclient
Change-Id: I917de9146edd7e77536334fb8179eba73387dcb9
8 years ago
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
8 years ago