Jump to content

☁️ Duplicator: Backup and move sites


flydev

Recommended Posts

@arjen quickly seeked the log and do not found anything wrong. In that log closing happens at 0.5s and opening at 2.7s so everything seems to work fine a the time between close and open indicates the time for zip operations to take place. You may give it a try and place the backups in some other location (i.e. next to the .../public folder or in .../public/backup), but I doubt this helps, since the logfiles are there.

I can only guess that the $zip->close() fails for some reason, so please try changing that block to read:

		$zipLog->verbose("CLOSING ZIP: {$zipfile}");
		$res = $zip->close();
		if($res !== true)
			{
			$zipStatus = $zip->getStatusString();
			$zipLog->verbose("CLOSE ZIP FAILED: {$zipStatus} in {$zipfile}");
			throw new WireException("Unable to close ZIP ({$zipfile}): {$zipStatus}");
			}
		$zipLog->verbose("OPENING ZIP: {$zipfile}");

Since I expect the close to fail I've read the complete log and saw, that it tries to zip temporary files generated by ProCache. So its probably worth to add an exclude for ProCache:

%/ProCache-[^/]+$%  # Ignore ProCache directory

and maybe the pwpc directory as well:

/site/assets/pwpc/

Edit: forgot that exclusion directories must be site-relative (so its /site/assets/pwpc/  not /pwpc/)

  • Like 3
Link to comment
Share on other sites

@AutofahrnDanke for your hard work on this. I really appreciate it. 

I've excluded both pwpc and added the regex to the config. No luck. I then changed the "Absolute path of the directory where packages are saved." to the ../public folder. No luck either. Funny thing is though that the log says it still wants to save in the "default" folder. 

When I add your code I'm getting a "Parse error: syntax error, unexpected '$res' (T_VARIABLE)". I've double check the syntax, but it seems to be okay. Not sure what is going on there as well.

I also removed all filecompiler files and let it recompile again. No luck.

  • Like 2
Link to comment
Share on other sites

2 hours ago, arjen said:

When I add your code I'm getting a "Parse error: syntax error, unexpected '$res' (T_VARIABLE)".

Did you check for bad characters? Had this sometimes with copy&paste code from the forum.

Modified the script a little to hopefully display a reasonable error message.

  • Like 1
Link to comment
Share on other sites

  • 1 month later...
On 1/28/2017 at 2:34 PM, flydev said:

Good point. How about a simple button "Backup Now" to do it ?

Hi flydev,

just needed to use this module and didn't find that button until i found that I need to install the process module. In one of your screencasts there was the "event trigger" dropdown which is not there any more in newer versions. Why is the process module not installed on installation? I was looking under "setup" before installing the process module and there was of course no duplicator page until i found out that I had to install the process module manually.

Maybe you could also add a hint on the duplicator config screen?

Thx for you module!

  • Like 1
Link to comment
Share on other sites

Hi @bernhard cool to see that you needed this module for your case.

About your question, I quote myself :

Quote

The Process module is not really required because Duplicator could be, if needed, only run from CRON task.

 

That's not the first time this question is asked, I will make the Process module installed automatically on the next version (which should be ready for the end of august).

  • Like 5
Link to comment
Share on other sites

19 hours ago, flydev said:

That's not the first time this question is asked, I will make the Process module installed automatically on the next version (which should be ready for the end of august).

A hint on the module config page would also be fine ? "Install Process Module" or "Process Module is (not) installed"

PS: Sorry, didn't follow this 14 pages thread closely enough ? 

  • Like 2
Link to comment
Share on other sites

  • 4 weeks later...
On 7/18/2019 at 1:43 PM, bernhard said:

A hint on the module config page would also be fine ? "Install Process Module" or "Process Module is (not) installed"

PS: Sorry, didn't follow this 14 pages thread closely enough ? 

Yep) There is a link to process module that is broken "by default" if the process module is not installed.
And I would guess most of the time users would expect an admin page to be in place after installation for such a module.
Maybe reconsider and make it auto installed?

  • Like 2
Link to comment
Share on other sites

  • 3 weeks later...
  • 4 weeks later...

Hey I use DUPLICATOR for backups.

In all of a sudden my cronjob don't work anymore.

I get the following error in Duplicator.module line 663:   

 PHP Warning: ZipArchive::Close(): Internal error

I use the cron.php file.

Has anyone an idea why this happens and what I can do?

Thanks in advance.

Marcel

  • Thanks 1
Link to comment
Share on other sites

Hey @flydev thanks for you reply!

1. PHP 5.6.38

2. Duplicator 1.2.9

3. Processwire 3.0.123 (dev, master)

 

EDIT: So far I cannot tell if it is a Duplicator issue or a server administration issue. I am not so familiar with server administration. Still learning this by doing this.

 

 

Link to comment
Share on other sites

  • 4 weeks later...
On 9/30/2019 at 11:22 AM, Marcel said:

Hey @flydev thanks for you reply!

1. PHP 5.6.38

2. Duplicator 1.2.9

3. Processwire 3.0.123 (dev, master)

 

EDIT: So far I cannot tell if it is a Duplicator issue or a server administration issue. I am not so familiar with server administration. Still learning this by doing this.

 

 

PHP 5.6.38 ??
Are you serious?! ?

Link to comment
Share on other sites

  • 1 month later...

Hey @flydev just tried to backup an almost abandoned project of mine with your Duplicator module.

Installation (recent version from the modules directory via PW), setup and initial backup (local folder, no FTP or cloud) worked fine and I was curious about how the installer.php would work and gave it a try.

Then at some point it became weird.

2019-12-07_16-30.thumb.png.797b744883003bf088c3d1fe4349dbf9.png

The installer looked for config.php in a folder that does not exist at that point and path.

I repeated everything, moved the files around but there was no config.php anywhere in the backup. Neither the script created one.

Am I missing something here or ... changed something somewhere else that doesn't work well with your module?

I created a backup of an PW 3.0.132 instance. Both, remote and local, use PHP 7.2.x-

 

This question isn't urgent or anything!

 

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...

@flydev I installed Duplicator today (ATO version). Local backups work fine, but FTP does nothing.

In the log I just see:

Quote

2019-12-30 22:25:14:  - package build failed.
2019-12-30 22:25:14:  - package build failed,  doesn't exist

What exactly "doesn't exist"? I have entered /public_html/pwb in "upload directory". This folder definitely exists, and the FTP credentials are correct. Any pointers where to look? Do I have to enter server path without leading / ? Something else I missed?

  • Like 1
Link to comment
Share on other sites

@dragan: are you working on a shared server or do you indeed have a /public_html directory right at filesystem's root?

"absolute path" relates to filesystem not webroot, so you are free to locate the backup destination somewhere else.

It probably would be a good idea to support the regular home prefix, so path may be entered relative to webroot (something like "~/backup-folder"), at the moment you have to prefix the path with the location of your webroot.

  • Like 2
Link to comment
Share on other sites

11 hours ago, Autofahrn said:

What absolute path did you use?

The absolute path of the remote destination server (where I want the backup to be stored via FTP).

11 hours ago, Autofahrn said:

Should equal whatever is stored in $config->paths->root to be located inside your webroot.

Why is that? PW is not even installed on the destination server. I am talking about the field "FTP Settings: Upload directory: Directory on the server where the packages will be stored." Why is that supposed to be the same as my local path "D:/laragon/www/pw/"? That makes no sense.

  • Like 2
Link to comment
Share on other sites

Sorry, I somehow missed the FTP part since already the package build seems to fail. And there should be the name of the zipfile in the "package build failed, <ZipNameExpectedHere> doesn't exist" message.

Seems to be a Windows system, guess there could be an issue with the backslash path separator.

Edit: The attached version 1.3.13 fixes the (false) package build error, supports custom package name and allows prefixing local path with ~/ to refer to webroot.

 

Duplicator-ATO1.3.13.zip

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...