diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 597eb90567..fba9992525 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -23,6 +23,7 @@ jobs: GITHUB_ACTOR: ${{ secrets.ATALA_GITHUB_ACTOR }} GITHUB_TOKEN: ${{ secrets.ATALA_GITHUB_TOKEN }} SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }} + _JAVA_OPTIONS: -Djava.net.preferIPv4Stack=true runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 @@ -31,9 +32,9 @@ jobs: ref: ${{ github.event.inputs.release-branch }} fetch-depth: 0 - name: Setup Java and Scala - uses: olafurpg/setup-scala@v13 + uses: olafurpg/setup-scala@v14 with: - java-version: openjdk@1.11 + java-version: openjdk@1.17 - name: Setup Node.js uses: actions/setup-node@v3 with: @@ -41,7 +42,7 @@ jobs: - name: Setup Helm uses: azure/setup-helm@v3 with: - version: '3.12.2' # default is latest (stable) + version: "3.12.2" # default is latest (stable) id: install - name: Setup yq - portable yaml processor uses: mikefarah/yq@v4.34.2 diff --git a/CHANGELOG.md b/CHANGELOG.md index b2855d4fca..e485581170 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,24 @@ +# [1.19.0-snapshot.1](https://github.com/hyperledger-labs/open-enterprise-agent/compare/prism-agent-v1.18.0...prism-agent-v1.19.0-snapshot.1) (2023-11-16) + + +### Bug Fixes + +* check for active RLS on db application user ([#775](https://github.com/hyperledger-labs/open-enterprise-agent/issues/775)) ([a792f43](https://github.com/hyperledger-labs/open-enterprise-agent/commit/a792f43eaae0ec2cd30db2ea3308deded7a1a935)) +* explicitly define transitive dependencies of resteasyclient ([99a8aaa](https://github.com/hyperledger-labs/open-enterprise-agent/commit/99a8aaa2ab38d9dcc5621f9e875cab14b050a1ad)) +* make sure test libs dont leak to runnable ([704e49e](https://github.com/hyperledger-labs/open-enterprise-agent/commit/704e49ebe1edd4458d8b73073b4e7dbef21918ae)) +* **pollux:** V16 migration is failing to add FK constraint because of type mismatch ([#782](https://github.com/hyperledger-labs/open-enterprise-agent/issues/782)) ([c87beb0](https://github.com/hyperledger-labs/open-enterprise-agent/commit/c87beb0478d4b3d54709e09597c42c23878d101e)) +* **prism-agent:** more descriptive error response for validateDID in issue flow ([#783](https://github.com/hyperledger-labs/open-enterprise-agent/issues/783)) ([b99a737](https://github.com/hyperledger-labs/open-enterprise-agent/commit/b99a73718a06f4b97d933ba2e3220593f8d4e825)) +* **prism-agent:** perform percent encoding on auth header for token introspection request ([#780](https://github.com/hyperledger-labs/open-enterprise-agent/issues/780)) ([03d43c9](https://github.com/hyperledger-labs/open-enterprise-agent/commit/03d43c98d8ab64e5b47830d95a6356f9d6dd1b82)) + + +### Features + +* Accept goal and goalCode to create connection invitation ([#785](https://github.com/hyperledger-labs/open-enterprise-agent/issues/785)) ([71c776b](https://github.com/hyperledger-labs/open-enterprise-agent/commit/71c776baa2caf3ca610508dba805f037fd7d6e29)) +* **docs:** ADR for revocation status list expansion strategy ([#773](https://github.com/hyperledger-labs/open-enterprise-agent/issues/773)) ([7ad6427](https://github.com/hyperledger-labs/open-enterprise-agent/commit/7ad64277acb2bffe12524c4bfb68f687689b5b2e)) +* Keycloak container support with clients and PermissionManagement service ([#755](https://github.com/hyperledger-labs/open-enterprise-agent/issues/755)) ([a1846aa](https://github.com/hyperledger-labs/open-enterprise-agent/commit/a1846aaa84202b55d48ea8556aad8cbbb8260f4d)) +* **pollux:** Add migrations needed for JWT revocation ([#778](https://github.com/hyperledger-labs/open-enterprise-agent/issues/778)) ([471956e](https://github.com/hyperledger-labs/open-enterprise-agent/commit/471956e92893a7237cabca2fb065adb417678d37)) +* **prism-agent:** add multi-tenant wallet self-service capability ([#779](https://github.com/hyperledger-labs/open-enterprise-agent/issues/779)) ([f2e74cd](https://github.com/hyperledger-labs/open-enterprise-agent/commit/f2e74cd1957e7d76f6dccadd02b1ca5b794d02b1)) + # [1.18.0](https://github.com/hyperledger-labs/open-enterprise-agent/compare/prism-agent-v1.17.0...prism-agent-v1.18.0) (2023-10-24) diff --git a/DEPENDENCIES.md b/DEPENDENCIES.md index 98a7c20683..b37c40cfa3 100644 --- a/DEPENDENCIES.md +++ b/DEPENDENCIES.md @@ -2,6 +2,7 @@ Category | License | Dependency | Notes --- | --- | --- | --- +Apache | [APL2](http://www.apache.org/licenses/LICENSE-2.0.txt) | [net.reactivecore # circe-json-schema_2.13 # 0.3.0](https://github.com/reactivecore/rc-circe-json-schema) | Apache | [Apache 2](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.thesamet.scalapb # lenses_3 # 0.11.13](https://github.com/scalapb/ScalaPB) | Apache | [Apache 2](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.thesamet.scalapb # scalapb-runtime-grpc_3 # 0.11.13](https://github.com/scalapb/ScalaPB) | Apache | [Apache 2](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.thesamet.scalapb # scalapb-runtime_3 # 0.11.13](https://github.com/scalapb/ScalaPB) | @@ -72,13 +73,20 @@ Apache | [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0) | [io. Apache | [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0) | [io.getquill # quill-sql_3 # 4.7.3](https://zio.dev/zio-protoquill) | Apache | [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0) | [io.getquill # quill-util_3 # 4.7.3](https://zio.dev/zio-quill) | Apache | [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0) | [io.getquill # quill-zio_3 # 4.7.3](https://zio.dev/zio-protoquill) | +Apache | [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [jakarta.validation # jakarta.validation-api # 3.0.2](https://beanvalidation.org) | Apache | [Apache License 2.0](https://repository.jboss.org/licenses/apache-2.0.txt) | [org.jboss.logging # jboss-logging # 3.5.1.Final](http://www.jboss.org) | +Apache | [Apache License 2.0](https://repository.jboss.org/licenses/apache-2.0.txt) | org.jboss.resteasy # resteasy-client # 6.2.4.Final | +Apache | [Apache License 2.0](https://repository.jboss.org/licenses/apache-2.0.txt) | org.jboss.resteasy # resteasy-client-api # 6.2.4.Final | +Apache | [Apache License 2.0](https://repository.jboss.org/licenses/apache-2.0.txt) | org.jboss.resteasy # resteasy-core # 6.2.4.Final | +Apache | [Apache License 2.0](https://repository.jboss.org/licenses/apache-2.0.txt) | org.jboss.resteasy # resteasy-core-spi # 6.2.4.Final | +Apache | [Apache License 2.0](https://repository.jboss.org/licenses/apache-2.0.txt) | org.jboss.resteasy # resteasy-jackson2-provider # 6.2.4.Final | Apache | [Apache License Version 2.0](https://www.apache.org/licenses/LICENSE-2.0) | [com.networknt # json-schema-validator # 1.0.86](https://github.com/networknt/json-schema-validator) | Apache | [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.ethlo.time # itu # 1.7.0](https://github.com/ethlo/itu) | Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.github.stephenc.jcip # jcip-annotations # 1.0-1](http://stephenc.github.com/jcip-annotations) | Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.google.crypto.tink # tink # 1.6.1](http://github.com/google/tink) | Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.google.guava # guava # 31.0.1-android](https://github.com/google/guava) | Apache | [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [commons-codec # commons-codec # 1.11](http://commons.apache.org/proper/commons-codec/) | +Apache | [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [commons-codec # commons-codec # 1.15](https://commons.apache.org/proper/commons-codec/) | Apache | [Apache License, Version 2.0](https://opensource.org/licenses/Apache-2.0) | [io.iohk.atala # prism-common-jvm # 1.4.1](https://github.com/input-output-hk/atala-prism-sdk.git) | Apache | [Apache License, Version 2.0](https://opensource.org/licenses/Apache-2.0) | [io.iohk.atala # prism-crypto-jvm # 1.4.1](https://github.com/input-output-hk/atala-prism-sdk.git) | Apache | [Apache License, Version 2.0](https://opensource.org/licenses/Apache-2.0) | [io.iohk.atala # prism-identity-jvm # 1.4.1](https://github.com/input-output-hk/atala-prism-sdk.git) | @@ -104,17 +112,28 @@ Apache | [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2 Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [org.apache.httpcomponents # httpclient # 4.5.14](http://hc.apache.org/httpcomponents-client-ga) | Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [org.apache.httpcomponents # httpcore # 4.4.16](http://hc.apache.org/httpcomponents-core-ga) | Apache | [Apache License, Version 2.0](https://flywaydb.org/licenses/flyway-community) | org.flywaydb # flyway-core # 9.8.3 | +Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | org.jboss # jandex # 2.4.3.Final | +Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | org.jboss.shrinkwrap # shrinkwrap-api # 1.2.6 | +Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | org.jboss.shrinkwrap # shrinkwrap-impl-base # 1.2.6 | +Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | org.jboss.shrinkwrap # shrinkwrap-spi # 1.2.6 | +Apache | [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0) | org.keycloak # keycloak-admin-client # 22.0.4 | Apache | [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0) | org.keycloak # keycloak-authz-client # 22.0.4 | Apache | [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0) | org.keycloak # keycloak-common # 22.0.4 | Apache | [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0) | org.keycloak # keycloak-core # 22.0.4 | Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [org.log4s # log4s_3 # 1.10.0](http://log4s.org/) | Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | org.objenesis # objenesis # 3.3 | Apache | [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [org.yaml # snakeyaml # 2.0](https://bitbucket.org/snakeyaml/snakeyaml) | +Apache | [Apache License, version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [org.jboss.logging # jboss-logging # 3.5.0.Final](http://www.jboss.org) | +Apache | [Apache Software License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0) | [com.github.java-json-tools # btf # 1.3](https://github.com/java-json-tools/btf) | +Apache | [Apache Software License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0) | [com.github.java-json-tools # jackson-coreutils # 2.0](https://github.com/java-json-tools/jackson-coreutils) | +Apache | [Apache Software License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0) | [com.github.java-json-tools # json-patch # 1.13](https://github.com/java-json-tools/json-patch) | +Apache | [Apache Software License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0) | [com.github.java-json-tools # msg-simple # 1.2](https://github.com/java-json-tools/msg-simple) | Apache | [Apache-2.0](http://www.apache.org/licenses/) | [com.comcast # ip4s-core_3 # 3.1.2](https://github.com/comcast/ip4s) | Apache | [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.comcast # ip4s-core_3 # 3.3.0](https://github.com/Comcast/ip4s) | Apache | [Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0) | [com.geirsson # metaconfig-core_2.13 # 0.11.1](https://github.com/olafurpg/metaconfig) | Apache | [Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0) | [com.geirsson # metaconfig-pprint_2.13 # 0.11.1](https://github.com/olafurpg/metaconfig) | Apache | [Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0) | [com.geirsson # metaconfig-typesafe-config_2.13 # 0.11.1](https://github.com/olafurpg/metaconfig) | +Apache | [Apache-2.0](https://opensource.org/licenses/Apache-2.0) | [com.github.dasniko # testcontainers-keycloak # 3.0.0](https://github.com/dasniko/testcontainers-keycloak) | Apache | [Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0) | [com.github.jwt-scala # jwt-circe_3 # 9.1.2](https://jwt-scala.github.io/jwt-scala/) | Apache | [Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0) | [com.github.jwt-scala # jwt-core_3 # 9.1.2](https://jwt-scala.github.io/jwt-scala/) | Apache | [Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0) | [com.github.jwt-scala # jwt-json-common_3 # 9.1.2](https://jwt-scala.github.io/jwt-scala/) | @@ -223,13 +242,19 @@ Apache | [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENS Apache | [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [org.jetbrains.kotlinx # kotlinx-datetime-jvm # 0.2.1](https://github.com/Kotlin/kotlinx-datetime) | Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.core # jackson-annotations # 2.10.3](http://github.com/FasterXML/jackson) | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.core # jackson-annotations # 2.14.0](https://github.com/FasterXML/jackson) | +Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.core # jackson-annotations # 2.14.3](https://github.com/FasterXML/jackson) | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.core # jackson-annotations # 2.15.2](https://github.com/FasterXML/jackson) | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.core # jackson-core # 2.14.0](https://github.com/FasterXML/jackson-core) | +Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.core # jackson-core # 2.14.3](https://github.com/FasterXML/jackson-core) | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.core # jackson-core # 2.15.2](https://github.com/FasterXML/jackson-core) | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.core # jackson-databind # 2.14.0](https://github.com/FasterXML/jackson) | +Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.core # jackson-databind # 2.14.3](https://github.com/FasterXML/jackson) | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.core # jackson-databind # 2.15.2](https://github.com/FasterXML/jackson) | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.dataformat # jackson-dataformat-toml # 2.14.0](https://github.com/FasterXML/jackson-dataformats-text) | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.dataformat # jackson-dataformat-yaml # 2.15.2](https://github.com/FasterXML/jackson-dataformats-text) | +Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | com.fasterxml.jackson.jakarta.rs # jackson-jakarta-rs-base # 2.14.3 | +Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | com.fasterxml.jackson.jakarta.rs # jackson-jakarta-rs-json-provider # 2.14.3 | +Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [com.fasterxml.jackson.module # jackson-module-jakarta-xmlbind-annotations # 2.14.3](https://github.com/FasterXML/jackson-modules-base) | Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.github.docker-java # docker-java-api # 3.3.3](https://github.com/docker-java/docker-java) | Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.github.docker-java # docker-java-transport # 3.3.3](https://github.com/docker-java/docker-java) | Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.github.docker-java # docker-java-transport-zerodep # 3.3.3](https://github.com/docker-java/docker-java) | @@ -238,8 +263,10 @@ Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licens Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | com.google.guava # listenablefuture # 9999.0-empty-to-avoid-conflict-with-guava | Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.google.j2objc # j2objc-annotations # 1.3](https://github.com/google/j2objc/) | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | com.google.zxing # core # 3.5.0 | +Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.ibm.async # asyncutil # 0.1.0](http://github.com/ibm/java-async-util) | Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | com.twitter # hpack # 1.0.2 | Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [com.zaxxer # HikariCP # 4.0.3](https://github.com/brettwooldridge/HikariCP) | +Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [commons-logging # commons-logging # 1.2](http://commons.apache.org/proper/commons-logging/) | Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | io.github.java-diff-utils # java-diff-utils # 4.12 | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [io.iohk.atala # nimbus-jose-jwt # 10.0.0](https://bitbucket.org/connect2id/nimbus-jose-jwt) | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [io.ktor # ktor-io-jvm # 1.6.5](https://github.com/ktorio/ktor) | @@ -252,6 +279,7 @@ Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licens Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | io.prometheus # simpleclient_tracer_common # 0.16.0 | Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | io.prometheus # simpleclient_tracer_otel # 0.16.0 | Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | io.prometheus # simpleclient_tracer_otel_agent # 0.16.0 | +Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | io.quarkus # quarkus-junit4-mock # 3.2.0.Final | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [org.bitcoinj # bitcoinj-core # 0.15.10](https://bitcoinj.github.io) | Apache | [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) | [org.jetbrains # annotations # 13.0](http://www.jetbrains.org) | Apache | [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) | [org.jetbrains # annotations # 17.0.0](https://github.com/JetBrains/java-annotations) | @@ -303,6 +331,10 @@ BSD | [BSD New](https://github.com/portable-scala/portable-scala-reflect/blob/ma BSD | [BSD-2-Clause](https://jdbc.postgresql.org/about/license.html) | [org.postgresql # postgresql # 42.3.1](https://jdbc.postgresql.org) | BSD | [BSD-3-Clause](https://github.com/scodec/scodec-bits/blob/main/LICENSE) | [org.scodec # scodec-bits_3 # 1.1.30](https://github.com/scodec/scodec-bits) | BSD | [BSD-3-Clause](https://github.com/scodec/scodec-bits/blob/main/LICENSE) | [org.scodec # scodec-bits_3 # 1.1.37](https://github.com/scodec/scodec-bits) | +BSD | [EDL 1.0](http://www.eclipse.org/org/documents/edl-v10.php) | com.sun.activation # jakarta.activation # 2.0.1 | +BSD | [EDL 1.0](http://www.eclipse.org/org/documents/edl-v10.php) | [jakarta.activation # jakarta.activation-api # 2.1.2](https://github.com/jakartaee/jaf-api) | +BSD | [EDL 1.0](http://www.eclipse.org/org/documents/edl-v10.php) | org.eclipse.angus # angus-activation # 1.0.0 | +BSD | [Eclipse Distribution License - v 1.0](http://www.eclipse.org/org/documents/edl-v10.php) | jakarta.xml.bind # jakarta.xml.bind-api # 3.0.1 | BSD | [New BSD License](http://www.opensource.org/licenses/bsd-license.php) | org.hamcrest # hamcrest-core # 1.3 | BSD | [The BSD License](https://opensource.org/licenses/BSD-3-Clause) | org.jline # jline # 3.22.0 | Bouncy Castle License | [Bouncy Castle Licence](https://www.bouncycastle.org/licence.html) | [org.bouncycastle # bcpkix-jdk15on # 1.70](https://www.bouncycastle.org/java.html) | @@ -312,7 +344,9 @@ Bouncy Castle License | [Bouncy Castle Licence](http://www.bouncycastle.org/lice Bouncy Castle License | [Bouncy Castle Licence](https://www.bouncycastle.org/licence.html) | [org.bouncycastle # bcutil-jdk15on # 1.70](https://www.bouncycastle.org/java.html) | EPL | [Eclipse Public License 1.0](http://www.eclipse.org/legal/epl-v10.html) | [junit # junit # 4.13.1](http://junit.org) | EPL | [Eclipse Public License 1.0](http://www.eclipse.org/legal/epl-v10.html) | [junit # junit # 4.13.2](http://junit.org) | +GPL | [GPL2 w/ CPE](https://www.gnu.org/software/classpath/license.html) | [jakarta.annotation # jakarta.annotation-api # 2.1.1](https://projects.eclipse.org/projects/ee4j.ca) | GPL with Classpath Extension | [CDDL + GPLv2 with classpath exception](https://glassfish.dev.java.net/nonav/public/CDDL+GPL.html) | [javax.annotation # javax.annotation-api # 1.2](http://jcp.org/en/jsr/detail?id=250) | +GPL with Classpath Extension | [GPL-2.0-with-classpath-exception](https://www.gnu.org/software/classpath/license.html) | [jakarta.ws.rs # jakarta.ws.rs-api # 3.1.0](https://github.com/eclipse-ee4j/jaxrs-api) | LGPL | [GNU Lesser General Public License](http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html) | ch.qos.logback # logback-classic # 1.4.8 | LGPL | [GNU Lesser General Public License](http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html) | ch.qos.logback # logback-core # 1.4.8 | MIT | [MIT](http://opensource.org/licenses/MIT) | [co.fs2 # fs2-core_3 # 3.2.4](https://github.com/typelevel/fs2) | @@ -350,10 +384,11 @@ MIT | [MIT](http://opensource.org/licenses/MIT) | [org.typelevel # vault_3 # 3.5 MIT | [MIT License](https://raw.githubusercontent.com/korlibs/krypto/master/LICENSE) | [com.soywiz.korlibs.krypto # krypto-jvm # 2.4.12](https://github.com/korlibs/krypto) | MIT | [MIT License](https://opensource.org/licenses/MIT) | [io.iohk # pbandk-protos # 0.20.7](https://github.com/input-output-hk/pbandk) | MIT | [MIT License](https://opensource.org/licenses/MIT) | [io.iohk # pbandk-runtime-jvm # 0.20.7](https://github.com/input-output-hk/pbandk) | -MIT | [MIT License](http://www.opensource.org/licenses/mit-license.php) | [org.slf4j # slf4j-api # 1.7.36](http://www.slf4j.org) | +MIT | [MIT License](http://www.opensource.org/licenses/mit-license.php) | [org.slf4j # slf4j-api # 1.7.32](http://www.slf4j.org) | MIT | [MIT License](http://www.opensource.org/licenses/mit-license.php) | [org.slf4j # slf4j-api # 2.0.7](http://www.slf4j.org) | MIT | [MIT License](http://www.opensource.org/licenses/mit-license.php) | [org.slf4j # slf4j-simple # 2.0.7](http://www.slf4j.org) | MIT | [MIT license](http://www.opensource.org/licenses/mit-license.php) | org.codehaus.mojo # animal-sniffer-annotations # 1.19 | +MIT | [MIT-0](https://spdx.org/licenses/MIT-0.html) | [org.reactivestreams # reactive-streams # 1.0.4](http://www.reactive-streams.org/) | MIT | [The MIT License](http://opensource.org/licenses/MIT) | [org.checkerframework # checker-compat-qual # 2.5.5](https://checkerframework.org) | MIT | [The MIT License](http://opensource.org/licenses/MIT) | [org.checkerframework # checker-qual # 3.12.0](https://checkerframework.org) | MIT | [The MIT License](https://github.com/mockito/mockito/blob/main/LICENSE) | [org.mockito # mockito-core # 4.11.0](https://github.com/mockito/mockito) | @@ -363,34 +398,32 @@ MIT | [The MIT License (MIT)](https://opensource.org/licenses/MIT) | [com.dimafe MIT | [The MIT License (MIT)](https://opensource.org/licenses/MIT) | [com.dimafeng # testcontainers-scala-vault_3 # 0.41.0](https://github.com/testcontainers/testcontainers-scala) | Public Domain | [Public Domain, per Creative Commons CC0](http://creativecommons.org/publicdomain/zero/1.0/) | [org.hdrhistogram # HdrHistogram # 2.1.12](http://hdrhistogram.github.io/HdrHistogram/) | Public Domain | [Public Domain, per Creative Commons CC0](http://creativecommons.org/publicdomain/zero/1.0/) | [org.latencyutils # LatencyUtils # 2.0.3](http://latencyutils.github.io/LatencyUtils/) | -unrecognized | [APL2](http://www.apache.org/licenses/LICENSE-2.0.txt) | [net.reactivecore # circe-json-schema_2.13 # 0.3.0](https://github.com/reactivecore/rc-circe-json-schema) | -unrecognized | [EDL 1.0](http://www.eclipse.org/org/documents/edl-v10.php) | [jakarta.activation # jakarta.activation-api # 2.1.2](https://github.com/jakartaee/jaf-api) | -unrecognized | [none specified](none specified) | [io.iohk.atala # castor-core_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # connect-core_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # connect-sql-doobie_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # event-notification_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # iris-client_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-agent-core_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-agent-didcommx_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-data-models_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-connection_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-coordinate-mediation_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-invitation_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-issue-credential_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-mailbox_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-outofband-login_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-present-proof_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-report-problem_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-routing-2-0_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-trust-ping_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-resolver_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-verifiable-credentials_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # pollux-anoncreds_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # pollux-core_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # pollux-sql-doobie_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # pollux-vc-jwt_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # prism-agent-wallet-api_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # prism-node-client_3 # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | -unrecognized | [none specified](none specified) | [io.iohk.atala # shared # 1.17.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # castor-core_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # connect-core_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # connect-sql-doobie_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # event-notification_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-agent-core_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-agent-didcommx_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-data-models_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-connection_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-coordinate-mediation_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-invitation_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-issue-credential_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-mailbox_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-outofband-login_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-present-proof_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-report-problem_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-routing-2-0_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-protocol-trust-ping_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-resolver_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # mercury-verifiable-credentials_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # pollux-anoncreds_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # pollux-core_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # pollux-sql-doobie_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # pollux-vc-jwt_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # prism-agent-wallet-api_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # prism-node-client_3 # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # shared # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | +unrecognized | [none specified](none specified) | [io.iohk.atala # sharedtest # 1.18.0-SNAPSHOT](https://github.com/input-output-hk/atala-prism-building-blocks) | unrecognized | [none specified](none specified) | [net.jcip # jcip-annotations # 1.0](http://jcip.net/) | diff --git a/build.sbt b/build.sbt index 69304ca23d..da9731b184 100644 --- a/build.sbt +++ b/build.sbt @@ -56,6 +56,7 @@ lazy val V = new { // https://mvnrepository.com/artifact/io.circe/circe-core val circe = "0.14.6" + val jackson = "2.14.3" val tapir = "1.6.4" @@ -125,10 +126,12 @@ lazy val D = new { val scalaPbRuntime: ModuleID = "com.thesamet.scalapb" %% "scalapb-runtime" % scalapb.compiler.Version.scalapbVersion % "protobuf" val scalaPbGrpc: ModuleID = "com.thesamet.scalapb" %% "scalapb-runtime-grpc" % scalapb.compiler.Version.scalapbVersion - // TODO we are adding test stuff to the main dependencies - val testcontainersPostgres: ModuleID = "com.dimafeng" %% "testcontainers-scala-postgresql" % V.testContainersScala - val testcontainersVault: ModuleID = "com.dimafeng" %% "testcontainers-scala-vault" % V.testContainersScala - val testcontainersKeycloak: ModuleID = "com.github.dasniko" % "testcontainers-keycloak" % V.testContainersJavaKeycloak + + val testcontainersPostgres: ModuleID = + "com.dimafeng" %% "testcontainers-scala-postgresql" % V.testContainersScala % Test + val testcontainersVault: ModuleID = "com.dimafeng" %% "testcontainers-scala-vault" % V.testContainersScala % Test + val testcontainersKeycloak: ModuleID = + "com.github.dasniko" % "testcontainers-keycloak" % V.testContainersJavaKeycloak % Test exclude ("org.keycloak", "keycloak-admin-client") val doobiePostgres: ModuleID = "org.tpolecat" %% "doobie-postgres" % V.doobie val doobieHikari: ModuleID = "org.tpolecat" %% "doobie-hikari" % V.doobie @@ -155,9 +158,6 @@ lazy val D_Shared = new { Seq( D.typesafeConfig, D.scalaPbGrpc, - D.testcontainersPostgres, - D.testcontainersVault, - D.testcontainersKeycloak, D.zio, // FIXME: split shared DB stuff as subproject? D.doobieHikari, @@ -167,15 +167,58 @@ lazy val D_Shared = new { } lazy val D_SharedTest = new { - lazy val dependencies: Seq[ModuleID] = + // https://github.com/sbt/sbt-license-report/issues/87 + // https://stackoverflow.com/questions/48771768/sbt-error-importing-resteasy-client + // + // 'sbt-license' plugin is using ivy to resolve dependencies where other tasks are using coursier. + // 'org.jboss.resteasy:resteasy-*' which is the transitive dependencies of 'keycloak-admin-client' + // has this issue where 'relativePath' is used in the 'parent' section. + // - https://github.com/resteasy/resteasy/blob/6.2.4.Final/resteasy-client-api/pom.xml#L9 + // - https://www.scala-sbt.org/1.x/docs/Library-Management.html#Known+limitations + // + // This workaround provides those dependencies explicitly, but it will be a nightmare to maintain. + // for version reference: https://github.com/resteasy/resteasy/blob/6.2.4.Final/resteasy-dependencies-bom/pom.xml + // FIXME: solve this with a long-term solution + lazy val keycloakAdminExplicitDependencies: Seq[ModuleID] = Seq( - D.typesafeConfig, + "org.keycloak" % "keycloak-admin-client" % V.keycloak excludeAll ( + ExclusionRule("org.jboss.resteasy", "resteasy-core"), + ExclusionRule("org.jboss.resteasy", "resteasy-multipart-provider"), + ExclusionRule("org.jboss.resteasy", "resteasy-jackson2-provider"), + ExclusionRule("org.jboss.resteasy", "resteasy-jaxb-provider"), + ), + "org.jboss.resteasy" % "resteasy-core" % "6.2.4.Final" excludeAll ( + ExclusionRule("jakarta.servlet", "jakarta.servlet-api"), + ), + "org.jboss.resteasy" % "resteasy-jackson2-provider" % "6.2.4.Final" excludeAll ( + ExclusionRule("jakarta.servlet", "jakarta.servlet-api"), + ), + "org.jboss.logging" % "jboss-logging" % "3.5.0.Final", + "commons-codec" % "commons-codec" % "1.15", + "jakarta.ws.rs" % "jakarta.ws.rs-api" % "3.1.0", + "jakarta.annotation" % "jakarta.annotation-api" % "2.1.1", + "jakarta.xml.bind" % "jakarta.xml.bind-api" % "3.0.1", + "org.reactivestreams" % "reactive-streams" % "1.0.4", + "jakarta.validation" % "jakarta.validation-api" % "3.0.2", + "org.jboss" % "jandex" % "2.4.3.Final", + "jakarta.activation" % "jakarta.activation-api" % "2.1.2", + "org.eclipse.angus" % "angus-activation" % "1.0.0", + "com.ibm.async" % "asyncutil" % "0.1.0", + "org.apache.httpcomponents" % "httpclient" % "4.5.14", + "com.github.java-json-tools" % "json-patch" % "1.13", + "com.fasterxml.jackson.core" % "jackson-core" % V.jackson, + "com.fasterxml.jackson.core" % "jackson-databind" % V.jackson, + "com.fasterxml.jackson.core" % "jackson-annotations" % V.jackson, + "com.fasterxml.jackson.jakarta.rs" % "jackson-jakarta-rs-base" % V.jackson, + "com.fasterxml.jackson.jakarta.rs" % "jackson-jakarta-rs-json-provider" % V.jackson, + "com.fasterxml.jackson.module" % "jackson-module-jakarta-xmlbind-annotations" % V.jackson, + ).map(_ % Test) + + lazy val dependencies: Seq[ModuleID] = + D_Shared.dependencies ++ keycloakAdminExplicitDependencies ++ Seq( D.testcontainersPostgres, D.testcontainersVault, D.testcontainersKeycloak, - D.zio, - D.doobieHikari, - D.doobiePostgres, D.zioCatsInterop, D.zioJson, D.zioHttp, @@ -711,7 +754,7 @@ lazy val polluxDoobie = project ) .dependsOn(polluxCore % "compile->compile;test->test") .dependsOn(shared) - .dependsOn(sharedTest % Test) + .dependsOn(sharedTest % "test->test") // ######################## // ### Pollux Anoncreds ### @@ -761,7 +804,7 @@ lazy val connectDoobie = project libraryDependencies ++= D_Connect.sqlDoobieDependencies ) .dependsOn(shared) - .dependsOn(sharedTest % Test) + .dependsOn(sharedTest % "test->test") .dependsOn(connectCore % "compile->compile;test->test") // ############################ @@ -797,7 +840,7 @@ lazy val prismAgentWalletAPI = project castorCore, eventNotification ) - .dependsOn(sharedTest % Test) + .dependsOn(sharedTest % "test->test") lazy val prismAgentServer = project .in(file("prism-agent/service/server")) @@ -830,7 +873,7 @@ lazy val prismAgentServer = project castorCore, eventNotification ) - .dependsOn(sharedTest % Test) + .dependsOn(sharedTest % "test->test") // ############################ // #### Release process ##### diff --git a/infrastructure/charts/agent/Chart.yaml b/infrastructure/charts/agent/Chart.yaml index 1f8628ced1..d9df08d3ad 100644 --- a/infrastructure/charts/agent/Chart.yaml +++ b/infrastructure/charts/agent/Chart.yaml @@ -13,12 +13,12 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. # Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 1.18.0 +version: 1.19.0-snapshot.1 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. -appVersion: 1.18.0 +appVersion: 1.19.0-snapshot.1 dependencies: - name: vault version: 0.24.1 diff --git a/infrastructure/charts/index.yaml b/infrastructure/charts/index.yaml index f0f89a23e8..5038ea8bdc 100644 --- a/infrastructure/charts/index.yaml +++ b/infrastructure/charts/index.yaml @@ -1,9 +1,23 @@ apiVersion: v1 entries: prism-agent: + - apiVersion: v2 + appVersion: 1.19.0-snapshot.1 + created: "2023-11-16T08:27:09.334790111Z" + dependencies: + - name: vault + repository: https://helm.releases.hashicorp.com + version: 0.24.1 + description: A Helm chart for deploying prism-agent + digest: a1f8f9ea0d21dda6a41177a353ca6047240c7958e9f9710435a33b6593579790 + name: prism-agent + type: application + urls: + - https://raw.githubusercontent.com/hyperledger-labs/open-enterprise-agent/main/infrastructure/charts/prism-agent-1.19.0-snapshot.1.tgz + version: 1.19.0-snapshot.1 - apiVersion: v2 appVersion: 1.18.0 - created: "2023-10-24T11:07:35.004549218Z" + created: "2023-11-16T08:27:09.331988025Z" dependencies: - name: vault repository: https://helm.releases.hashicorp.com @@ -17,7 +31,7 @@ entries: version: 1.18.0 - apiVersion: v2 appVersion: 1.17.0 - created: "2023-10-24T11:07:35.000795657Z" + created: "2023-11-16T08:27:09.328294153Z" dependencies: - name: vault repository: https://helm.releases.hashicorp.com @@ -31,7 +45,7 @@ entries: version: 1.17.0 - apiVersion: v2 appVersion: 1.16.4 - created: "2023-10-24T11:07:34.99668489Z" + created: "2023-11-16T08:27:09.325453135Z" dependencies: - name: vault repository: https://helm.releases.hashicorp.com @@ -45,7 +59,7 @@ entries: version: 1.16.4 - apiVersion: v2 appVersion: 1.16.3 - created: "2023-10-24T11:07:34.991583906Z" + created: "2023-11-16T08:27:09.322070956Z" dependencies: - name: vault repository: https://helm.releases.hashicorp.com @@ -59,7 +73,7 @@ entries: version: 1.16.3 - apiVersion: v2 appVersion: 1.16.2 - created: "2023-10-24T11:07:34.987422338Z" + created: "2023-11-16T08:27:09.319230178Z" dependencies: - name: vault repository: https://helm.releases.hashicorp.com @@ -71,4 +85,4 @@ entries: urls: - https://raw.githubusercontent.com/hyperledger-labs/open-enterprise-agent/main/infrastructure/charts/prism-agent-1.16.2.tgz version: 1.16.2 -generated: "2023-10-24T11:07:34.982721561Z" +generated: "2023-11-16T08:27:09.316193045Z" diff --git a/infrastructure/charts/prism-agent-1.19.0-snapshot.1.tgz b/infrastructure/charts/prism-agent-1.19.0-snapshot.1.tgz new file mode 100644 index 0000000000..6733f86986 Binary files /dev/null and b/infrastructure/charts/prism-agent-1.19.0-snapshot.1.tgz differ diff --git a/infrastructure/local/.env b/infrastructure/local/.env index a40f9fe1cb..313c11fc47 100644 --- a/infrastructure/local/.env +++ b/infrastructure/local/.env @@ -1,3 +1,3 @@ -PRISM_AGENT_VERSION=1.17.0 +PRISM_AGENT_VERSION=1.19.0-snapshot.1 PRISM_NODE_VERSION=2.2.1 VAULT_DEV_ROOT_TOKEN_ID=root diff --git a/package-lock.json b/package-lock.json index adf9c14b3a..9d6d1a75fe 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "atala-prism-building-blocks", - "version": "1.18.0", + "version": "1.19.0-snapshot.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "atala-prism-building-blocks", - "version": "1.18.0", + "version": "1.19.0-snapshot.1", "devDependencies": { "@commitlint/cli": "^17.0.3", "@commitlint/config-conventional": "^17.0.3", diff --git a/package.json b/package.json index 69524e2af8..e5ba95dc43 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "atala-prism-building-blocks", - "version": "1.18.0", + "version": "1.19.0-snapshot.1", "engines": { "node": ">=16.13.0" }, diff --git a/prism-agent/service/api/http/prism-agent-openapi-spec.yaml b/prism-agent/service/api/http/prism-agent-openapi-spec.yaml index 42a2ceff59..3cf658d497 100644 --- a/prism-agent/service/api/http/prism-agent-openapi-spec.yaml +++ b/prism-agent/service/api/http/prism-agent-openapi-spec.yaml @@ -1,7 +1,7 @@ openapi: 3.1.0 info: title: Prism Agent - version: 1.18.0 + version: 1.19.0-snapshot.1 paths: /credential-definition-registry/definitions: get: @@ -1884,12 +1884,6 @@ paths: description: 'Get all entities with the pagination by `offset` and `limit` parameters ' operationId: getAllEntities parameters: - - name: x-admin-api-key - in: header - description: Admin API Key - required: true - schema: - type: string - name: offset in: query required: false @@ -1927,6 +1921,9 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorResponse' + security: + - {} + - adminApiKeyAuth: [] post: tags: - Identity and Access Management @@ -1934,13 +1931,6 @@ paths: description: Create the new entity record. The entity record is a representation of the account in the system. operationId: createEntity - parameters: - - name: x-admin-api-key - in: header - description: Admin API Key - required: true - schema: - type: string requestBody: description: JSON object required for the entity creation content: @@ -1979,6 +1969,9 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorResponse' + security: + - {} + - adminApiKeyAuth: [] /iam/entities/{id}/name: put: tags: @@ -1987,12 +1980,6 @@ paths: description: Update the entity record name by `id` operationId: updateEntityName parameters: - - name: x-admin-api-key - in: header - description: Admin API Key - required: true - schema: - type: string - name: id in: path required: true @@ -2037,6 +2024,9 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorResponse' + security: + - {} + - adminApiKeyAuth: [] /iam/entities/{id}/walletId: put: tags: @@ -2045,12 +2035,6 @@ paths: description: Update the entity record `walletId` field by `id` operationId: updateEntityWalletId parameters: - - name: x-admin-api-key - in: header - description: Admin API Key - required: true - schema: - type: string - name: id in: path required: true @@ -2095,6 +2079,9 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorResponse' + security: + - {} + - adminApiKeyAuth: [] /iam/entities/{id}: get: tags: @@ -2103,12 +2090,6 @@ paths: description: Get the entity by the unique identifier operationId: getEntityById parameters: - - name: x-admin-api-key - in: header - description: Admin API Key - required: true - schema: - type: string - name: id in: path description: Identifier of the entity @@ -2147,6 +2128,9 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorResponse' + security: + - {} + - adminApiKeyAuth: [] delete: tags: - Identity and Access Management @@ -2154,12 +2138,6 @@ paths: description: Delete the entity by the unique identifier operationId: deleteEntityById parameters: - - name: x-admin-api-key - in: header - description: Admin API Key - required: true - schema: - type: string - name: id in: path description: Identifier of the entity @@ -2194,6 +2172,9 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorResponse' + security: + - {} + - adminApiKeyAuth: [] /iam/apikey-authentication: post: tags: @@ -2201,13 +2182,6 @@ paths: summary: Register the `apikey` for the entity description: Register the `apikey` for the entity. operationId: addEntityApiKeyAuthentication - parameters: - - name: x-admin-api-key - in: header - description: Admin API Key - required: true - schema: - type: string requestBody: description: JSON object required for the registering the entity and `apikey` content: @@ -2242,19 +2216,15 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorResponse' + security: + - {} + - adminApiKeyAuth: [] delete: tags: - Identity and Access Management summary: Unregister the `apikey` for the entity description: Unregister the `apikey` for the entity. operationId: deleteEntityApiKeyAuthentication - parameters: - - name: x-admin-api-key - in: header - description: Admin API Key - required: true - schema: - type: string requestBody: description: JSON object required for the unregistering the entity and `apikey` content: @@ -2289,6 +2259,9 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorResponse' + security: + - {} + - adminApiKeyAuth: [] /wallets: get: tags: @@ -2296,12 +2269,6 @@ paths: summary: List all wallets operationId: getWallets parameters: - - name: x-admin-api-key - in: header - description: Admin API Key - required: true - schema: - type: string - name: offset in: query required: false @@ -2339,6 +2306,10 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorResponse' + security: + - adminApiKeyAuth: [] + - apiKeyAuth: [] + - jwtAuth: [] post: tags: - Wallet Management @@ -2347,13 +2318,6 @@ paths: Create a new wallet with optional to use provided seed. The seed will be used for DID key derivation inside the wallet. operationId: createWallet - parameters: - - name: x-admin-api-key - in: header - description: Admin API Key - required: true - schema: - type: string requestBody: content: application/json: @@ -2385,6 +2349,10 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorResponse' + security: + - adminApiKeyAuth: [] + - apiKeyAuth: [] + - jwtAuth: [] /wallets/{walletId}: get: tags: @@ -2392,12 +2360,6 @@ paths: summary: Get the wallet by ID operationId: getWalletsWalletid parameters: - - name: x-admin-api-key - in: header - description: Admin API Key - required: true - schema: - type: string - name: walletId in: path required: true @@ -2435,6 +2397,99 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorResponse' + security: + - adminApiKeyAuth: [] + - apiKeyAuth: [] + - jwtAuth: [] + /wallets/{walletId}/uma-permissions: + post: + tags: + - Wallet Management + summary: Create a UMA resource permission on an authorization server for the + wallet. + operationId: createWalletUmaPermission + parameters: + - name: walletId + in: path + required: true + schema: + type: string + format: uuid + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateWalletUmaPermissionRequest' + required: true + responses: + '200': + description: UMA resource permission is created on an authorization server. + '400': + description: Invalid request parameters + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '403': + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '500': + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + security: + - adminApiKeyAuth: [] + - apiKeyAuth: [] + - jwtAuth: [] + delete: + tags: + - Wallet Management + summary: Delete a UMA resource permission on an authorization server for the + wallet. + operationId: deleteWalletUmaPermission + parameters: + - name: walletId + in: path + required: true + schema: + type: string + format: uuid + - name: subject + in: query + required: true + schema: + type: string + format: uuid + responses: + '200': + description: UMA resource permission is removed from an authorization server. + '400': + description: Invalid request parameters + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '403': + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + '500': + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + security: + - adminApiKeyAuth: [] + - apiKeyAuth: [] + - jwtAuth: [] /events/webhooks: get: tags: @@ -2644,6 +2699,17 @@ components: type: string description: A human readable alias for the connection. example: Peter + goalCode: + type: string + description: A self-attested code the receiver may want to display to the + user or use in automatically deciding what to do with the out-of-band + message. + example: issue-vc + goal: + type: string + description: A self-attested string that the receiver may want to display + to the user about the context-specific goal of the out-of-band message. + example: To issue a Peter College Graduate credential myDid: type: string description: The DID representing me as the inviter or invitee in this specific @@ -2774,6 +2840,17 @@ components: type: string description: A human readable alias for the connection. example: Peter + goalCode: + type: string + description: A self-attested code the receiver may want to display to the + user or use in automatically deciding what to do with the out-of-band + message. + example: issue-vc + goal: + type: string + description: A self-attested string that the receiver may want to display + to the user about the context-specific goal of the out-of-band message. + example: To issue a Peter College Graduate credential CreateEntityRequest: required: - name @@ -2900,6 +2977,17 @@ components: description: The unique `id` of the wallet. Randomly generated if not specified. format: uuid example: 00000000-0000-0000-0000-000000000000 + CreateWalletUmaPermissionRequest: + required: + - subject + type: object + properties: + subject: + type: string + description: The subject ID that should be granted the permission to the + wallet. This can be found in the `sub` claim of a JWT token. + format: uuid + example: 00000000-0000-0000-0000-000000000000 CreateWebhookNotification: required: - url @@ -3665,7 +3753,7 @@ components: type: string description: The date and time when the issue credential record was created. format: date-time - example: '2023-10-24T10:50:45.871298Z' + example: '2023-11-16T08:09:01.625751794Z' updatedAt: type: string description: The date and time when the issue credential record was last @@ -4478,6 +4566,10 @@ components: items: $ref: '#/components/schemas/WebhookNotification' securitySchemes: + adminApiKeyAuth: + type: apiKey + name: x-admin-api-key + in: header apiKeyAuth: type: apiKey name: apikey diff --git a/prism-agent/service/server/src/main/scala/io/iohk/atala/iam/authentication/oidc/KeycloakClient.scala b/prism-agent/service/server/src/main/scala/io/iohk/atala/iam/authentication/oidc/KeycloakClient.scala index d912abf741..85a823b78d 100644 --- a/prism-agent/service/server/src/main/scala/io/iohk/atala/iam/authentication/oidc/KeycloakClient.scala +++ b/prism-agent/service/server/src/main/scala/io/iohk/atala/iam/authentication/oidc/KeycloakClient.scala @@ -110,7 +110,8 @@ class KeycloakClientImpl(client: AuthzClient, httpClient: Client, keycloakConfig ) ) ) - .logError("Fail to get the accessToken on keyclaok.") + .logError("Fail to get the accessToken on keycloak.") + .tapError(_ => ZIO.succeed(keycloakConfig).debug("keycloakConfig")) .mapError(e => KeycloakClientError.UnexpectedError("Fail to get the accessToken on keyclaok.")) .provide(ZLayer.succeed(httpClient)) body <- response.body.asString diff --git a/prism-agent/service/server/src/main/scala/io/iohk/atala/iam/authorization/keycloak/admin/KeycloakAdmin.scala b/prism-agent/service/server/src/test/scala/io/iohk/atala/iam/authorization/keycloak/admin/KeycloakAdmin.scala similarity index 100% rename from prism-agent/service/server/src/main/scala/io/iohk/atala/iam/authorization/keycloak/admin/KeycloakAdmin.scala rename to prism-agent/service/server/src/test/scala/io/iohk/atala/iam/authorization/keycloak/admin/KeycloakAdmin.scala diff --git a/prism-agent/service/server/src/test/scala/io/iohk/atala/iam/authorization/keycloak/admin/KeycloakPermissionManagementServiceSpec.scala b/prism-agent/service/server/src/test/scala/io/iohk/atala/iam/authorization/keycloak/admin/KeycloakPermissionManagementServiceSpec.scala index 8b71fda85a..3219338acc 100644 --- a/prism-agent/service/server/src/test/scala/io/iohk/atala/iam/authorization/keycloak/admin/KeycloakPermissionManagementServiceSpec.scala +++ b/prism-agent/service/server/src/test/scala/io/iohk/atala/iam/authorization/keycloak/admin/KeycloakPermissionManagementServiceSpec.scala @@ -60,7 +60,7 @@ object KeycloakPermissionManagementServiceSpec contextAwareTransactorLayer, pgContainerLayer, apolloLayer - ).provide(Runtime.removeDefaultLoggers) + ) } private val successfulCasesSuite = suite("Successful Cases")( diff --git a/project/plugins.sbt b/project/plugins.sbt index cf9014c180..40fc8bb023 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -6,7 +6,7 @@ addSbtPlugin("com.github.sbt" % "sbt-native-packager" % "1.9.11") addSbtPlugin("org.scoverage" % "sbt-scoverage" % "2.0.6") addSbtPlugin("com.github.sbt" % "sbt-native-packager" % "1.9.11") addSbtPlugin("org.scoverage" % "sbt-coveralls" % "1.3.9") -addSbtPlugin("com.github.sbt" % "sbt-license-report" % "1.5.0") +addSbtPlugin("com.github.sbt" % "sbt-license-report" % "1.6.1") addSbtPlugin("com.thesamet" % "sbt-protoc" % "1.0.6") // In order to import proper version of com.google.protobuf.ByteString we need to add this dependency diff --git a/shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/KeycloakContainerCustom.scala b/shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/KeycloakContainerCustom.scala similarity index 100% rename from shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/KeycloakContainerCustom.scala rename to shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/KeycloakContainerCustom.scala diff --git a/shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/KeycloakTestContainer.scala b/shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/KeycloakTestContainer.scala similarity index 100% rename from shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/KeycloakTestContainer.scala rename to shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/KeycloakTestContainer.scala diff --git a/shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/KeycloakTestContainerSupport.scala b/shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/KeycloakTestContainerSupport.scala similarity index 100% rename from shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/KeycloakTestContainerSupport.scala rename to shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/KeycloakTestContainerSupport.scala diff --git a/shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/PostgreSQLContainerCustom.scala b/shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/PostgreSQLContainerCustom.scala similarity index 100% rename from shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/PostgreSQLContainerCustom.scala rename to shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/PostgreSQLContainerCustom.scala diff --git a/shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/PostgresLayer.scala b/shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/PostgresLayer.scala similarity index 100% rename from shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/PostgresLayer.scala rename to shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/PostgresLayer.scala diff --git a/shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/PostgresTestContainer.scala b/shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/PostgresTestContainer.scala similarity index 100% rename from shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/PostgresTestContainer.scala rename to shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/PostgresTestContainer.scala diff --git a/shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/PostgresTestContainerSupport.scala b/shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/PostgresTestContainerSupport.scala similarity index 100% rename from shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/PostgresTestContainerSupport.scala rename to shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/PostgresTestContainerSupport.scala diff --git a/shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/VaultContainerCustom.scala b/shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/VaultContainerCustom.scala similarity index 100% rename from shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/VaultContainerCustom.scala rename to shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/VaultContainerCustom.scala diff --git a/shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/VaultTestContainer.scala b/shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/VaultTestContainer.scala similarity index 100% rename from shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/VaultTestContainer.scala rename to shared-test/src/test/scala/io/iohk/atala/sharedtest/containers/VaultTestContainer.scala diff --git a/version.sbt b/version.sbt index bc21f09057..edc47d8a40 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -ThisBuild / version := "1.18.0-SNAPSHOT" +ThisBuild / version := "1.19.0-snapshot.1-SNAPSHOT"