Install SSH key via command line?

I'd like to do something like 'ssh-copy-id' to place my SSH public key into bitbucket. I'm using ansible to set up a host, which has several steps that clone bitbucket repositories. Prior to that one needs to install the public SSH key into bitbucket. I'd like to automate this in ansible. Having a way to install the SSH key via the command line for bitbucket would allow this to be automated. Is this possible?

1 answer

0 votes
Pedro Cora Atlassian Team Jun 23, 2014

Hi Tom,

Browsing through the BitBucket API docs, this is not listed as a possible call. I'd say that this is not possible to achieve.

Check https://confluence.atlassian.com/display/BITBUCKET/Use+the+Bitbucket+REST+APIsfor more details.

;)

Thanks for the pointer! I can retrieve my ssh-keys by doing this:

curl -u tekberg https://bitbucket.org/api/1.0/ssh-keys> /tmp/c

In /tmp/c it has a list of dicts with keys "pk", "key" and "label". This way I can see if an ssh-key needs to be added or not.

When I try to add a new ssh-key:

curl -d - -X POST -u tekberg https://bitbucket.org/api/1.0/ssh-keys<<END

key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCgyRWiWhqoyanMeVWO0w522yK7lxVLKTR45u8LJ5R4HwRlVCqqx\

0i9Q/cluoxDES3IlDr06y4c821hl8VCAcLViRG4OE8CFhxX9mHDi3a1n43VzmUOKpZoy/H9V7IW/8f3uOzyRHZ8TU0NiQL9\

tF/EvZCLueFbk5IH/Nb9HpbHmTbdsMXdjAUcczUfNw5/CdZdOXLIlpLpkbGcqVYHZEWOfQmT8La6SCfmAPLKXgSm0sUhjM2\

/ewCGYGjRLt2IveOJiCV0pD4+GtSlTeLm98a2RptClRP4zHYF0CyjLk9r/3/YCvl8LcNyJZApgpWb0qN8tph3MGw8184dNh\

FdpZBz tekberg@apps3"

label: "apps3.labmed.uw.edu"

END

(Note: the key: is all in one line. The label is on the next line.)

I get the following HTML:

<ul class="errorlist"><li>key<ul class="errorlist"><li>This field is required.</li></ul></li></ul>

I think it is saying that the key field is required. Obviously I'm not specifying that field properly. I tried another variation with the keys quoted - "key" and "label" - with the same result.

I think I'm pretty close. Can you tell me how to properly specify the 'key' field?

Suggest an answer

Log in or Join to answer
Community showcase
Piotr Plewa
Published Dec 27, 2017 in Bitbucket

Recipe: Deploying AWS Lambda functions with Bitbucket Pipelines

Bitbucket Pipelines helps me manage and automate a number of serverless deployments to AWS Lambda and this is how I do it. I'm building Node.js Lambda functions using node-lambda&nbsp...

635 views 0 4
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot