Can you help me troubleshoot this?

The Drupal user at the destination has the permission, and my filesystem at the destination has the right permissions for the application to write into it.

But the file can't be written, and that stops the whole deployment plan.

Any ideas? Thank you for the installation patch, by the way.

Comments

Anonymous’s picture

What does "recent log entries" on the destination server say?

gdd’s picture

Status: Active » Closed (won't fix)

This error is thrown by services when line 108 of file_service.inc fails:

  if (!file_save_data(base64_decode($file->file), $file->filepath)) {
    return services_error("Could not write file to destination");
  }

So I would look into why file_save_data() is failing or possibly why your base64_decode is not working properly.

Ultimately this looks to be a problem on your side so I'm closing this unless new evidence comes to light.

beanluc’s picture

Actually rather than "a problem on my side" I'd say it looks more like a problem with a module (Services) besides this one (Deploy).

So I'm still looking for support. Your suggestions are well-taken, but beyond me, considering that I'm just using stock modules with standard instructions.

I'll take this over to Services and ask for the same support.

Thanks, Heyrocker,
BL

beanluc’s picture

This might be related to the issues about how the Upload module conflicts with Node Deployment?

With the Upload module enabled on the destination, I can't deploy nodes at all (no surprise), but with the Upload module disabled on the destination, a node with a file attachment is not possible. Maybe file_save_data() is failing because of the disabled Upload module?

beanluc’s picture

Yes, that looks like the case.

Without the Upload module enabled, you can't ever have any $node->files

beanluc’s picture

All right, I'm bringing this up again because I'd have to say deploy is not working as advertised, for me anyway (still categorized as "Support Request").

The project page says it's intended to work, and does work, with filefield attachments. Documentation doesn't include this use-case, so I'm stuck. If anyone has this working, could you help me out?

@Heckacopter: the answer to your question, what's the log on the destination say, is that it says a session was opened for the Deploy user, and nothing else except a PHP warning that another watchdog entry is too long for the column. The watchdog query that's too long for the column is about xmlrpc services, and contains no helpful info. I'll have to copy/paste it tomorrow because I'm at home now.

Thanks,
BL