Getting remote import to work on a barracuda setup with vagrant

2 minutters læsning

This is how I got remote import to work on a BOA setup with a local development environment created by vagrant. After reading the article you should be able to add remote servers, and import sites via Aegir to your local development box.

First setup your local server with vagrant. You can do it using vagrant and barracuda, as I outlined in this article.

Making remote import work, is not too hard, but there are some things, you need to know about. There is some instruction on how to make this work with Barracuda. I read the instructions carefully, but tweaked it a bit.

Remote remote_import drush extension from source server

Really important or strange things will occur, so make sure to remove remote_import from the source server before you proceed. Log into the source server, follow the docs and do like this:


<span style="color: rgb(0, 0, 0); font-family: Monaco, 'Courier New', monospace; line-height: 16.78333282470703px; white-space: pre; background-color: rgb(248, 248, 248);">mv /data/disk/o1/.drush/provision/remote_import /tmp/</span>

Prepare the users on both systems for passwordless login ——————————————————–

For this process to work, you need the same user both on the source and target server. That means that you can only do this, if you have the same users on both server (work is being done to make that optional).

On both the target and source server, do like this.


<span class="pre" style="margin: 0px; padding: 0px; border: 0px; outline: 0px; vertical-align: baseline; white-space: pre; color: rgb(0, 0, 0); font-family: Monaco, 'Courier New', monospace; line-height: 16.78333282470703px;">chsh -s /bin/bash o1
su o1
mkdir -p ~/.ssh</span>

Create a public key with an empty paraphrase on the target server. I did mine with:


<span style="color: rgb(0, 0, 0); font-family: Monaco, 'Courier New', monospace; line-height: 16.78333282470703px; white-space: pre; background-color: rgb(248, 248, 248);">ssh-keygen -b 4096 -t rsa -N "" -f ~/.ssh/id_rsa</span>

Make sure that the permissions are ~/.ssh has permission 700 and the files in ~/.ssh has permission 600 on the source-server.

Add your public key to the remote source server. From the target server, run the following:


ssh-copy-id -i .ssh/id_rsa.pub user@remote-server

Try logging in from the source server to the source server and make sure that ~/.ssh/authorized_keys are correct. You should not be prompted a password, when logging in, as this should now be handled by the keys instead. So basically, you should be able to log into the remote server without a password now.

You migt also need to follow the rest of the docs by opening up ports in the firewall and granting mysql users access, but I do not think it is neccessary.

Adding the server in Aegir

Now, you should be able to add the server in the aegir control panel under the tab servers and verify the server and get a list of the remote sites.

You can also create a platform where you want to be able to import sites to. However, I had to do a little tweaking for actually getting the imports to work. I followed the explanation in this issue and hardcoded changes to remote_import drush extension. You need to hardcode the directory where the target server should fetch the files on the source server.

Now I had a working development environment, where I could easily fetch the production site so I can tweak it.

Kommentarer

Grace

Please don’t confuse it: “remove remote_import from the target server” - it is wrong, you should remove it from the *source* server only, if exists there.

Skriv en kommentar

Din e-mail bliver ikke offentliggjort. Obligatoriske felter er markeret *

Indlæser...