monkeysphere: Enable backup/restore

Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
This commit is contained in:
Joseph Nuthalapati 2018-10-25 14:24:01 -07:00 committed by James Valleroy
parent f52e13d316
commit 37262f1bb7
No known key found for this signature in database
GPG Key ID: 77C0C75E7B650808
3 changed files with 42 additions and 1 deletions

View File

@ -15,7 +15,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
@apps @monkeysphere
@apps @monkeysphere @backups
Feature: Monkeysphere
Import and publish OpenPGP keys for SSH and HTTPS keys
@ -39,3 +39,12 @@ Scenario: Publish SSH keys
Scenario: Publish HTTPS keys
Given the HTTPS key for mydomain.example is imported in monkeysphere
Then I should be able to publish HTTPS key for mydomain.example in monkeysphere
Scenario: Backup and restore monkeysphere
When I import SSH key for mydomain.example in monkeysphere
And I import HTTPS key for mydomain.example in monkeysphere
And I create a backup of the monkeysphere app data
And I export the monkeysphere app data backup
And I restore the monkeysphere app data backup
Then the SSH key should imported for mydomain.example in monkeysphere
And the HTTPS key should imported for mydomain.example in monkeysphere

View File

@ -22,6 +22,8 @@ from django.utils.translation import ugettext_lazy as _
from plinth.menu import main_menu
from .manifest import backup
version = 1
managed_packages = ['monkeysphere']

View File

@ -0,0 +1,30 @@
#
# This file is part of FreedomBox.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
"""
Application manfiest for monkeysphere.
"""
from plinth.modules.backups.api import validate as validate_backup
backup = validate_backup({
'config': {
'directories': ['/etc/monkeysphere/']
},
'secrets': {
'directories': ['/var/lib/monkeysphere/']
}
})