aries-cloudagent-python icon indicating copy to clipboard operation
aries-cloudagent-python copied to clipboard

Enable `no-transport` mode as startup parameter

Open PatStLouis opened this issue 1 year ago • 2 comments

This PR adds a --no-transport startup parameter for making the agent start without requiring the --enpoint, --inbound-transport and --outbound-transport to be set.

The idea was shared during an aca-pug meeting and there was no objection. This can greatly simplify deployment for controllers that do no require didcomm messaging.

Currently it just overrides what is required for startup.

@dbluhm @swcurran @ianco

PatStLouis avatar May 27 '24 02:05 PatStLouis

Like I mentioned in the ACA-PUG call, I like where this is going. Having the ability to use ACA-Py's credential, DID Resolution, and other capabilities without necessarily using the DIDComm capabilities is really interesting.

I think you're already headed in this direction but if no transport is enabled, it is likely not necessary to register any of the protocols.

dbluhm avatar May 28 '24 17:05 dbluhm

Integration tests are consistently failing. The question is whether that's a result of the changes in this PR or not.

 Failing scenarios:
  features/0586-sign-transaction.feature:124  endorse a schema and cred def transaction, write to the ledger, issue and revoke a credential, manually invoking each endorsement endpoint -- @4.1 
  features/0586-sign-transaction.feature:234  endorse a schema and cred def transaction, write to the ledger, issue and revoke a credential, with auto endorsing workflow -- @1.1 
  features/0586-sign-transaction.feature:245  endorse a schema and cred def transaction, write to the ledger, issue and revoke a credential, with auto endorsing workflow -- @3.1 

It doesn't seem like these changes should impact these scenarios... @jamshale any insights?

dbluhm avatar Jun 24 '24 15:06 dbluhm

I noticed this but have not dug into it. I'm not sure how this is effecting endorsement but it must be as integration tests are passing on the nightly runs and for other pr's. I can try and see if I can figure anything out.

jamshale avatar Jun 24 '24 15:06 jamshale

I will have a look, no additional tests were added and no changes are expected if the flag is not added. Maybe there's a bad condition check somewhere.

PatStLouis avatar Jun 24 '24 16:06 PatStLouis

I haven't tried to debug it yet but these failing tests are trying to use the /ledger/register-nym endpoint via the register_did method in demo/runners/support/agent.py and getting a 400 error.

jamshale avatar Jun 24 '24 16:06 jamshale

@dbluhm @jamshale I think I found the error, copy paste mistake. I was registering the ledger as a package and not a plugin. Lets see how the test go now

PatStLouis avatar Jun 24 '24 18:06 PatStLouis

Tests passed, updating the branch

PatStLouis avatar Jun 24 '24 19:06 PatStLouis

@dbluhm @jamshale branch updated, all tests are passing. Let me know if you need anything else!

PatStLouis avatar Jun 24 '24 20:06 PatStLouis