bflad / chef-stash

Chef Cookbook for Atlassian Stash
Other
37 stars 42 forks source link

Support for Stash DIY backup #68

Closed legal90 closed 9 years ago

legal90 commented 9 years ago

Implemented Stash DIY backup (#63) More information about it: https://confluence.atlassian.com/display/STASH/Using+Stash+DIY+Backup

1) The following attributes have been moved from the namespace ['stash']['backup_client'] to the shared one ['stash']['backup']:

I've tried to save backward compatibility by converting these attributes automatically. I've also added a warning message about it. This function (check_for_old_attributes!) can be removed in the one of the next releases.

2) Cron job configuration has been moved to the recipes: 'backup_client' and 'backup_diy'.

So, the recipe 'backup_cron' is marked as deprecated, but it is still working and just the warning is shown. It could be removed in the one of the next releases

Known restrictions for the restoring DIY backup: If you decide to restore your backup using stash.diy-restore.sh script, you should know that it might require more privileges from your database user. For example, to upload PostgreSQL dump it could fail while attempting to create database, or add some relations, constraints, etc. So that, it is recommended to use superuser credentials to restore your database backup.

Just let me know if you have any suggestions about this pull-request. Thank you!

legal90 commented 9 years ago

About Travis CI failure: Rubocop's warning does not relate to this changeset, so let's fix it separately.

linc01n commented 9 years ago

Hi @legal90 ,

I have fixed the rubocop error and re-run travis test. Your PR now passed.

legal90 commented 9 years ago

@linc01n I've added some changes, following your recommendation. Please, review

legal90 commented 9 years ago

I've rebased my branch to the current HEAD (+ squashed some commits).

linc01n commented 9 years ago

Thanks ! I am able to do a fresh install in centos 6. Trying to test an upgrade scenario from backup client to diy.

legal90 commented 9 years ago

@linc01n Sorry for a delay. I've fixed the behavior by the similar way as you suggested before: 5d741cf

A've also rebased my branch to fix merge conflicts.

linc01n commented 9 years ago

According to this https://bitbucket.org/atlassianlabs/atlassian-stash-diy-backup/pull-request/7/stashdev-7993-added-diy-restore/diff

it is safe to exclude mysql. Even you backup it, you can't restore it using diy method.

Let me do more testing later today. Then I will merge this in.

legal90 commented 9 years ago

We can add a notice to README, describing that diy backup is provided "as is" and currently restore is available only for PostgreSQL (and put this link).

linc01n commented 9 years ago

We can add a notice to README, describing that diy backup is provided "as is" and currently restore is available only for PostgreSQL (and put this link).

Do you think we should put this in v3 or wait v4 when we support postgresql as the default database?

/cc @bflad

legal90 commented 9 years ago

Hm... Then I think it will be better to put this and release in the scope of v4.

linc01n commented 9 years ago

Merged! Thanks!