From ee2c239c9abaa0805953499c5d9fe36b6f577099 Mon Sep 17 00:00:00 2001 From: patlo-iog Date: Fri, 12 Jul 2024 12:38:12 +0700 Subject: [PATCH] docs: add local stack examples [skip ci] (#939) Signed-off-by: Pat Losoponkul Signed-off-by: Hyperledger Bot Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Hyperledger Bot --- examples/.nickel/caddy.ncl | 2 +- examples/.nickel/stack.ncl | 14 ++-- examples/README.md | 74 +++++++++++++++++++ examples/mt-keycloak-vault/README.md | 16 ++++ examples/mt-keycloak-vault/compose.yaml | 18 ++--- .../{tests => hurl}/01_create_users.hurl | 6 +- .../{tests => hurl}/02_jwt_flow.hurl | 42 +++++------ .../mt-keycloak-vault/{tests => hurl}/local | 0 examples/mt-keycloak/README.md | 11 +++ examples/mt-keycloak/compose.yaml | 18 ++--- .../{tests => hurl}/01_create_users.hurl | 6 +- .../{tests => hurl}/02_jwt_flow.hurl | 44 +++++------ examples/mt-keycloak/{tests => hurl}/local | 0 examples/mt/README.md | 5 ++ examples/mt/compose.yaml | 6 +- examples/st-multi/README.me | 7 ++ examples/st-multi/compose.yaml | 18 ++--- .../st-multi/{tests => hurl}/01_jwt_flow.hurl | 44 +++++------ examples/st-multi/{tests => hurl}/local | 0 examples/st-oid4vci/compose.yaml | 6 +- examples/st-vault/README.md | 10 +++ examples/st-vault/compose.yaml | 6 +- examples/st/README.md | 5 ++ examples/st/compose.yaml | 6 +- 24 files changed, 246 insertions(+), 118 deletions(-) create mode 100644 examples/README.md create mode 100644 examples/mt-keycloak-vault/README.md rename examples/mt-keycloak-vault/{tests => hurl}/01_create_users.hurl (95%) rename examples/mt-keycloak-vault/{tests => hurl}/02_jwt_flow.hurl (81%) rename examples/mt-keycloak-vault/{tests => hurl}/local (100%) create mode 100644 examples/mt-keycloak/README.md rename examples/mt-keycloak/{tests => hurl}/01_create_users.hurl (95%) rename examples/mt-keycloak/{tests => hurl}/02_jwt_flow.hurl (81%) rename examples/mt-keycloak/{tests => hurl}/local (100%) create mode 100644 examples/mt/README.md create mode 100644 examples/st-multi/README.me rename examples/st-multi/{tests => hurl}/01_jwt_flow.hurl (74%) rename examples/st-multi/{tests => hurl}/local (100%) create mode 100644 examples/st-vault/README.md create mode 100644 examples/st/README.md diff --git a/examples/.nickel/caddy.ncl b/examples/.nickel/caddy.ncl index 1f3ccf94b7..03aa4e0bd7 100644 --- a/examples/.nickel/caddy.ncl +++ b/examples/.nickel/caddy.ncl @@ -25,7 +25,7 @@ in handle_path /didcomm* { reverse_proxy %{args.agent.host}:%{std.to_string args.agent.didcommPort} } - handle_path /prism-agent* { + handle_path /agent* { reverse_proxy %{args.agent.host}:%{std.to_string args.agent.restPort} } handle_path /keycloak* { diff --git a/examples/.nickel/stack.ncl b/examples/.nickel/stack.ncl index a7e713a090..e722ae0551 100644 --- a/examples/.nickel/stack.ncl +++ b/examples/.nickel/stack.ncl @@ -159,7 +159,7 @@ in agentDb = makeSharedDbConfig "agent", node = { host = "node" }, didcommServiceUrl = "http://%{hosts.caddy}:%{std.to_string args.port}/didcomm", - restServiceUrl = "http://%{hosts.caddy}:%{std.to_string args.port}/prism-agent", + restServiceUrl = "http://%{hosts.caddy}:%{std.to_string args.port}/agent", apikeyEnabled = args.apikeyEnabled, } & ( @@ -200,12 +200,12 @@ in version = V.hurl, hurlDir = "../.shared/hurl/simple_realm", variables = { - HURL_KEYCLOAK_BASE_URL = "http://%{hosts.keycloak}:8080", - HURL_KEYCLOAK_ADMIN_USER = "admin", - HURL_KEYCLOAK_ADMIN_PASSWORD = "admin", - HURL_KEYCLOAK_REALM = "identus", - HURL_KEYCLOAK_CLIENT_ID = "agent", - HURL_KEYCLOAK_CLIENT_SECRET = "agent-secret", + HURL_keycloak_base_url = "http://%{hosts.keycloak}:8080", + HURL_keycloak_admin_user = "admin", + HURL_keycloak_admin_password = "admin", + HURL_keycloak_realm = "identus", + HURL_keycloak_client_id = "agent", + HURL_keycloak_client_secret = "agent-secret", } }, } diff --git a/examples/README.md b/examples/README.md new file mode 100644 index 0000000000..670b327f54 --- /dev/null +++ b/examples/README.md @@ -0,0 +1,74 @@ +# How to run examples + +## Prerequisites + +- docker-compose version >= `2.23.1` + +## Running examples + +Most of the examples should follow the same pattern. +Simply go to each example directory and spin up the docker-compose of each example. + +```bash +cd +docker-compose up +``` + +If some example requires a different command, it should be provided in its own local README. + +Once finished, `docker-compose down --volumes` can be used to clean docker volumes to avoid unexpected behavior for the next run. + +## Examples + +| example | description | +|---------------------|---------------------------------------------------------------------------| +| `st` | single-tenant configuration without external services (except database) | +| `st-multi` | 3 instances of single-tenant configuration | +| `st-vault` | single-tenant with Vault for secret storage | +| `st-oid4vci` | single-tenant agent with Keycloak as external Issuer Authorization Server | +| `mt` | multi-tenant configuration using built-in IAM | +| `mt-keycloak` | multi-tenant configuration using Keycloak for IAM | +| `mt-keycloak-vault` | multi-tenant configuration using Keycloak and Vault | + +## Testing examples + +Some example directories may contain a sub-directory called `hurl`. +Hurl is a CLI tool for testing HTTP requests and can be installed according to [this documentation](https://hurl.dev/docs/installation.html). +If the example contains a sub-directory named `hurl`, the example can be tested against HTTP calls with the following commands. + +```bash +cd ./hurl +hurl --variables-file ./local *.hurl --test +``` + +# Contributing + +All of the docker-compose files in examples are generated using [Nickel](https://nickel-lang.org/). +They are defined in a shared `.nickel` directory and generated using the `build.sh` script. + +## Prerequisites + +- [Nickel](https://nickel-lang.org/) version >= `1.5` installed + +## Generate example compose files + +To generate the docker-compose config for all examples, run + +```bash +cd .nickel +./build.sh +``` + +## Updating example compose files + +To update the configuration, simply edit the `*.ncl` config in the `.nickel` directory and regenerate the docker-compose files. + +## Adding new examples + +To add a new example with docker-compose file, simply create a new configuration key in the `root.ncl` and add a new entry in the `build.sh` script. +You may need to create the target example directory if it does not already exist. + +## Example with bootstrapping script + +If any example requires initialize steps, it should be made part of the docker-compose `depends_on` construct. +Ideally, infrastructure bootstrapping should be automatic (database, IAM), but not necessarily application bootstrapping (tenant onboarding). diff --git a/examples/mt-keycloak-vault/README.md b/examples/mt-keycloak-vault/README.md new file mode 100644 index 0000000000..fc6d4a2ac2 --- /dev/null +++ b/examples/mt-keycloak-vault/README.md @@ -0,0 +1,16 @@ +## Configuration + +| Exposed Service | Description | +|---------------------------------|--------------------------| +| `localhost:8080/prism-agent` | Multi-tenant Cloud Agent | +| `localhost:8080/keycloak/admin` | Keycloak | +| `localhost:8200` | Vault | + +__Keycloak__ + +- Admin user `admin` +- Admin password `admin` + +__Vault__ + +- Root token `admin` diff --git a/examples/mt-keycloak-vault/compose.yaml b/examples/mt-keycloak-vault/compose.yaml index e322eae3ea..f86bdffcd3 100644 --- a/examples/mt-keycloak-vault/compose.yaml +++ b/examples/mt-keycloak-vault/compose.yaml @@ -5,7 +5,7 @@ configs: handle_path /didcomm* { reverse_proxy agent-default:8090 } - handle_path /prism-agent* { + handle_path /agent* { reverse_proxy agent-default:8085 } handle_path /keycloak* { @@ -46,10 +46,10 @@ services: POLLUX_DB_PASSWORD: postgres POLLUX_DB_PORT: '5432' POLLUX_DB_USER: postgres - POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-default:8080/prism-agent + POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-default:8080/agent PRISM_NODE_HOST: node PRISM_NODE_PORT: '50053' - REST_SERVICE_URL: http://caddy-default:8080/prism-agent + REST_SERVICE_URL: http://caddy-default:8080/agent SECRET_STORAGE_BACKEND: vault VAULT_ADDR: http://vault-default:8200 VAULT_TOKEN: admin @@ -103,12 +103,12 @@ services: - /hurl/*.hurl - --test environment: - HURL_KEYCLOAK_ADMIN_PASSWORD: admin - HURL_KEYCLOAK_ADMIN_USER: admin - HURL_KEYCLOAK_BASE_URL: http://keycloak-default:8080 - HURL_KEYCLOAK_CLIENT_ID: agent - HURL_KEYCLOAK_CLIENT_SECRET: agent-secret - HURL_KEYCLOAK_REALM: identus + HURL_keycloak_admin_password: admin + HURL_keycloak_admin_user: admin + HURL_keycloak_base_url: http://keycloak-default:8080 + HURL_keycloak_client_id: agent + HURL_keycloak_client_secret: agent-secret + HURL_keycloak_realm: identus image: ghcr.io/orange-opensource/hurl:4.2.0 volumes: - ../.shared/hurl/simple_realm:/hurl diff --git a/examples/mt-keycloak-vault/tests/01_create_users.hurl b/examples/mt-keycloak-vault/hurl/01_create_users.hurl similarity index 95% rename from examples/mt-keycloak-vault/tests/01_create_users.hurl rename to examples/mt-keycloak-vault/hurl/01_create_users.hurl index 9a412b9668..2576c26564 100644 --- a/examples/mt-keycloak-vault/tests/01_create_users.hurl +++ b/examples/mt-keycloak-vault/hurl/01_create_users.hurl @@ -66,7 +66,7 @@ HTTP 200 issuer_access_token: jsonpath "$.access_token" # Create Issuer wallet -POST {{ agent_url }}/prism-agent/wallets +POST {{ agent_url }}/agent/wallets Authorization: Bearer {{ issuer_access_token }} { "name": "issuer-wallet" @@ -85,7 +85,7 @@ HTTP 200 holder_access_token: jsonpath "$.access_token" # Create Holder wallet -POST {{ agent_url }}/prism-agent/wallets +POST {{ agent_url }}/agent/wallets Authorization: Bearer {{ holder_access_token }} { "name": "holder-wallet" @@ -104,7 +104,7 @@ HTTP 200 verifier_access_token: jsonpath "$.access_token" # Create Verifier wallet -POST {{ agent_url }}/prism-agent/wallets +POST {{ agent_url }}/agent/wallets Authorization: Bearer {{ verifier_access_token }} { "name": "verifier-wallet" diff --git a/examples/mt-keycloak-vault/tests/02_jwt_flow.hurl b/examples/mt-keycloak-vault/hurl/02_jwt_flow.hurl similarity index 81% rename from examples/mt-keycloak-vault/tests/02_jwt_flow.hurl rename to examples/mt-keycloak-vault/hurl/02_jwt_flow.hurl index c1ceb033b4..4f7ca2e697 100644 --- a/examples/mt-keycloak-vault/tests/02_jwt_flow.hurl +++ b/examples/mt-keycloak-vault/hurl/02_jwt_flow.hurl @@ -39,7 +39,7 @@ verifier_access_token: jsonpath "$.access_token" # Prerequisites ############################## # Issuer create DID -POST {{ agent_url }}/prism-agent/did-registrar/dids +POST {{ agent_url }}/agent/did-registrar/dids Authorization: Bearer {{ issuer_access_token }} { "documentTemplate": { @@ -54,10 +54,10 @@ Authorization: Bearer {{ issuer_access_token }} } HTTP 201 [Captures] -issuer_did: jsonpath "$.longFormDid" regex "(did:prism:[a-z0-9]+):.+$" +issuer_did: jsonpath "$.longFormDid" # regex "(did:prism:[a-z0-9]+):.+$" # Holder create DID -POST {{ agent_url }}/prism-agent/did-registrar/dids +POST {{ agent_url }}/agent/did-registrar/dids Authorization: Bearer {{ holder_access_token }} { "documentTemplate": { @@ -78,7 +78,7 @@ holder_did: jsonpath "$.longFormDid" regex "(did:prism:[a-z0-9]+):.+$" # Issuance Connection ############################## # Inviter create connection -POST {{ agent_url }}/prism-agent/connections +POST {{ agent_url }}/agent/connections Authorization: Bearer {{ issuer_access_token }} { "label": "My Connection" @@ -89,7 +89,7 @@ raw_invitation: jsonpath "$.invitation.invitationUrl" regex ".*_oob=(.*)$" issuer_connection_id: jsonpath "$.connectionId" # Invitee accept connection -POST {{ agent_url }}/prism-agent/connection-invitations +POST {{ agent_url }}/agent/connection-invitations Authorization: Bearer {{ holder_access_token }} { "invitation": "{{ raw_invitation }}" @@ -99,7 +99,7 @@ HTTP 200 holder_connection_id: jsonpath "$.connectionId" # Wait for inviter connection status -GET {{ agent_url }}/prism-agent/connections/{{ issuer_connection_id }} +GET {{ agent_url }}/agent/connections/{{ issuer_connection_id }} Authorization: Bearer {{ issuer_access_token }} [Options] retry: -1 @@ -108,7 +108,7 @@ HTTP 200 jsonpath "$.state" == "ConnectionResponseSent" # Wait for invitee connection status -GET {{ agent_url }}/prism-agent/connections/{{ holder_connection_id }} +GET {{ agent_url }}/agent/connections/{{ holder_connection_id }} Authorization: Bearer {{ holder_access_token }} [Options] retry: -1 @@ -120,7 +120,7 @@ jsonpath "$.state" == "ConnectionResponseReceived" # Issuance ############################## # Issuer create credential offer -POST {{ agent_url }}/prism-agent/issue-credentials/credential-offers +POST {{ agent_url }}/agent/issue-credentials/credential-offers Authorization: Bearer {{ issuer_access_token }} { "claims": { @@ -138,7 +138,7 @@ issuer_cred_record_id: jsonpath "$.recordId" didcomm_issuing_thid: jsonpath "$.thid" # Holder wait for OfferReceived state -GET {{ agent_url }}/prism-agent/issue-credentials/records +GET {{ agent_url }}/agent/issue-credentials/records Authorization: Bearer {{ holder_access_token }} [QueryStringParams] thid: {{ didcomm_issuing_thid }} @@ -151,7 +151,7 @@ jsonpath "$.contents[0].protocolState" == "OfferReceived" holder_cred_record_id: jsonpath "$.contents[0].recordId" # Holder accept a credential-offer -POST {{ agent_url }}/prism-agent/issue-credentials/records/{{ holder_cred_record_id }}/accept-offer +POST {{ agent_url }}/agent/issue-credentials/records/{{ holder_cred_record_id }}/accept-offer Authorization: Bearer {{ holder_access_token }} { "subjectId": "{{ holder_did }}" @@ -159,7 +159,7 @@ Authorization: Bearer {{ holder_access_token }} HTTP 200 # Holder wait for CredentialReceived state -GET {{ agent_url }}/prism-agent/issue-credentials/records/{{ holder_cred_record_id }} +GET {{ agent_url }}/agent/issue-credentials/records/{{ holder_cred_record_id }} Authorization: Bearer {{ holder_access_token }} [Options] retry: -1 @@ -168,7 +168,7 @@ HTTP 200 jsonpath "$.protocolState" == "CredentialReceived" # Issuer wait for CredentialSent state -GET {{ agent_url }}/prism-agent/issue-credentials/records/{{ issuer_cred_record_id }} +GET {{ agent_url }}/agent/issue-credentials/records/{{ issuer_cred_record_id }} Authorization: Bearer {{ issuer_access_token }} [Options] retry: -1 @@ -180,7 +180,7 @@ jsonpath "$.protocolState" == "CredentialSent" # Presentation Connection ############################## # Inviter create connection -POST {{ agent_url }}/prism-agent/connections +POST {{ agent_url }}/agent/connections Authorization: Bearer {{ verifier_access_token }} { "label": "My Connection" @@ -191,7 +191,7 @@ raw_invitation: jsonpath "$.invitation.invitationUrl" regex ".*_oob=(.*)$" verifier_connection_id: jsonpath "$.connectionId" # Invitee accept connection -POST {{ agent_url }}/prism-agent/connection-invitations +POST {{ agent_url }}/agent/connection-invitations Authorization: Bearer {{ holder_access_token }} { "invitation": "{{ raw_invitation }}" @@ -201,7 +201,7 @@ HTTP 200 holder_connection_id: jsonpath "$.connectionId" # Wait for inviter connection status -GET {{ agent_url }}/prism-agent/connections/{{ verifier_connection_id }} +GET {{ agent_url }}/agent/connections/{{ verifier_connection_id }} Authorization: Bearer {{ verifier_access_token }} [Options] retry: -1 @@ -210,7 +210,7 @@ HTTP 200 jsonpath "$.state" == "ConnectionResponseSent" # Wait for invitee connection status -GET {{ agent_url }}/prism-agent/connections/{{ holder_connection_id }} +GET {{ agent_url }}/agent/connections/{{ holder_connection_id }} Authorization: Bearer {{ holder_access_token }} [Options] retry: -1 @@ -222,7 +222,7 @@ jsonpath "$.state" == "ConnectionResponseReceived" # Presentation ############################## # Verifier create presentation request -POST {{ agent_url }}/prism-agent/present-proof/presentations +POST {{ agent_url }}/agent/present-proof/presentations Authorization: Bearer {{ verifier_access_token }} { "connectionId": "{{ verifier_connection_id }}", @@ -238,7 +238,7 @@ verifier_presentation_id: jsonpath "$.presentationId" didcomm_presentation_thid: jsonpath "$.thid" # Holder wait for RequestReceived state -GET {{ agent_url }}/prism-agent/present-proof/presentations +GET {{ agent_url }}/agent/present-proof/presentations Authorization: Bearer {{ holder_access_token }} [QueryStringParams] thid: {{ didcomm_presentation_thid }} @@ -251,7 +251,7 @@ jsonpath "$.contents[0].status" == "RequestReceived" holder_presentation_id: jsonpath "$.contents[0].presentationId" # Holder accept presentation request -PATCH {{ agent_url }}/prism-agent/present-proof/presentations/{{ holder_presentation_id }} +PATCH {{ agent_url }}/agent/present-proof/presentations/{{ holder_presentation_id }} Authorization: Bearer {{ holder_access_token }} { "action": "request-accept", @@ -260,7 +260,7 @@ Authorization: Bearer {{ holder_access_token }} HTTP 200 # Holder wait for PresentationSent state -GET {{ agent_url }}/prism-agent/present-proof/presentations +GET {{ agent_url }}/agent/present-proof/presentations Authorization: Bearer {{ holder_access_token }} [QueryStringParams] thid: {{ didcomm_presentation_thid }} @@ -271,7 +271,7 @@ HTTP 200 jsonpath "$.contents[0].status" == "PresentationSent" # Verfiier wait for PresentationVerified state -GET {{ agent_url }}/prism-agent/present-proof/presentations +GET {{ agent_url }}/agent/present-proof/presentations Authorization: Bearer {{ verifier_access_token }} [QueryStringParams] thid: {{ didcomm_presentation_thid }} diff --git a/examples/mt-keycloak-vault/tests/local b/examples/mt-keycloak-vault/hurl/local similarity index 100% rename from examples/mt-keycloak-vault/tests/local rename to examples/mt-keycloak-vault/hurl/local diff --git a/examples/mt-keycloak/README.md b/examples/mt-keycloak/README.md new file mode 100644 index 0000000000..2e1d454908 --- /dev/null +++ b/examples/mt-keycloak/README.md @@ -0,0 +1,11 @@ +## Configuration + +| Exposed Service | Description | +|---------------------------------|--------------------------| +| `localhost:8080/prism-agent` | Multi-tenant Cloud Agent | +| `localhost:8080/keycloak/admin` | Keycloak | + +__Keycloak__ + +- Admin user `admin` +- Admin password `admin` diff --git a/examples/mt-keycloak/compose.yaml b/examples/mt-keycloak/compose.yaml index 9ec537bb58..8672828e72 100644 --- a/examples/mt-keycloak/compose.yaml +++ b/examples/mt-keycloak/compose.yaml @@ -5,7 +5,7 @@ configs: handle_path /didcomm* { reverse_proxy agent-default:8090 } - handle_path /prism-agent* { + handle_path /agent* { reverse_proxy agent-default:8085 } handle_path /keycloak* { @@ -46,10 +46,10 @@ services: POLLUX_DB_PASSWORD: postgres POLLUX_DB_PORT: '5432' POLLUX_DB_USER: postgres - POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-default:8080/prism-agent + POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-default:8080/agent PRISM_NODE_HOST: node PRISM_NODE_PORT: '50053' - REST_SERVICE_URL: http://caddy-default:8080/prism-agent + REST_SERVICE_URL: http://caddy-default:8080/agent SECRET_STORAGE_BACKEND: postgres image: ghcr.io/hyperledger/identus-cloud-agent:1.37.0 restart: always @@ -101,12 +101,12 @@ services: - /hurl/*.hurl - --test environment: - HURL_KEYCLOAK_ADMIN_PASSWORD: admin - HURL_KEYCLOAK_ADMIN_USER: admin - HURL_KEYCLOAK_BASE_URL: http://keycloak-default:8080 - HURL_KEYCLOAK_CLIENT_ID: agent - HURL_KEYCLOAK_CLIENT_SECRET: agent-secret - HURL_KEYCLOAK_REALM: identus + HURL_keycloak_admin_password: admin + HURL_keycloak_admin_user: admin + HURL_keycloak_base_url: http://keycloak-default:8080 + HURL_keycloak_client_id: agent + HURL_keycloak_client_secret: agent-secret + HURL_keycloak_realm: identus image: ghcr.io/orange-opensource/hurl:4.2.0 volumes: - ../.shared/hurl/simple_realm:/hurl diff --git a/examples/mt-keycloak/tests/01_create_users.hurl b/examples/mt-keycloak/hurl/01_create_users.hurl similarity index 95% rename from examples/mt-keycloak/tests/01_create_users.hurl rename to examples/mt-keycloak/hurl/01_create_users.hurl index 9a412b9668..2576c26564 100644 --- a/examples/mt-keycloak/tests/01_create_users.hurl +++ b/examples/mt-keycloak/hurl/01_create_users.hurl @@ -66,7 +66,7 @@ HTTP 200 issuer_access_token: jsonpath "$.access_token" # Create Issuer wallet -POST {{ agent_url }}/prism-agent/wallets +POST {{ agent_url }}/agent/wallets Authorization: Bearer {{ issuer_access_token }} { "name": "issuer-wallet" @@ -85,7 +85,7 @@ HTTP 200 holder_access_token: jsonpath "$.access_token" # Create Holder wallet -POST {{ agent_url }}/prism-agent/wallets +POST {{ agent_url }}/agent/wallets Authorization: Bearer {{ holder_access_token }} { "name": "holder-wallet" @@ -104,7 +104,7 @@ HTTP 200 verifier_access_token: jsonpath "$.access_token" # Create Verifier wallet -POST {{ agent_url }}/prism-agent/wallets +POST {{ agent_url }}/agent/wallets Authorization: Bearer {{ verifier_access_token }} { "name": "verifier-wallet" diff --git a/examples/mt-keycloak/tests/02_jwt_flow.hurl b/examples/mt-keycloak/hurl/02_jwt_flow.hurl similarity index 81% rename from examples/mt-keycloak/tests/02_jwt_flow.hurl rename to examples/mt-keycloak/hurl/02_jwt_flow.hurl index 2169d2f777..4565f4e877 100644 --- a/examples/mt-keycloak/tests/02_jwt_flow.hurl +++ b/examples/mt-keycloak/hurl/02_jwt_flow.hurl @@ -39,7 +39,7 @@ verifier_access_token: jsonpath "$.access_token" # Prerequisites ############################## # Issuer create DID -POST {{ agent_url }}/prism-agent/did-registrar/dids +POST {{ agent_url }}/agent/did-registrar/dids Authorization: Bearer {{ issuer_access_token }} { "documentTemplate": { @@ -57,12 +57,12 @@ HTTP 201 issuer_did: jsonpath "$.longFormDid" regex "(did:prism:[a-z0-9]+):.+$" # Issuer publish DID -POST {{ agent_url }}/prism-agent/did-registrar/dids/{{ issuer_did }}/publications +POST {{ agent_url }}/agent/did-registrar/dids/{{ issuer_did }}/publications Authorization: Bearer {{ issuer_access_token }} HTTP 202 # Issuer wait for DID to be published -GET {{ agent_url }}/prism-agent/did-registrar/dids/{{ issuer_did }} +GET {{ agent_url }}/agent/did-registrar/dids/{{ issuer_did }} Authorization: Bearer {{ issuer_access_token }} [Options] retry: -1 @@ -71,7 +71,7 @@ HTTP 200 jsonpath "$.status" == "PUBLISHED" # Holder create DID -POST {{ agent_url }}/prism-agent/did-registrar/dids +POST {{ agent_url }}/agent/did-registrar/dids Authorization: Bearer {{ holder_access_token }} { "documentTemplate": { @@ -92,7 +92,7 @@ holder_did: jsonpath "$.longFormDid" # Issuance Connection ############################## # Inviter create connection -POST {{ agent_url }}/prism-agent/connections +POST {{ agent_url }}/agent/connections Authorization: Bearer {{ issuer_access_token }} { "label": "My Connection" @@ -103,7 +103,7 @@ raw_invitation: jsonpath "$.invitation.invitationUrl" regex ".*_oob=(.*)$" issuer_connection_id: jsonpath "$.connectionId" # Invitee accept connection -POST {{ agent_url }}/prism-agent/connection-invitations +POST {{ agent_url }}/agent/connection-invitations Authorization: Bearer {{ holder_access_token }} { "invitation": "{{ raw_invitation }}" @@ -113,7 +113,7 @@ HTTP 200 holder_connection_id: jsonpath "$.connectionId" # Wait for inviter connection status -GET {{ agent_url }}/prism-agent/connections/{{ issuer_connection_id }} +GET {{ agent_url }}/agent/connections/{{ issuer_connection_id }} Authorization: Bearer {{ issuer_access_token }} [Options] retry: -1 @@ -122,7 +122,7 @@ HTTP 200 jsonpath "$.state" == "ConnectionResponseSent" # Wait for invitee connection status -GET {{ agent_url }}/prism-agent/connections/{{ holder_connection_id }} +GET {{ agent_url }}/agent/connections/{{ holder_connection_id }} Authorization: Bearer {{ holder_access_token }} [Options] retry: -1 @@ -134,7 +134,7 @@ jsonpath "$.state" == "ConnectionResponseReceived" # Issuance ############################## # Issuer create credential offer -POST {{ agent_url }}/prism-agent/issue-credentials/credential-offers +POST {{ agent_url }}/agent/issue-credentials/credential-offers Authorization: Bearer {{ issuer_access_token }} { "claims": { @@ -152,7 +152,7 @@ issuer_cred_record_id: jsonpath "$.recordId" didcomm_issuing_thid: jsonpath "$.thid" # Holder wait for OfferReceived state -GET {{ agent_url }}/prism-agent/issue-credentials/records +GET {{ agent_url }}/agent/issue-credentials/records Authorization: Bearer {{ holder_access_token }} [QueryStringParams] thid: {{ didcomm_issuing_thid }} @@ -165,7 +165,7 @@ jsonpath "$.contents[0].protocolState" == "OfferReceived" holder_cred_record_id: jsonpath "$.contents[0].recordId" # Holder accept a credential-offer -POST {{ agent_url }}/prism-agent/issue-credentials/records/{{ holder_cred_record_id }}/accept-offer +POST {{ agent_url }}/agent/issue-credentials/records/{{ holder_cred_record_id }}/accept-offer Authorization: Bearer {{ holder_access_token }} { "subjectId": "{{ holder_did }}" @@ -173,7 +173,7 @@ Authorization: Bearer {{ holder_access_token }} HTTP 200 # Holder wait for CredentialReceived state -GET {{ agent_url }}/prism-agent/issue-credentials/records/{{ holder_cred_record_id }} +GET {{ agent_url }}/agent/issue-credentials/records/{{ holder_cred_record_id }} Authorization: Bearer {{ holder_access_token }} [Options] retry: -1 @@ -182,7 +182,7 @@ HTTP 200 jsonpath "$.protocolState" == "CredentialReceived" # Issuer wait for CredentialSent state -GET {{ agent_url }}/prism-agent/issue-credentials/records/{{ issuer_cred_record_id }} +GET {{ agent_url }}/agent/issue-credentials/records/{{ issuer_cred_record_id }} Authorization: Bearer {{ issuer_access_token }} [Options] retry: -1 @@ -194,7 +194,7 @@ jsonpath "$.protocolState" == "CredentialSent" # Presentation Connection ############################## # Inviter create connection -POST {{ agent_url }}/prism-agent/connections +POST {{ agent_url }}/agent/connections Authorization: Bearer {{ verifier_access_token }} { "label": "My Connection" @@ -205,7 +205,7 @@ raw_invitation: jsonpath "$.invitation.invitationUrl" regex ".*_oob=(.*)$" verifier_connection_id: jsonpath "$.connectionId" # Invitee accept connection -POST {{ agent_url }}/prism-agent/connection-invitations +POST {{ agent_url }}/agent/connection-invitations Authorization: Bearer {{ holder_access_token }} { "invitation": "{{ raw_invitation }}" @@ -215,7 +215,7 @@ HTTP 200 holder_connection_id: jsonpath "$.connectionId" # Wait for inviter connection status -GET {{ agent_url }}/prism-agent/connections/{{ verifier_connection_id }} +GET {{ agent_url }}/agent/connections/{{ verifier_connection_id }} Authorization: Bearer {{ verifier_access_token }} [Options] retry: -1 @@ -224,7 +224,7 @@ HTTP 200 jsonpath "$.state" == "ConnectionResponseSent" # Wait for invitee connection status -GET {{ agent_url }}/prism-agent/connections/{{ holder_connection_id }} +GET {{ agent_url }}/agent/connections/{{ holder_connection_id }} Authorization: Bearer {{ holder_access_token }} [Options] retry: -1 @@ -236,7 +236,7 @@ jsonpath "$.state" == "ConnectionResponseReceived" # Presentation ############################## # Verifier create presentation request -POST {{ agent_url }}/prism-agent/present-proof/presentations +POST {{ agent_url }}/agent/present-proof/presentations Authorization: Bearer {{ verifier_access_token }} { "connectionId": "{{ verifier_connection_id }}", @@ -252,7 +252,7 @@ verifier_presentation_id: jsonpath "$.presentationId" didcomm_presentation_thid: jsonpath "$.thid" # Holder wait for RequestReceived state -GET {{ agent_url }}/prism-agent/present-proof/presentations +GET {{ agent_url }}/agent/present-proof/presentations Authorization: Bearer {{ holder_access_token }} [QueryStringParams] thid: {{ didcomm_presentation_thid }} @@ -265,7 +265,7 @@ jsonpath "$.contents[0].status" == "RequestReceived" holder_presentation_id: jsonpath "$.contents[0].presentationId" # Holder accept presentation request -PATCH {{ agent_url }}/prism-agent/present-proof/presentations/{{ holder_presentation_id }} +PATCH {{ agent_url }}/agent/present-proof/presentations/{{ holder_presentation_id }} Authorization: Bearer {{ holder_access_token }} { "action": "request-accept", @@ -274,7 +274,7 @@ Authorization: Bearer {{ holder_access_token }} HTTP 200 # Holder wait for PresentationSent state -GET {{ agent_url }}/prism-agent/present-proof/presentations +GET {{ agent_url }}/agent/present-proof/presentations Authorization: Bearer {{ holder_access_token }} [QueryStringParams] thid: {{ didcomm_presentation_thid }} @@ -285,7 +285,7 @@ HTTP 200 jsonpath "$.contents[0].status" == "PresentationSent" # Verfiier wait for PresentationVerified state -GET {{ agent_url }}/prism-agent/present-proof/presentations +GET {{ agent_url }}/agent/present-proof/presentations Authorization: Bearer {{ verifier_access_token }} [QueryStringParams] thid: {{ didcomm_presentation_thid }} diff --git a/examples/mt-keycloak/tests/local b/examples/mt-keycloak/hurl/local similarity index 100% rename from examples/mt-keycloak/tests/local rename to examples/mt-keycloak/hurl/local diff --git a/examples/mt/README.md b/examples/mt/README.md new file mode 100644 index 0000000000..7cb3752063 --- /dev/null +++ b/examples/mt/README.md @@ -0,0 +1,5 @@ +## Configuration + +| Exposed Service | Description | +|------------------------------|--------------------------| +| `localhost:8080/prism-agent` | Multi-tenant Cloud Agent | diff --git a/examples/mt/compose.yaml b/examples/mt/compose.yaml index 053839c12a..bc1858a68f 100644 --- a/examples/mt/compose.yaml +++ b/examples/mt/compose.yaml @@ -5,7 +5,7 @@ configs: handle_path /didcomm* { reverse_proxy agent-default:8090 } - handle_path /prism-agent* { + handle_path /agent* { reverse_proxy agent-default:8085 } handle_path /keycloak* { @@ -39,10 +39,10 @@ services: POLLUX_DB_PASSWORD: postgres POLLUX_DB_PORT: '5432' POLLUX_DB_USER: postgres - POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-default:8080/prism-agent + POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-default:8080/agent PRISM_NODE_HOST: node PRISM_NODE_PORT: '50053' - REST_SERVICE_URL: http://caddy-default:8080/prism-agent + REST_SERVICE_URL: http://caddy-default:8080/agent SECRET_STORAGE_BACKEND: postgres image: ghcr.io/hyperledger/identus-cloud-agent:1.37.0 restart: always diff --git a/examples/st-multi/README.me b/examples/st-multi/README.me new file mode 100644 index 0000000000..9483ed9d44 --- /dev/null +++ b/examples/st-multi/README.me @@ -0,0 +1,7 @@ +## Configuration + +|Exposed Service|Description| +|-|-| +|`localhost:8080/prism-agent`|Single-tenant Cloud Agent#1 (issuer)| +|`localhost:8081/prism-agent`|Single-tenant Cloud Agent#2 (holder)| +|`localhost:8082/prism-agent`|Single-tenant Cloud Agent#3 (verifier)| diff --git a/examples/st-multi/compose.yaml b/examples/st-multi/compose.yaml index 2607de85f9..54f501fce6 100644 --- a/examples/st-multi/compose.yaml +++ b/examples/st-multi/compose.yaml @@ -5,7 +5,7 @@ configs: handle_path /didcomm* { reverse_proxy agent-holder:8090 } - handle_path /prism-agent* { + handle_path /agent* { reverse_proxy agent-holder:8085 } handle_path /keycloak* { @@ -21,7 +21,7 @@ configs: handle_path /didcomm* { reverse_proxy agent-issuer:8090 } - handle_path /prism-agent* { + handle_path /agent* { reverse_proxy agent-issuer:8085 } handle_path /keycloak* { @@ -37,7 +37,7 @@ configs: handle_path /didcomm* { reverse_proxy agent-verifier:8090 } - handle_path /prism-agent* { + handle_path /agent* { reverse_proxy agent-verifier:8085 } handle_path /keycloak* { @@ -71,10 +71,10 @@ services: POLLUX_DB_PASSWORD: postgres POLLUX_DB_PORT: '5432' POLLUX_DB_USER: postgres - POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-holder:8081/prism-agent + POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-holder:8081/agent PRISM_NODE_HOST: node PRISM_NODE_PORT: '50053' - REST_SERVICE_URL: http://caddy-holder:8081/prism-agent + REST_SERVICE_URL: http://caddy-holder:8081/agent SECRET_STORAGE_BACKEND: postgres image: ghcr.io/hyperledger/identus-cloud-agent:1.37.0 restart: always @@ -101,10 +101,10 @@ services: POLLUX_DB_PASSWORD: postgres POLLUX_DB_PORT: '5432' POLLUX_DB_USER: postgres - POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-issuer:8080/prism-agent + POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-issuer:8080/agent PRISM_NODE_HOST: node PRISM_NODE_PORT: '50053' - REST_SERVICE_URL: http://caddy-issuer:8080/prism-agent + REST_SERVICE_URL: http://caddy-issuer:8080/agent SECRET_STORAGE_BACKEND: postgres image: ghcr.io/hyperledger/identus-cloud-agent:1.37.0 restart: always @@ -131,10 +131,10 @@ services: POLLUX_DB_PASSWORD: postgres POLLUX_DB_PORT: '5432' POLLUX_DB_USER: postgres - POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-verifier:8082/prism-agent + POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-verifier:8082/agent PRISM_NODE_HOST: node PRISM_NODE_PORT: '50053' - REST_SERVICE_URL: http://caddy-verifier:8082/prism-agent + REST_SERVICE_URL: http://caddy-verifier:8082/agent SECRET_STORAGE_BACKEND: postgres image: ghcr.io/hyperledger/identus-cloud-agent:1.37.0 restart: always diff --git a/examples/st-multi/tests/01_jwt_flow.hurl b/examples/st-multi/hurl/01_jwt_flow.hurl similarity index 74% rename from examples/st-multi/tests/01_jwt_flow.hurl rename to examples/st-multi/hurl/01_jwt_flow.hurl index 94bc540275..7e5e1b9823 100644 --- a/examples/st-multi/tests/01_jwt_flow.hurl +++ b/examples/st-multi/hurl/01_jwt_flow.hurl @@ -2,7 +2,7 @@ # Prerequisites ############################## # Issuer create DID -POST {{ issuer_url }}/prism-agent/did-registrar/dids +POST {{ issuer_url }}/agent/did-registrar/dids { "documentTemplate": { "publicKeys": [ @@ -19,11 +19,11 @@ HTTP 201 issuer_did: jsonpath "$.longFormDid" regex "(did:prism:[a-z0-9]+):.+$" # Issuer publish DID -POST {{ issuer_url }}/prism-agent/did-registrar/dids/{{ issuer_did }}/publications +POST {{ issuer_url }}/agent/did-registrar/dids/{{ issuer_did }}/publications HTTP 202 # Issuer wait for DID to be published -GET {{ issuer_url }}/prism-agent/did-registrar/dids/{{ issuer_did }} +GET {{ issuer_url }}/agent/did-registrar/dids/{{ issuer_did }} [Options] retry: -1 HTTP 200 @@ -31,7 +31,7 @@ HTTP 200 jsonpath "$.status" == "PUBLISHED" # Holder create DID -POST {{ holder_url }}/prism-agent/did-registrar/dids +POST {{ holder_url }}/agent/did-registrar/dids { "documentTemplate": { "publicKeys": [ @@ -51,7 +51,7 @@ holder_did: jsonpath "$.longFormDid" # Issuance Connection ############################## # Inviter create connection -POST {{ issuer_url }}/prism-agent/connections +POST {{ issuer_url }}/agent/connections { "label": "My Connection" } @@ -61,7 +61,7 @@ raw_invitation: jsonpath "$.invitation.invitationUrl" regex ".*_oob=(.*)$" issuer_connection_id: jsonpath "$.connectionId" # Invitee accept connection -POST {{ holder_url }}/prism-agent/connection-invitations +POST {{ holder_url }}/agent/connection-invitations { "invitation": "{{ raw_invitation }}" } @@ -70,7 +70,7 @@ HTTP 200 holder_connection_id: jsonpath "$.connectionId" # Wait for inviter connection status -GET {{ issuer_url }}/prism-agent/connections/{{ issuer_connection_id }} +GET {{ issuer_url }}/agent/connections/{{ issuer_connection_id }} [Options] retry: -1 HTTP 200 @@ -78,7 +78,7 @@ HTTP 200 jsonpath "$.state" == "ConnectionResponseSent" # Wait for invitee connection status -GET {{ holder_url }}/prism-agent/connections/{{ holder_connection_id }} +GET {{ holder_url }}/agent/connections/{{ holder_connection_id }} [Options] retry: -1 HTTP 200 @@ -89,7 +89,7 @@ jsonpath "$.state" == "ConnectionResponseReceived" # Issuance ############################## # Issuer create credential offer -POST {{ issuer_url }}/prism-agent/issue-credentials/credential-offers +POST {{ issuer_url }}/agent/issue-credentials/credential-offers { "claims": { "emailAddress": "alice@wonderland.com", @@ -106,7 +106,7 @@ issuer_cred_record_id: jsonpath "$.recordId" didcomm_issuing_thid: jsonpath "$.thid" # Holder wait for OfferReceived state -GET {{ holder_url }}/prism-agent/issue-credentials/records +GET {{ holder_url }}/agent/issue-credentials/records [QueryStringParams] thid: {{ didcomm_issuing_thid }} [Options] @@ -118,14 +118,14 @@ jsonpath "$.contents[0].protocolState" == "OfferReceived" holder_cred_record_id: jsonpath "$.contents[0].recordId" # Holder accept a credential-offer -POST {{ holder_url }}/prism-agent/issue-credentials/records/{{ holder_cred_record_id }}/accept-offer +POST {{ holder_url }}/agent/issue-credentials/records/{{ holder_cred_record_id }}/accept-offer { "subjectId": "{{ holder_did }}" } HTTP 200 # Holder wait for CredentialReceived state -GET {{ holder_url }}/prism-agent/issue-credentials/records/{{ holder_cred_record_id }} +GET {{ holder_url }}/agent/issue-credentials/records/{{ holder_cred_record_id }} [Options] retry: -1 HTTP 200 @@ -133,7 +133,7 @@ HTTP 200 jsonpath "$.protocolState" == "CredentialReceived" # Issuer wait for CredentialSent state -GET {{ issuer_url }}/prism-agent/issue-credentials/records/{{ issuer_cred_record_id }} +GET {{ issuer_url }}/agent/issue-credentials/records/{{ issuer_cred_record_id }} [Options] retry: -1 HTTP 200 @@ -144,7 +144,7 @@ jsonpath "$.protocolState" == "CredentialSent" # Presentation Connection ############################## # Inviter create connection -POST {{ verifier_url }}/prism-agent/connections +POST {{ verifier_url }}/agent/connections { "label": "My Connection" } @@ -154,7 +154,7 @@ raw_invitation: jsonpath "$.invitation.invitationUrl" regex ".*_oob=(.*)$" verifier_connection_id: jsonpath "$.connectionId" # Invitee accept connection -POST {{ holder_url }}/prism-agent/connection-invitations +POST {{ holder_url }}/agent/connection-invitations { "invitation": "{{ raw_invitation }}" } @@ -163,7 +163,7 @@ HTTP 200 holder_connection_id: jsonpath "$.connectionId" # Wait for inviter connection status -GET {{ verifier_url }}/prism-agent/connections/{{ verifier_connection_id }} +GET {{ verifier_url }}/agent/connections/{{ verifier_connection_id }} [Options] retry: -1 HTTP 200 @@ -171,7 +171,7 @@ HTTP 200 jsonpath "$.state" == "ConnectionResponseSent" # Wait for invitee connection status -GET {{ holder_url }}/prism-agent/connections/{{ holder_connection_id }} +GET {{ holder_url }}/agent/connections/{{ holder_connection_id }} [Options] retry: -1 HTTP 200 @@ -182,7 +182,7 @@ jsonpath "$.state" == "ConnectionResponseReceived" # Presentation ############################## # Verifier create presentation request -POST {{ verifier_url }}/prism-agent/present-proof/presentations +POST {{ verifier_url }}/agent/present-proof/presentations { "connectionId": "{{ verifier_connection_id }}", "proofs":[], @@ -197,7 +197,7 @@ verifier_presentation_id: jsonpath "$.presentationId" didcomm_presentation_thid: jsonpath "$.thid" # Holder wait for RequestReceived state -GET {{ holder_url }}/prism-agent/present-proof/presentations +GET {{ holder_url }}/agent/present-proof/presentations [QueryStringParams] thid: {{ didcomm_presentation_thid }} [Options] @@ -209,7 +209,7 @@ jsonpath "$.contents[0].status" == "RequestReceived" holder_presentation_id: jsonpath "$.contents[0].presentationId" # Holder accept presentation request -PATCH {{ holder_url }}/prism-agent/present-proof/presentations/{{ holder_presentation_id }} +PATCH {{ holder_url }}/agent/present-proof/presentations/{{ holder_presentation_id }} { "action": "request-accept", "proofId": ["{{ holder_cred_record_id }}"] @@ -217,7 +217,7 @@ PATCH {{ holder_url }}/prism-agent/present-proof/presentations/{{ holder_present HTTP 200 # Holder wait for PresentationSent state -GET {{ holder_url }}/prism-agent/present-proof/presentations +GET {{ holder_url }}/agent/present-proof/presentations [QueryStringParams] thid: {{ didcomm_presentation_thid }} [Options] @@ -227,7 +227,7 @@ HTTP 200 jsonpath "$.contents[0].status" == "PresentationSent" # Verfiier wait for PresentationVerified state -GET {{ verifier_url }}/prism-agent/present-proof/presentations +GET {{ verifier_url }}/agent/present-proof/presentations [QueryStringParams] thid: {{ didcomm_presentation_thid }} [Options] diff --git a/examples/st-multi/tests/local b/examples/st-multi/hurl/local similarity index 100% rename from examples/st-multi/tests/local rename to examples/st-multi/hurl/local diff --git a/examples/st-oid4vci/compose.yaml b/examples/st-oid4vci/compose.yaml index 7d411ff244..5de842daa2 100644 --- a/examples/st-oid4vci/compose.yaml +++ b/examples/st-oid4vci/compose.yaml @@ -5,7 +5,7 @@ configs: handle_path /didcomm* { reverse_proxy agent-issuer:8090 } - handle_path /prism-agent* { + handle_path /agent* { reverse_proxy agent-issuer:8085 } handle_path /keycloak* { @@ -39,10 +39,10 @@ services: POLLUX_DB_PASSWORD: postgres POLLUX_DB_PORT: '5432' POLLUX_DB_USER: postgres - POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-issuer:8080/prism-agent + POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-issuer:8080/agent PRISM_NODE_HOST: node PRISM_NODE_PORT: '50053' - REST_SERVICE_URL: http://caddy-issuer:8080/prism-agent + REST_SERVICE_URL: http://caddy-issuer:8080/agent SECRET_STORAGE_BACKEND: postgres image: ghcr.io/hyperledger/identus-cloud-agent:1.37.0 restart: always diff --git a/examples/st-vault/README.md b/examples/st-vault/README.md new file mode 100644 index 0000000000..338d74d18b --- /dev/null +++ b/examples/st-vault/README.md @@ -0,0 +1,10 @@ +## Configuration + +| Exposed Service | Description | +|------------------------------|---------------------------| +| `localhost:8080/prism-agent` | Single-tenant Cloud Agent | +| `localhost:8200` | Vault | + +__Vault__ + +- Root token `admin` diff --git a/examples/st-vault/compose.yaml b/examples/st-vault/compose.yaml index 89cbcaaf0f..a903091b13 100644 --- a/examples/st-vault/compose.yaml +++ b/examples/st-vault/compose.yaml @@ -5,7 +5,7 @@ configs: handle_path /didcomm* { reverse_proxy agent-issuer:8090 } - handle_path /prism-agent* { + handle_path /agent* { reverse_proxy agent-issuer:8085 } handle_path /keycloak* { @@ -39,10 +39,10 @@ services: POLLUX_DB_PASSWORD: postgres POLLUX_DB_PORT: '5432' POLLUX_DB_USER: postgres - POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-issuer:8080/prism-agent + POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-issuer:8080/agent PRISM_NODE_HOST: node PRISM_NODE_PORT: '50053' - REST_SERVICE_URL: http://caddy-issuer:8080/prism-agent + REST_SERVICE_URL: http://caddy-issuer:8080/agent SECRET_STORAGE_BACKEND: vault VAULT_ADDR: http://vault-issuer:8200 VAULT_TOKEN: admin diff --git a/examples/st/README.md b/examples/st/README.md new file mode 100644 index 0000000000..703a0bc6ad --- /dev/null +++ b/examples/st/README.md @@ -0,0 +1,5 @@ +## Configuration + +| Exposed Service | Description | +|------------------------|---------------------------| +| `localhost:8080/agent` | Single-tenant Cloud Agent | diff --git a/examples/st/compose.yaml b/examples/st/compose.yaml index fe40fcd7bd..9efa65e481 100644 --- a/examples/st/compose.yaml +++ b/examples/st/compose.yaml @@ -5,7 +5,7 @@ configs: handle_path /didcomm* { reverse_proxy agent-issuer:8090 } - handle_path /prism-agent* { + handle_path /agent* { reverse_proxy agent-issuer:8085 } handle_path /keycloak* { @@ -39,10 +39,10 @@ services: POLLUX_DB_PASSWORD: postgres POLLUX_DB_PORT: '5432' POLLUX_DB_USER: postgres - POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-issuer:8080/prism-agent + POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URL: http://caddy-issuer:8080/agent PRISM_NODE_HOST: node PRISM_NODE_PORT: '50053' - REST_SERVICE_URL: http://caddy-issuer:8080/prism-agent + REST_SERVICE_URL: http://caddy-issuer:8080/agent SECRET_STORAGE_BACKEND: postgres image: ghcr.io/hyperledger/identus-cloud-agent:1.37.0 restart: always