trilbymedia / grav-plugin-git-sync

Collaboratively Synchronize your Grav `user` folder hosted on GitHub, BitBucket or GitLab
Apache License 2.0
243 stars 58 forks source link

Add CLI for initiating git #13

Closed rediche closed 5 years ago

rediche commented 7 years ago

When deploying Skeleton packages and using Git Sync at the same time, you have to login and navigate to the Git Sync plugin page to initiate git the first time. (We also have the plugin preconfigured in a .yaml-file.

This can of course be done in the console already through a series of Git commands. But running the same commands as the plugin would seems like a stupid idea, in case the plugin ever changes the specific commands it runs on init.

I would find it very useful to have a CLI command for the plugin that I can run on automatic deployment, which would run exactly the commands, that the plugin does, the first time you save it's settings.

Would this be possible for a future release?

w00fz commented 7 years ago

That's a good idea! I'll have a CLI command to setup the configuration as a whole as well as configure individual portions. I'm thinking something along the lines:

$ bin/plugin git-sync configure
$ bin/plugin git-sync configure --user="w00fz" --repository="https://github.com/trilbymedia/grav-plugin-git-sync.git"
btopro commented 7 years ago

This may be of interest as well for invoking via gui http://kbjr.github.io/Git.php/ we use it in @elmsln to pull in and orchestrate git repositoris via drupal

scottybrown commented 7 years ago

I'd like to see this! Good for building a Docker image with Grav in it. As it stands you can copy git-sync.yaml to the correct folder, but the plugin does not save the new configuration until the "Save" button is clicked in the GUI. It does pre-fill the configuration page with your details, but "Save" must be clicked before it will work. It's close but not quite close enough for a fully automated deploy!

lpaulger commented 7 years ago

this would be great for automated deploys (and dyno restarts on heroku). Been having a real headache trying to figure out a viable deployment technique. I've recently switched to AWS to get around this (no dyno restarts)

trakoczi commented 6 years ago

For local development I have config files under the localdev domain in /user, including the Git-Sync YAML file, like /user/mydev.local/config/plugins/git-sync.yaml

It would be great if I could do a clean deployment by taking this config file as sync parameter and then have my custom settings in effect without having to go to the Grav admin panel and initilaize content under /user/pages that way.

Edit: I'd like to keep production content on master branch and use develop or test or any other branch for testing stuff...

w00fz commented 5 years ago

This is now available in v2.0.1! 🎉