Skip to content
This repository has been archived by the owner on Nov 23, 2021. It is now read-only.

git push production master #102

Open
cezarneaga opened this issue Sep 15, 2016 · 5 comments
Open

git push production master #102

cezarneaga opened this issue Sep 15, 2016 · 5 comments

Comments

@cezarneaga
Copy link

has it ever been in any of your plans?
I think it would be really amazing if we could use git to push code changes to server. if there'd be a bucket list, this would me my drop. :)

@drybjed
Copy link

drybjed commented Sep 15, 2016

Something like this already exists in DebOps - check out debops.gitusers role. With it, you can configure an user account with git-shell as a default shell and use a set of (currently) Bash scripts to manage the contents of that account. I can hold multiple git repositories, use jekyll to deploy websites to specific directories, etc. Think of it like a basic GitHub Pages alternative. I plan to update that role at some point and expand it to a user-side hosting management of sorts.

@carlalexander
Copy link
Owner

carlalexander commented Sep 15, 2016

I want to support different deployment methods. @schrapel has a ticket for improving the setup with Rocketeer. I have one for bedrock (Capistrano). I'd like it to support a githook like setup too. Just a question of getting the rest of this stable and then we can work on features like these next.

@tobeycodes
Copy link
Contributor

If you use bedrock / sage-9 look at this https://github.com/schrapel/debops-wordpress-deployer

@carlalexander
Copy link
Owner

carlalexander commented Jan 8, 2017

I started working on a WordPress project template based on @schrapel's work. Right now, I'm trying to smooth out the process of setting this up to a few config options.

On the DebOps side, the user stuff is pretty much done. I'm still thinking about how I can generate a wp-config.php without installing WordPress. I kinda wish wp-cli let us do that without having WordPress installed already.

Once I have a basic WordPress installation working, I'll work on getting bedrock working. This is going to need some extra roles to happen. I'd rather get this simpler use case working first.

@carlalexander
Copy link
Owner

carlalexander commented Jan 10, 2017

Alright, this is feature complete now. I still need to write the documentation for this and the template project. In terms of config, you just need these two options:

wordpress__root: '{{ wordpress__nginx__www }}/{{ wordpress__domain }}/current'
wordpress__user_allow_remote: True

wordpress__user_allow_remote allows someone to connect remotely to the WordPress system account. By default, it'll upload your loaded SSH keys like debops.bootstrap does for your system account. It'll also generate a SSH key for the system account that you can configure as a deploy key.

You can just run DebOps as usual. Once that's done, the WordPress project template now has a setup task to migrate a normal WordPress site to one that's ready for deployer. I got inspired to do something like that because Capistrano always had a project setup command. Don't see why we couldn't have too! 😝

So you just need to run these two commands and you're good to go:

$ dep setup
$ dep deploy

So that's it! I think that's easy enough. What do you think?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants