I have been developing against a local node, for which I created a key-pair. Now that it's time to publish to the testnet, I've imported said private key into Scatter and linked it to the account to which I'll be publishing. when I try it:
$ cleos -u https://kylin.eos.dfuse.io/ set contract MYACCT . token.wasm token.abi -p MYACCT@active
where MYACCT is a placeholder for the real account, I get the error:
Failed to get existing code hash, continue without duplicate check... Reading WASM from /Users/ekkis/dev/token.wasm... Publishing contract... Error 3090003: Provided keys, permissions, and delays do not satisfy declared authorizations Ensure that you have the related private keys inside your wallet and your wallet is unlocked. Error Details: transaction declares authority '{"actor":"MYACCT","permission":"active"}', but does not have signatures for it.
I presume that though -u
is being passed to cleos, the wallet held by my local keosd daemon is the one being used. Is that so?
If so:
$ cleos wallet keys
properly shows the the public key for the key-pair I created, and:
$ cleos get accounts $PK
shows me the account I'm publishing against in the list returned, and:
$ cleos get account MYACCT
shows me the expected key bound to both permissions "owner" and "active", though:
$ cleos -u https://kylin.eos.dfuse.io get account MYACCT
fails with:
error 2019-06-22T18:41:52.927 thread-0 main.cpp:3899
main ] Failed with error: unspecified (0) unknown key (boost::tuples::tuple): (0 MYACCT)
and if the above queries are invalid because they refer to the account created on the local node and not the one on the testnet, I can verify that the account is linked to the key pair as I can click on the key in Scatter and under the Linked Accounts page I see the desired account under the EOS Kylin Testnet with the word "active" in what seems like a button
I've tried this with --print-request and --print-response but am no wiser for the output
what is my problem and what does it take to publish a contract on a testnet and where can I find an authoritative guide?