Question: I am trying to push my staging repository on `oss.sonatype.org` to central repository, but this action is getting failed and i am getting following exception

```
Event: Failed: Signature Validation
typeId  signature-staging
failureMessage  No public key: Key with id: (XXXXX) was not able to be located on http://keyserver.ubuntu.com:11371. Upload your public key and try the operation again.

```

I used `gbp` to generate public and well private key for me and i even sent public key to the server with following command

```
gpg --keyserver hkp://pool.sks-keyservers.net --send-keys EE539F98

```

Still i am getting same exception.I cross checked and there is only one `Sub Key`, not sure what else i need to do to push public key so as this can be found by nexus

Answer: 
I got the error message:

> 
> No public key: Key with id: (xxxx) was not able to be
>  located on <http://keyserver.ubuntu.com:port>. Upload your public key
>  and try the operation again.
> 
> 
> 

Then i entered the following command on console:

```
gpg --keyserver hkp://keyserver.ubuntu.com --send-keys xxxx

```

(removed the :port from the end of the hostname)
It works!
Same thing here, the thing was :

* uploading the key generated from my laptop works perfectly
* uploading the key generated from the application server was not efficient, I did not get any error message but the key was never distributed

Maybe our application server was blocking this request, or maybe this one was rejected directly by Sonatype (like explained in <https://issues.sonatype.org/browse/OSSRH-6697>)

Anyway we found a workaround that I wanted to share with you guys :

* generate the public key on your application server

> 
> gpg --gen-key
> 
> 
> 

* if you have already one, make a copy of *pubring.gpg* file in your local folder */Users/you/.gnupg/*
* download locally the public key *pubring.gpg* generated on your application server (using scp command for example), it should be located in the */home/username/.gnupg/* folder on your application server
* put it in your local folder */Users/you/.gnupg/* and publish this key

> 
> gpg2 --list-keys
> 
> 
> gpg2 --keyserver hkp://pool.sks-keyservers.net
> --send-keys KEYID
> 
> 
> 

* the key should be published by now

> 
> gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys KEYID
> 
> 
> 

Please let me know if it helps!

Regards