Cannot Pull site from WPEngine

Issue Summary

On new Monterey MacBook Pro, tried to pull existing site from WPE to Local, constantly comes up with just a few files, but without most of Wordpress files. So, something syncs or is created, but not most.

Troubleshooting Questions

  • Does this happen for all sites in Local, or just one in particular?
    Only have this one site

  • Are you able to create a new, plain WordPress site in Local and access it in a Browser?
    Yes

Replication

  1. Click Connect and choose WPE
  2. Choose site and staging level
  3. Pull site
  4. Authorize provisioning
  5. Try Open Site - fails

System Details

  • Which version of Local is being used?
    6.18+5621

  • What Operating System (OS) and OS version is being used?
    MacOS Monterey

Security Reminder

Local does a pretty good job of scrubbing private info from the logs and the errors it produces, however there’s always the possibility that something private can come through. Because these are public forums, always review the screenshots you are sharing to make sure there isn’t private info like passwords being displayed.
local-lightning.log (3.8 KB)

I’m seeing an error in the Local log that looks like this:

{"thread":"main","class":"DevKitService","message":"rsync error: unexplained error (code 255) at io.c(226) [Receiver=3.1.3]\n","level":"warn","timestamp":"2022-01-06T16:43:00.058Z"}
{"thread":"main","class":"DevKitService","message":"wpe_cli+db+pull+reliancevdev@45.79.149.194: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).\r\n","level":"warn","timestamp":"2022-01-06T16:43:00.234Z"}

I typically don’t see errors like that which makes me wonder a couple of things:

  1. Maybe there’s a timeout issue at play? How large is the site that you’re trying to pull down? If it’s a large site, you might try downloading a backup of the site from the WP Engine portal, and then import it into Local by dragging and dropping the zip backup onto Local.

  2. Some sort of server throttling? Can you try disconnecting Local from WP Engine, and then re-connecting from the “Connect” Tab?

Hi there. The site isn’t that large. I tried to manually download a zip from WPE and it was 654mb, but that is mostly images I think.

Dragging that into Local mostly installed but then had a sql error (see attached). Dragging my old zip file I had used in November on my other computer worked fine and runs.

However, I can never pull any changes down from WPE. It does nothing.

Before doing that last old zip import, I complete uninstalled and reinstalled Local and redid all the connections. That didn’t fix anything, sadly.

CleanShot 2022-01-06 at 18.21.30@2x

That seems odd that there is a warning about mysql.sql – I don’t think that’s a file that Local typically creates, so is that something that was manually created in another way? If you open that mysql.sql file, does it seem legitimate, like valid SQL?

One other thing, can you provide an updated version of the Local log? This time, get a zip of the Local logs by clicking the “Download Local Log” button from the “Support” tab of Local. See this help doc for more info about that button:

Hi Ben,

I think there is an issue with the mysql file that I don’t know how to fix for the pulls.
When I tried to manually import that sql file into an existing local repository via the adminer, and got a better answer which is detailed in this post - mysql - DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled - Stack Overflow

One of the WP addons we are using added a stored function, but didn’t add the "
READS SQL DATA
DETERMINISTIC" as outlined in that post. If I manually add it, the import suceeds.

So, I was able to modify the WPEngine zip export sql file to include that and then import it by drag and drop and that worked fine. BUT, I still cannot pull from WPE, even with database unchecked.

Here is the log after manually deleting a theme from the folder, and then doing a pull.

local-logs.zip (2.6 KB)

That’s definitely an odd thing, and I’ve encountered similar issues when pulling a site that has custom DB triggers or DEFINER statements.

I’m not totally sure if there’s a way to fix the remote database to allow it to be imported without those manual updates. You’ll likely need to reach out to the Plugin author to get them to create the table with those settings you mention.

That brings me back to the odd error that I saw in the Local log:

{"thread":"main","class":"DevKitService","message":"wpe_cli+rsync+pull+reliancevdev@45.79.149.194: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).\r\n","level":"warn","timestamp":"2022-01-12T17:32:21.168Z"}

For some reason the server isn’t accepting the key.

I wonder if there’s an issue with the .ssh folder. I’ve occasionally seen issues with SSH connections when the permissions aren’t set correctly. Can you take a look at the .ssh folder on your machine to see if there are any odd permissions set?

For reference, here’s what my folder looks like:

I renamed my ssh directory and removed the WPENgine connection again entirely, and re-added and this time it worked. Possible that permissions got messed up somehow in the transfer from old laptop to new. So, thanks!

I will try to tell that plugin author, but in the meantime is there any way to add these directives into local before the database pull for a new site?

  1. Execute the following in the MySQL console:SET GLOBAL log_bin_trust_function_creators = 1;
  2. Add the following to the mysql.ini configuration file:log_bin_trust_function_creators = 1;

If not, I guess I can set that locally via adminer and then the database pull should work for an existing site?

Yes, sort of! Local can’t exactly do this in a safe way – ie, have a sort of pre-pull running of custom actions – but that’s a great idea!

As a hacky work-around, you can update the my.cnf file that Local uses when creating new sites. The drawback to this is that when the MySQL lightning service is updated, it will likely overwrite your changes. On the other hand, we don’t the MySQL service that often, so… ¯_(ツ)_/¯

Depending on if this is a preferred or custom environment, you will find the conf file in these locations:

# The conf in the actual Local app folder is for the mysql version used on the preferred environment
/Applications/Local.app/Contents/Resources/extraResources/lightning-services/mysql-8.0.16+6/conf

# The user config directory will hold any custom lightning services you download
~/Library/Application Support/Local/lightning-services/mysql-5.7.28+4/conf:

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.