Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(satp-hermes): add API1 layer WIP
Signed-off-by: Rafael Belchior <[email protected]> feat(satp-hermes): BLO API specification Signed-off-by: Rafael Belchior <[email protected]> feat(satp-hermes): add BLO layer Signed-off-by: Rafael Belchior <[email protected]> fix(satp-hermes): fix status endpoint and spec Signed-off-by: Rafael Belchior <[email protected]> fix(satp-hermes): fix lint Signed-off-by: André Augusto <[email protected]> ci(satp-hermes): rebase and update ci Signed-off-by: Rafael Belchior <[email protected]> feat(satp-hermes): update BLO specification Signed-off-by: Rafael Belchior <[email protected]> docs(satp-hermes): migrate BLO open api spec from json to yml Signed-off-by: Rafael Belchior <[email protected]> feat(satp-hermes): update Go BLO SDK generation Signed-off-by: Rafael Belchior <[email protected]> feat(satp-hermes): update BLO specification Signed-off-by: Rafael Belchior <[email protected]> feat(satp-hermes): add health check endpoint to BLO spec Signed-off-by: Rafael Belchior <[email protected]> fix(satp-hermes): re-add open-api json files The canonical source for the API definition are the yaml files located at packages/cactus-plugin-satp-hermes/src/main/yml/openapi.yml, due to its better readability compared to json. When yarn codegen is ran within the cactus-plugin-satp-hermes package, the json files are generated from the yaml. Signed-off-by: Rafael Belchior <[email protected]> feat(satp-hermes): remove deprecated spec Signed-off-by: Rafael Belchior <[email protected]> feat(SATP-Hermes): add gateway coordinator WIP Signed-off-by: Rafael Belchior <[email protected]> feat(bungee): add skeleton for bungee Signed-off-by: André Augusto <[email protected]> refactor(plugin-satp-hermes): update messages formats SATP core version 2.0.0 OpenAPI * created new messages in openAPI definition feat(bungee): fix bungee dependencies Signed-off-by: André Augusto <[email protected]> feat(SATP-Hermes): gateway coordinator feat(SATP-Hermes): gateway coordinator feat(SATP-Hermes): gateway coordinator WIP Signed-off-by: Rafael Belchior <[email protected]> test(SATP-Hermes): enable decorators needed for gateway coordinator checks Signed-off-by: Rafael Belchior <[email protected]> docs(SATP-Hermes): update package.json Signed-off-by: Rafael Belchior <[email protected]> refactor(SATP-Hermes): re-estructure project Signed-off-by: Rafael Belchior <[email protected]> refactor(SATP-Hermes): re-estructure project Signed-off-by: Rafael Belchior <[email protected]> refactor(SATP-Hermes): re-estructure project Signed-off-by: Rafael Belchior <[email protected]> refactor(SATP-Hermes): remove kotlin sdk, add protobuffer Signed-off-by: Rafael Belchior <[email protected]> feat(SATP-Hermes): protobuf structure Signed-off-by: Rafael Belchior <[email protected]> feat(SATP-Hermes): protobuf structure Signed-off-by: Rafael Belchior <[email protected]> refactor(SATP-Hermes): refactor naming Signed-off-by: Rafael Belchior <[email protected]> feat(SATP-Hermes): protobuf structure improvements Signed-off-by: Rafael Belchior <[email protected]> feat(SATP-Hermes): update yarn.lock and clean up Signed-off-by: André Augusto <[email protected]> refactor(test-tooling): fix types of streams: use NodeJS.ReadableStream 1. The container management library that we use in the test infrastructure (called dockerode) is expecting streams that are defined in the global namespace of the `@types/node` library, e.g. the standard library of NodeJS itself. 2. Previously we were using the "streams" package to provide type information to the streams that we were passing around to dockerode and it was working fine, but after some changes that seem unrelated this has broken the compilation process. 3. The mentioned changes are not yet on the main branch, but we expect them to be there soon and so this change is laying the groundwork for that by pre-emptively fixing the broken build's root cause which is that the test-tooling package does not declare it's typings related dependencies correctly: It implicitly uses the NodeJS standard library's types but so far had not declared them on the package level. 4. This change is therefore to rectify the issue of the `@types/node` dependency missing from the test-tooling package and also the refactoring of some of the test ledger classes which were relying on the `streams` builtin package instead of correctly using the NodeJS.ReadableStream global. 5. Earlier the reasoning for this was that we try to avoid pulling in types from the global scope because we try to avoid any sort of dependency on the global scope in general. Once we have proof though that this is causing issues with the build, then we must give up the principle for practical reasons (and only in the minimum viable scope, e.g. this does not change the fact that everywhere else in the codebase we should still do our best to avoid using the global scoped classes, types, functions, etc..). Thank you to @AndreAugusto11 and @RafaelAPB for pointing out this issue through the pull request of his that is currently being worked on at the time of this writing: RafaelAPB#72 Related to but does not address #2811 Signed-off-by: Peter Somogyvari <[email protected]> refactor(SATP-Hermes): remove unused packages * updated openapi version * updated bungee plugin version to 2.0.0-alpha.2 Co-authored-by: Peter Somogyvari <[email protected]> Signed-off-by: André Augusto <[email protected]> Signed-off-by: Peter Somogyvari <[email protected]> fix(satp-hermes): re-add open-api json files The canonical source for the API definition are the yaml files located at packages/cactus-plugin-satp-hermes/src/main/yml/openapi.yml, due to its better readability compared to json. When yarn codegen is ran within the cactus-plugin-satp-hermes package, the json files are generated from the yaml. Signed-off-by: Rafael Belchior <[email protected]> ci(satp-hermes): re-activate satp-hermes ci Signed-off-by: Rafael Belchior <[email protected]> fixup: update package json, ci, yarn lock Signed-off-by: Rafael Belchior <[email protected]> feat(SATP-Hermes): add gateway coordinator WIP Signed-off-by: Rafael Belchior <[email protected]> feat(bungee): add skeleton for bungee Signed-off-by: André Augusto <[email protected]> refactor(plugin-satp-hermes): update messages formats SATP core version 2.0.0 OpenAPI * created new messages in openAPI definition feat(bungee): fix bungee dependencies Signed-off-by: André Augusto <[email protected]> feat(SATP-Hermes): gateway coordinator feat(SATP-Hermes): gateway coordinator feat(SATP-Hermes): gateway coordinator WIP Signed-off-by: Rafael Belchior <[email protected]> test(SATP-Hermes): enable decorators needed for gateway coordinator checks Signed-off-by: Rafael Belchior <[email protected]> docs(SATP-Hermes): update package.json Signed-off-by: Rafael Belchior <[email protected]> refactor(SATP-Hermes): re-estructure project Signed-off-by: Rafael Belchior <[email protected]> refactor(SATP-Hermes): re-estructure project Signed-off-by: Rafael Belchior <[email protected]> refactor(SATP-Hermes): re-estructure project Signed-off-by: Rafael Belchior <[email protected]> refactor(SATP-Hermes): remove kotlin sdk, add protobuffer Signed-off-by: Rafael Belchior <[email protected]> feat(SATP-Hermes): protobuf structure Signed-off-by: Rafael Belchior <[email protected]> feat(SATP-Hermes): protobuf structure Signed-off-by: Rafael Belchior <[email protected]> refactor(SATP-Hermes): refactor naming Signed-off-by: Rafael Belchior <[email protected]> feat(SATP-Hermes): protobuf structure improvements Signed-off-by: Rafael Belchior <[email protected]> feat(SATP-Hermes): update yarn.lock and clean up Signed-off-by: André Augusto <[email protected]> refactor(test-tooling): fix types of streams: use NodeJS.ReadableStream 1. The container management library that we use in the test infrastructure (called dockerode) is expecting streams that are defined in the global namespace of the `@types/node` library, e.g. the standard library of NodeJS itself. 2. Previously we were using the "streams" package to provide type information to the streams that we were passing around to dockerode and it was working fine, but after some changes that seem unrelated this has broken the compilation process. 3. The mentioned changes are not yet on the main branch, but we expect them to be there soon and so this change is laying the groundwork for that by pre-emptively fixing the broken build's root cause which is that the test-tooling package does not declare it's typings related dependencies correctly: It implicitly uses the NodeJS standard library's types but so far had not declared them on the package level. 4. This change is therefore to rectify the issue of the `@types/node` dependency missing from the test-tooling package and also the refactoring of some of the test ledger classes which were relying on the `streams` builtin package instead of correctly using the NodeJS.ReadableStream global. 5. Earlier the reasoning for this was that we try to avoid pulling in types from the global scope because we try to avoid any sort of dependency on the global scope in general. Once we have proof though that this is causing issues with the build, then we must give up the principle for practical reasons (and only in the minimum viable scope, e.g. this does not change the fact that everywhere else in the codebase we should still do our best to avoid using the global scoped classes, types, functions, etc..). Thank you to @AndreAugusto11 and @RafaelAPB for pointing out this issue through the pull request of his that is currently being worked on at the time of this writing: RafaelAPB#72 Related to but does not address #2811 Signed-off-by: Peter Somogyvari <[email protected]> refactor(SATP-Hermes): remove unused packages * updated openapi version * updated bungee plugin version to 2.0.0-alpha.2 Co-authored-by: Peter Somogyvari <[email protected]> Signed-off-by: André Augusto <[email protected]> Signed-off-by: Peter Somogyvari <[email protected]>
- Loading branch information