Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Install SSH key via command line?

Tom Ekberg June 15, 2014

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?

2 answers

0 votes
Deleted user January 24, 2020

I would check out

 https://developer.atlassian.com/bitbucket/api/2/reference/resource/users/%7Busername%7D/ssh-keys

for the formatting. Looks like the API now supports this. 

0 votes
Pedro Cora
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
June 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.

;)

Tom Ekberg June 23, 2014

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 Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events