Kirby + Deploybot

I’m currently configuring my sites in DeployBot and I’m having an issue with getting a 500 error on all pages – was wondering if there was something I needed to do in .htaccess to get this up.

The site is also being published to a subdomain:
staging.mysite.com which points to staging/mysite/current/{kirby here}

The folder structure in DeployBot is as follows:

  • current/ (symlink to most current release)
  • releases/
  • shared/

Apache config has symlinks turned on. PHP is up-to-date.

Any ideas?

–FOLLOW-UP–

When I pointed my domain to the most current release, it worked correctly:
staging/my-site/releases/latest-release###

And then when I reverted back to pointing to the current symlink, it started working:
staging/my-site/current>>

However, on the deploy after that, though the symlink was pointing to the correct directory, I received the 500 error again.

1 Like

A follow-up for anyone stumbling on this post later:

For whatever reason, the permissions on my latest release folder wasn’t consistently set to 755, so in the environment set-up in the “Run commands after new version is uploaded,” I threw in a line at the end to make sure it was set correctly:

chmod -R 755 $RELEASE

Have been really loving Deploybot. Once you get in configured correctly, it’s so easy to use.

Question for you: I’m working with the same setup, but I’m having some odd issues with DeployBot’s cache / release setup (at least I think I am).

I think I’m close to having it where I want it, but every single time I deploy, my user avatars are being over-written.

I have deploybot set to ignore /thumbs on deployment. Any ideas?

Another question for you if you happen to find this. I have DeployBot set to ignore a ton of files and folders, including Content, but every time it deploys, it’s killing all new content (anything created after my initial deploy).

Any ideas?

Couple of ideas…

What does your .gitignore file look like? I don’t actually use DeployBot to ignore files as most of it is done by not checking in those changes in the first place.

Here’s what my .gitignore file looks like.

# System files
# ------------
Icon?
.DS_Store

# Temporary files
# ---------------
/thumbs/*
!/thumbs/index.html

/site/cache
/site/cache/*
!/site/cache/index.html

# Content
# ---------------
/content/*

# Config
# ---------------
/site/config/config.php

# Avatars
# ---------------
/assets/avatars/*
!/assets/avatars/index.html

It sounds like you’ve already checked that stuff in, so you’re going to need to:

  1. Add the files and directories that you don’t want to include.
  2. Run something like git rm --cached -r your-directory to remove all the stuff that you just said you wanted to ignore. I’m at git novice, so there’s probably a better way to do this, but that’s worked for me.

Here’s my Atomic SFTP Server set-up in Deploybot.

The first line is most important here.

  • If no directory exists, it creates a “content” directory in the “shared” folder. This is where you can put all of your content.
  • It then creates a “content” symlink and places it in the latest release folder, so Kirby pull that in.

The last line was pretty important for me – not sure if you’ll have the same issue. The permission for the most current folder wasn’t getting reliably set, so this makes sure it’s set correctly.