The ansible-pull command looks like this:
ansible-pull common.yml -C develop -U $REPO -fi localhost
If I use REPO="ssh://[email protected]/xyz/xyz.git", it works fine.
But if I use REPO="amazon-s3://.jgit@xyz-bucket/xyz/xyz.git", it isn't working obviously as amazon-s3 isn't a protocol and only jgit recognizes it.
For reference, I am using this guide to create a git repository on S3.
Any hacks or solutions are welcome.
By default, most tools work with the standard C command-line version of Git (that is, the
gitbinary) and not JGit (thejgitbinary). It sounds like you have a plugin or other functionality in JGit that allows you to use theamazon-s3scheme, but you don't have a generic protocol helper for Git that allows you to do the same thing.You have two choices here: either symlink
jgittogitsomewhere in your PATH, or find and install a suitable protocol helper for Git. Assuming you have a directory calledbinin your home directory in your PATH, runln -s $(which jgit) ~/bin/git. Then, when you (or Ansible) invoke thegitprogram, you'll really be usingjgit, which will cause things to work.Having said that, the documentation you linked to states that JGit doesn't support the
pullsubcommand; if so, and ifansible-pulluses that subcommand, then what you want to do isn't possible with the commands above and you'll need to find and install an equivalent protocol helper for S3 for regular Git.