Commit Graph

38 Commits

Author SHA1 Message Date
OpenStack Proposal Bot fb8357ef56 Updated from global requirements
Change-Id: Ie8ac09d34f6c80ce8c7fa5c4663f8282c3f20024
2017-06-08 16:16:50 +00:00
lingyongxu 083cdbc779 Optimize the link address
Use https instead of http to ensure the safety

Change-Id: I5a3b5e69a20675fca8fa97dc94298b37d35bcfc4
2017-06-08 09:59:20 +08:00
OpenStack Proposal Bot 6772bdbd3b Updated from global requirements
Change-Id: I9e3198bc843886f267dbb39b8d1dc4c7be4894df
2017-03-03 22:48:35 +00:00
OpenStack Proposal Bot fd5d6ba3e9 Updated from global requirements
Change-Id: I6d4f957c0a7dd4f7f37ac247dc565199dbd72838
2016-03-28 19:26:34 +00:00
Pierre-Arthur MATHIEU 31ccabd02d Updated requirements to match Liberty's one
Change-Id: I7b7c9dfab8be553a789fb3c5f204b08d1dcc2df6
2015-11-18 13:58:41 +00:00
Fausto Marzi 097c74fb88 PBR version needs to be explicitly set on setup.py
For some reason PBR does not install dependencies if
the PBR version is not set in setup.py

Change-Id: I1edbe46a88b0592b34fe49e38fcdd8a6c85bfd4d
2015-11-06 19:32:44 +00:00
Fausto Marzi 94e1c6ea4a Improved freezerc and freezer-agent script management
With this patch the scripts are generated by automatically
only from setuptools. The /bin/freezerc script is removed
and the content is incorporated in freezer.main

This patch should make more portable freezer on
win32 platform.

Unfortunately in order to support win32 platforms
we need to use a version of PBR >= 1.0.0,
to support env markers. Now requirements.txt reflects that

Change-Id: I31a4a13711f8c042072e3cc8785078fdbb971cb7
2015-10-29 14:35:55 +00:00
Fausto Marzi 341584f038 Fixed bug on requierments and deps
For some reason PBR wasn't installing the
packages listed in requirements.txt. By adding
explicitly the pbr version in setup.py and
adding setuptools requirements the issue is fixed.

Change-Id: Iccb66ae20a7108fe7f359ae656ed11c4e5d6f7a0
2015-10-29 14:27:12 +00:00
Fausto Marzi 0daf5887eb Switching to PBR in freezer
Freezer now uses pbr so to be aligned to the other
openstack projects.

Implements blueprint: switch-to-pbr

Change-Id: I67ffe7cf23b857f7d81420586361dcd708f0fc21
2015-10-16 16:46:18 +01:00
Saad Zaher 959f042726 Throttling bandwidth on Linux for HTTPS
using trickle to limit bandwidth on linux by allowing freezer agent
to run a fork of itself through trickle and passing limit parameters
(upload-limit, download-limit) to trickle and remove it from
freezer agent.

Closes-Bug: #1466858

Change-Id: I0c3ac2e4085389dc71c8e242c84fefe7aea3c8a5
2015-09-24 16:30:49 +01:00
Fausto Marzi f7841f840c Fixed deps in setup.py and a bug in tests
Currently the deps of oslo.i18n wasn't aligned with
Kilo global-requirements.

Now tests are not execute by runtests.py but tox
call directly py.test, as there was a bug in the exec
of runtests.py. This is a temporary solution as
testr will be used soon as testing framework

Close bug: 1498078

Change-Id: I07daddb14ab75fe089c98c8e00c24ecb550ada82
2015-09-22 12:04:37 +01:00
Fausto Marzi 6753e03e1b ~/.freezer work_dir created automatically
Now the ~/.freezer work_dir is created automatically it
it does not exists. The patch work on both Windows and Linux.

Close bug: 1480676

Change-Id: I2fabbe7c4c018417853192ffce6977f20dbf6229
2015-08-14 13:24:53 +01:00
Jenkins bd81c12e0a Merge "add option to choose compression algorithm with choose between gzip, bzip2 and xz" 2015-08-12 14:18:54 +00:00
Memo Garcia 309e6e1e81 add option to choose compression algorithm with choose between gzip, bzip2 and xz
xz.exe with sources added for windows

Implements: blueprint compression-options

Change-Id: I62d7b0c696556c68ab7bab5cd00689f0ba731b9e
2015-08-12 15:15:19 +02:00
Memo Garcia 5a312c83df Fix for duplicate dependencies.
remove duplicate python-swiftclient from setup.py

Change-Id: I5d605f32f5457843bbdab67b42db0437c40ecb76
2015-08-11 13:44:58 +01:00
Fausto Marzi 2dca233d0c Align pymongo version with global requirements
Change-Id: I956c695e563700bd282686921693272c45290740
2015-08-05 10:16:22 +01:00
Erno Kuvaja 403a76ccd3 Align requirements with global-requirements
Setting requirements to mins and caps aligned with global requirements
on packages where it's possible.
Commenting the ones that does not align.

Change-Id: Iba37d120c980ba849f79851fcbfc005651ed600d
2015-08-05 08:14:31 +00:00
eldar nugaev 96a14d4dfe SSH Storage
In order to give flexibility Freezer needs to be able
to store data to a remote file system host using ssh/scp
instead instead of Swift.

Change-Id: Ia6a790e3e3b6bb9e4e36d457ba0b72c114f8a895
Implements: blueprint ssh-media
2015-07-30 14:37:04 +01:00
Fabrizio Vanni d4b9399e9b 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
eldar nugaev 465683e609 Implementation of Cinder backup compatible mode
Implements blueprint: cinder-backup-compatible-mode

Change-Id: I2b388dd40b8605cbf488d9c7976d8a9c12b144de
2015-06-17 16:08:44 +01:00
Fausto Marzi eaf8d10599 Added pylint checks. Fixed import error during python-novaclient import.
Finally pylint checks are executed now during the build.
Currently, as pylint is just enabled, checks for
Warnings, Refactor, Convention are disabled.

Closes bug: 1465063

Change-Id: I1a5447d7a7c2ec717e21aae67d26b0586edad7a5
2015-06-14 21:22:21 +00:00
eldar nugaev 4a863ca7f3 Implementation of nova instance backups
Implements blueprint: nova-vm-backup

Change-Id: I37d93af8567afa2dcc4f96fd5bf4d4ef202b38e2
2015-06-05 12:52:29 +00:00
eldar nugaev 79e5c3cb18 Data consistent way of making cinder backups
fs_backup_mode now checks volume_id parameter in conf.
If we have volume_id - we execute cinder backup instead of tar or lvm backup.
As far as mongo_mode, mysql_mode, sql_server_mode are using fs_backup_mode
it will be execute cinder backup in case of provided volume_id parameter,
 otherwise it will execute lvm or tar backup.

Implements blueprint: cinder-backup-mode

Change-Id: I7e70d3a0888cafee87232ab28c8fea48788e5de4
2015-05-22 09:57:09 +00:00
Memo Garcia 75b5a6aa5a Windows backup and restore incrementals
Add windows incremental support for backup and restore

Change-Id: I49a6b611f52a5d3a1950bd3f6f49cdb4a59354af
Implements: blueprint windows-backup-and-restore-incrementals
2015-04-14 16:22:33 +01:00
Memo Garcia 2be468138f Windows support for freezer
Backups for SQL Server, MySQL, MongoDB and filesystem on windows using
shadow copies (vssadmin), tar compression and encryption using openssl and tar..

Change-Id: I1f68e012f28891c19e4d94352511ec968382c8e2
Implements: blueprint add-windows-support-for-backup-and-restore
2015-04-13 10:06:46 +01:00
Fabrizio Vanni e4238272c5 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
Zahari Zahariev 000d002f46 Remove pyrsync dependency
BUG: https://bugs.launchpad.net/freezer/+bug/1430865
Change-Id: I0685c21069cfc53da742e8b724a53907dbc0c3fb
2015-03-11 15:51:27 +00:00
Fausto Marzi 5c060a9185 Fixed bug 1415865 for old backup removal
Old backups are correctly removed, provided that
no not-to-be-removed backup depends upon them.

Incremental backups correctly start from level 0 when
there is no tar_metadata available for the last backup

Command line option --no-incremental is now incompatible
with --max-level and with --always-level

Add the following command which allows to specify
a datetime for old backup removal.

  --remove-from-date YYYY-MM-DDThh:mm:ss

Closes-Bug: #1415865
Change-Id: Ie779ee354b67e9a1a012d28801b17dbd5cd353b6
LAUNCHPAD: https://bugs.launchpad.net/freezer/+bug/1415865
2015-02-24 11:58:52 +00:00
Daniel Mellado 192cd9dd75 Updated setup.py to add proper pyrsync installation
The PyPI installer for pyrsync was broken, so in order to assure a proper
install a workaround to fetch it from GitHub has been added. Updated tox.ini
file

Change-Id: Ib08dd822e04177a852d5f8846d10865e2e9417f8
2015-02-04 17:28:20 +00:00
Zahari Zahariev ea13fd33f7 Use Python module MyMySQL instead of MySQLdb
There are issues porting to Windows when MySQLdb
C files have to be compiled. New library is
100% Python and 100% compatible.

LAUNCHPAD: https://blueprints.launchpad.net/freezer/+spec/windows-testing

Change-Id: Ic863bd231eaca5a891df61741df5e2ba6433ba4e
2015-01-29 16:41:21 +00:00
Fausto Marzi 47247f5702 Added unittest for tar.py
Now a basic unittest for tar.py
is available under tests/test_tar.py.
While writing unittest also one bug was discovered
and fixed.

LAUNCHPAD: https://blueprints.launchpad.net/freezer/+spec/unittest-tar

Change-Id: Ic8041b351d052253457a4e2720691e52f41eaf35
2015-01-11 16:23:25 +00:00
Fausto Marzi 0f725a0083 Fixed bug in setup.py and remove test auth file in mysql test
BUG: https://bugs.launchpad.net/freezer/+bug/1402218

Change-Id: I561ae49c9f2065fe5d97e1dc12ed41626e195a7e
2014-12-13 17:39:21 +00:00
Fausto Marzi ce996d5bac Unittest for backup.py with coverage >= 90%
More Unittest needs to be implemented in Freezer.
The total coverage have to be at least 90%.
This commit is for freezer.backup unittest.

setup.py and tests directory re organized
according pytest best practices.

Change-Id: I61aa1b58d9501b81fda37dd785add27ba86d01c9
LAUNCHPAD: https://blueprints.launchpad.net/freezer/+spec/test-backup.py
2014-11-16 17:31:01 +00:00
Fausto Marzi bde16cbeb1 Containers created by Freezer will have freezer_ as prefix
The containers used by freezer to executed backups needs to have
freezer_ prefix in the name. If the user provider container doesn't
have the prefix, it is automatically added also to the container
segments name. This is done to quickly identify the containers

Added --path-to-backup to the existing ones (-F, --file-to-backup)
as can be more intuitive for the user

Bumped version to: 1.1.0 as 1.0.9-2 is now tagged in upstream

Change-Id: I891391ea07f75b5dcdc43d9b1d65a75837065f30
LAUNCHPAD: https://blueprints.launchpad.net/freezer/+spec/freezer-containers
2014-11-04 18:30:11 +00:00
Fausto Marzi a092ae0bc8 Fixed a bug in multi level restore and added new --action arg
- Fixed an issue when restoring multi level backup with queues
- Added th new option --action {backup, restore, info, admin}
- Extended examples in README and other minors log msg changes
- Changed homepage to github in setup.py

Change-Id: I5fa13971a3134d7f001dc3ce5aeabbc95a10626a
2014-11-01 21:32:37 +00:00
Fausto Marzi e46660a040 Added symlink/dereference and modified lvm auto guess options
The following options are added/modified:
- --dereference-symlink {'none', 'soft', 'hard', 'all'}:
    Follow Hard and soft links and archive and dump the files
    they refer to according the choise option set.
- --lvm-auto-snap: now takes as argument the path you want to
  guess for the lvm group and volume name

Also few types where removed. Dependencies are also update,
as now pymongo and mysqldb module needs to be installed

Change-Id: I99b780ff7b34dd85162634855357e1785db0e893
2014-10-14 11:54:55 +01:00
Fausto Marzi 555f8d48b5 Changed .gitreview .gitignore and added tox.ini
- freezer layout and code is now more
    OpenStack oriented
- .gitreview points to review.openstack.org
- few more items are added in .gitignore
- tox.ini is added to be able to succesfully
  py27 and pep8 gate jobs
- Code pep8 style is improved in this commit
- removed HACKING.rst and CHANGES.rst
- Bumped version to 1.0.9

Change-Id: If6dc5f32af83e726bb393017775e068fd2af8c04
2014-08-03 00:13:04 +01:00
Fausto Marzi ef5695c36f Freezer initial commit 2014-07-22 22:46:31 +01:00