When Development environment is under a proxy then tox is failed even if environment variables of the proxy are set.
Change-Id: Ia59a522f9ed9250e7b754eca49af600b381554fd
Because python creates pyc files during tox runs, certain
changes in the tree, like deletes of files, or switching
branches, can create spurious errors.
Change-Id: I7908520f6e2935ffacf5d914a01078939392e2e2
Closes-Bug: #1368661
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
Freezer currently uses pytest to execute unittests.
As we need to be consistent with the frameworks by the
other OS project, we are porting our tests to tests.
Change-Id: Ib755771efe496e467079dc2e990ca89a2e513eb6
Implements blueprint: swift-to-testr
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
The test provided in the tests/integration directory
execute the command line version of the freezer-agent.
The tests execute backups and restores, passing the parameters
on the command line, and check the results.
Types of integration tests depend on the environment variables defined.
Local storage tests are enabled by default and use temporary
files and directories, while SSH and Swift storage testing need
also access to existing external resources.
To enable the ssh storage testing, the following environment
variables need to be defined:
- FREEZER_TEST_SSH_USERNAME
- FREEZER_TEST_SSH_KEY
- FREEZER_TEST_SSH_HOST
- FREEZER_TEST_CONTAINER
To enable the swift storage testing, the following environment
variables need to be defined:
- FREEZER_TEST_OS_USERNAME
- FREEZER_TEST_OS_TENANT_NAME
- FREEZER_TEST_OS_REGION_NAME
- FREEZER_TEST_OS_PASSWORD
- FREEZER_TEST_OS_AUTH_URL
Tests involving LVM snapshots are executed only with superuser
privileges and if the following env variable is not defined:
- FREEZER_TEST_NO_LVM
Change-Id: I39f0c9bf62f7c82f81ad95f19cf0f7aefb059633
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
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
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
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
Add windows incremental support for backup and restore
Change-Id: I49a6b611f52a5d3a1950bd3f6f49cdb4a59354af
Implements: blueprint windows-backup-and-restore-incrementals
First implementation of the freezer API.
Slightly more than a skeleton with basic functionality
Change-Id: Iae04affea3aa0f4a943599b528df49d9d4a5b845
Implements: blueprint freezer-api-first-rel
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
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
Now a basic unittest for utils.py
is available under tests/test_utils.py.
While writing unittest two bugs were encountered
and fixed also on this commit.
tox.ini also has been modified to be able to use
runtests.py
Change-Id: Ieecd9549f358566ba5d4c7fcf7ad5780b9311dcd
- 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