With implementation of new engines (nova, rsync, ...) a regression was
introduced - user is no longer able to create working action for nova instance
backup because config generated by freezer-scheduler passed to freezer-agent
doesn't contain 'engine_name' thus falling back to default value 'tar'
even when 'mode' is set to 'nova'. This patch adds possibility to specify
'engine_name' in web UI which is then passed to freezer-scheduler job cfg.
Change-Id: Ifc4ed728db369da54fecef3c2ecf4dfcbfe4fefb
Replace django.core.urlresolves with django.urls
(In Django 2.0) The django.core.urlresolvers module is removed
in favor of its new location, django.urls.
It was deprecated in Django 1.10:
https://docs.djangoproject.com/en/2.0/releases/1.10/#id3
Note that this commit does not add py35dj20 like other horizon plugins
because there is no actual python unit tests in freezer-web-ui.
Older Django unit tests were dropped from tox.ini
as horizon dropped Django <=1.10 support in Rocky.
Change-Id: I38f3f05655324f2a5f38c6e8c6ab53ebaa42d4c8
The old syntax using patterns is deprecated in Django 1.8, and is
removed in Django 1.10. The current version Django<1.11, this
patch fix the syntax.
Change-Id: I26564c97538c23378c0494739257b31dd8796f5a
Closes-Bug: #1709742
First I backup a nova instance successfully, then I want to
restore it, I have created an action and a job, but the job
runned failed, I found an error in log of freezer agent:
"The parameter --nova-restore-network is required"
In the web form, the name of input field for network is called
"nova_network_id", but in the freezer project, it's called
"nova_restore_network".
Change-Id: Ia2aba0090ac04c5d444fcab675d9cd3357db01cd
Closes-Bug: #1686653
Modify the error message 'You must define nova network id to restore'
to be around the 'Nova Network ID' field.
Change-Id: Ic732a33c2fd754afa6d1d796b8d9e6f1e382c135
Closes-Bug: #1663888
Make the checks of "Nova Instance ID" and 'Cinder Volume ID'
more correct for create action.
Change-Id: I051cca74d629febb01203c1eb4f2d35f091a7b8d
Closes-Bug: #1663887
Modify the "Restore From Date" filed in "Create Action" form
to datetime format. This makes the user life easier.
Change-Id: I602a8640098be2ffb592c613b734dceda5b1eaeb
DeleteInstance action inherits from tables.DeleteAction,
the tables.DeleteAction has already define some attributes.
So this patch remove the repeated attributes.
Change-Id: I7cab3cf609b75e483d5507af113501aa957436c5
The django form field default is "required=True", so this patch
remove the redundant "required=True" in the form.
Change-Id: Id2342cea882134099a43f2149e7b56168a015afe
Add trimmed option to blocktrans, blocktrans trimmed
option removes newlines from contents of blocktrans
and replaces any whitespace at the beginning and end of a line into
a single space. This makes translator life easier.
More detail is described in the bug report.
Change-Id: I9a5c3e958260a94d8a44dc3946e25a690f00f30e
Closes-Bug: #1659559
Remove the redundant 'Source File/Directory' item,
adn set 'Container name or path' non required item
when the 'mode' is 'cinder' or 'nova'.
Closes-Bug: #1657457
Change-Id: Idab804f391e3534ad2369ec1ab6c065feab2e7da
Adds help text for users creating a Restore Action item.
Also fixes the fields that get displayed when selecting options
in the Action, Mode, and Storage dropdowns.
Change-Id: Ia5fcfa0a3afb8d75c9beb497204ef9b4934a723f
Fix calendar to better display in small windows
Bump the number of results for listing items
Quick workaround to successfully listing items after being created
Closes bug: 1556939
Change-Id: Ibaf0a999a729197900b18c1f22fd819f5e11e797
ImportError: No module named urlresolvers in horizon.utils.
Fixed this importError use django.core.urlresolvers.
Change-Id: Ia2591675e3ac75b1cf608e7c18ad0c749d530289
Closes-Bug: #1549077
max retries, max retries interval and mandatory values are not present in
the dictionary that the api gets, this commit fix that by updating the
dictionary with those values
Resolves bug: 1533637
Change-Id: I3be163db0da7e3e84881bb6c3ab378cb1687037c
Add * to mandatory fields, usually django forms handle this
but, in freezer-web-ui the rules for mandatory fields varies for
each mode and action, so the implementation has to be manually
Implements: blueprint mandatory-clues
Change-Id: Ied5de01ca19a459a92084e925d8afc396e77aa95
remove empty tab for job edition
remove possibility to add job without interval if start and end date
are provided
show a message when a job is started/stoped
Resolves bug: 1523497
Change-Id: Iff39fc9e813969672eecd48d9084fd100bcf611c
rename _50_freezer.py to _50_freezer.py.example
updated readme to point to freezer launchpad
improved readability for actions and jobs in the ui
Change-Id: Ib07719e5f91443ea6716f940b6b125b872505088
If a key is not present in the database, the panel failed to open the modal
windows for edition, this fix that by using the dict.get()
Change-Id: Ic5f5e216828f10d41f288408fc5109dc004c6ab9
action, job, session, backup, clients are now objects in api.py
shield decorator to avoid having boilerplate code in views
move from freezer_ui to disaster_recovery url
improved actions edition in a job
javascript lint
added clients panel
added actions panel
improved restore functionality from the dashboard
Change-Id: I23aed516bcde3a40b24144b05f858d1e3a49a796