abrader / abrader-gms

Git management system types and providers for Puppet utilizing Github, Gitlab, Stash APIs
Apache License 2.0
26 stars 32 forks source link

Gitlab only accepts a deploy key to one project #34

Open esalberg opened 8 years ago

esalberg commented 8 years ago

If you have one master that will be accessing two Gitlab projects (e.g. puppet_control and puppet_hiera), Gitlab will only let you create a deploy key to one of the two projects. The other project gets (in the UI) a section called: "Deploy keys from projects you have access to" that shows the server key that was added to the first project and has a button to click to enable it on the second as well.

If attempting to have matching deploy key resources to both projects, the following error occurs:

Error: gitlab_deploy_key::create: gitlab_deploy_key::create: #<Net::HTTPBadRequest 400 Bad Request readbody=true> Error: /Stage[main]/Profile::Pe::Master/Git_deploy_key[add_deploy_key_to_hieradata]/ensure: change from absent to present failed: gitlab_deploy_key::create: gitlab_deploy_key::create: #<Net::HTTPBadRequest 400 Bad Request readbody=true>

The simple workaround is to go into the UI and click the button, but I wanted to raise it in case someone knew an easy way to extend the provider to handle this case.

abrader commented 8 years ago

@esalberg I noted this before as well. I am doing a self.instances rewrite of this provider in the near future. I will keep you posted as I work to resolve this and therefore make it more useful.

pawilon commented 7 years ago

Definitely could use this feature as well! :)

logicminds commented 6 years ago

might be easier to use the gitlab gem and a few execs in the midterm

seanodea commented 5 years ago

Has this been resolved?