Skip to content

Commit

Permalink
Private/ms895784/more ux fixups (#3071)
Browse files Browse the repository at this point in the history
* GH6883 review comments (#3072)

Signed-off-by: alexandr cumarav <[email protected]>

* feat: register gateway to additional discovery service (#3068)

* chore: move babel to dev, modify webpack config, spring security

Signed-off-by: achmelo <[email protected]>

* fix: Integration tests for new Cloud Gateway routing (#3044)

* Added routing integration tests, and some fixes

Signed-off-by: Elena Kubantseva <[email protected]>

* More integration tests and fixes

Signed-off-by: Elena Kubantseva <[email protected]>

* Addressed review comments

Signed-off-by: Elena Kubantseva <[email protected]>

---------

Signed-off-by: Elena Kubantseva <[email protected]>
Signed-off-by: achmelo <[email protected]>

* chore: update dependencies (#3048)

* chore: move babel to dev, modify webpack config, spring security

Signed-off-by: achmelo <[email protected]>

* update npm lock

Signed-off-by: achmelo <[email protected]>

* old component update

Signed-off-by: achmelo <[email protected]>

---------

Signed-off-by: achmelo <[email protected]>

* remove dependency from spring enabler (#3052)

Signed-off-by: Pablo Hernán Carle <[email protected]>
Co-authored-by: Pablo Hernán Carle <[email protected]>
Signed-off-by: achmelo <[email protected]>

* [skip ci] Update version

Signed-off-by: achmelo <[email protected]>

* [Gradle Release plugin] [skip ci] Before tag commit 'v2.10.15'.

Signed-off-by: achmelo <[email protected]>

* [Gradle Release plugin] Create new version: 'v2.11.0-SNAPSHOT'.

Signed-off-by: achmelo <[email protected]>

* [skip ci] Update version

Signed-off-by: achmelo <[email protected]>

* [Gradle Release plugin] [skip ci] Before tag commit 'v2.11.0'.

Signed-off-by: achmelo <[email protected]>

* [Gradle Release plugin] Create new version: 'v2.11.1-SNAPSHOT'.

Signed-off-by: achmelo <[email protected]>

* chore: Update UI per suggestions from UX + add keyboard shortcuts - Mike (#3053)

* chore[ui]: Update UI per suggestions from UX (#3047)

* chore[ui]: Update UI per suggestions from UX

Update screens to closer align to figma.

Signed-off-by: Mike Simpson <[email protected]>

* style inputs and focus and hover

---------

Signed-off-by: Mike Simpson <[email protected]>
Co-authored-by: Andrea Tabone <[email protected]>

* wip

Signed-off-by: at670475 <[email protected]>

* fix zowe ui

Signed-off-by: at670475 <[email protected]>

* address sonar complains

Signed-off-by: at670475 <[email protected]>

* add tests

Signed-off-by: at670475 <[email protected]>

* add test

Signed-off-by: at670475 <[email protected]>

* add test

Signed-off-by: at670475 <[email protected]>

* fix dev mode and navbar

Signed-off-by: at670475 <[email protected]>

---------

Signed-off-by: Mike Simpson <[email protected]>
Signed-off-by: at670475 <[email protected]>
Co-authored-by: ms895784 <[email protected]>
Signed-off-by: achmelo <[email protected]>

* GH2883 Move ServicesInfoService to the apiml-common (#3056)

Signed-off-by: alexandr cumarav <[email protected]>
Co-authored-by: alexandr cumarav <[email protected]>
Signed-off-by: achmelo <[email protected]>

* feat: verify service SSO support from API ML (#3054)

* feat(gateway): Reformatted and changed messages a little bit, also changed the container to use sets instead of a list

Signed-off-by: matejpopda <[email protected]>

* feat(gateway): Work on SSO verification

Signed-off-by: matejpopda <[email protected]>

* feat(gateway): Fixed style problems

Signed-off-by: matejpopda <[email protected]>

* feat(gateway): Fixed tests

Signed-off-by: matejpopda <[email protected]>

* feat(gateway): Coverage

Signed-off-by: matejpopda <[email protected]>

* feat(gateway): fixed warnings

Signed-off-by: matejpopda <[email protected]>

* feat(gateway): fixed integration tests

Signed-off-by: matejpopda <[email protected]>

* feat(gateway): small refactoring

Signed-off-by: matejpopda <[email protected]>

* feat(gateway): removed some files from PR

Signed-off-by: matejpopda <[email protected]>

* feat(gateway): addressed some comments

Signed-off-by: matejpopda <[email protected]>

---------

Signed-off-by: matejpopda <[email protected]>
Signed-off-by: achmelo <[email protected]>

* register GW into 2 DS with one being primary for auth, service info,..

Signed-off-by: achmelo <[email protected]>

* wrapper for discovery clients

Signed-off-by: achmelo <[email protected]>

* feat: Forward client certificate from central gateway to domain gateway in request header (#3046)

* Add new filter for re-sending auth source.

Signed-off-by: Petr Weinfurt <[email protected]>

* add license text

Signed-off-by: Petr Weinfurt <[email protected]>

* Read certificate from request header

Signed-off-by: at670475 <[email protected]>

* add integration test

Signed-off-by: at670475 <[email protected]>

* add header to test

Signed-off-by: at670475 <[email protected]>

* add unit test

Signed-off-by: at670475 <[email protected]>

* add error to the log

Signed-off-by: at670475 <[email protected]>

* optmize code and check for certificate in the attibute

Signed-off-by: at670475 <[email protected]>

* Add certificate signature to the additional header

Signed-off-by: Petr Weinfurt <[email protected]>

* Add public rest endpoint to provide JWK set.

Signed-off-by: Petr Weinfurt <[email protected]>

* WellKnownRestController and tests

Signed-off-by: Petr Weinfurt <[email protected]>

* add licenses

Signed-off-by: Petr Weinfurt <[email protected]>

* Add simple integration test

Signed-off-by: Petr Weinfurt <[email protected]>

* Add integration tests for well-known endpoint.

Signed-off-by: Petr Weinfurt <[email protected]>

* Add some javadoc.

Signed-off-by: Petr Weinfurt <[email protected]>

* Fix integration test

Signed-off-by: Petr Weinfurt <[email protected]>

* validate cert

Signed-off-by: at670475 <[email protected]>

* Simplify retrieving the public key.

Signed-off-by: Petr Weinfurt <[email protected]>

* Fix for integration tests

Signed-off-by: Petr Weinfurt <[email protected]>

* Cloud gateway provides certificate chain on public endpoint (instead of public key). Certificate is sent in Client-Cert header.

Signed-off-by: Petr Weinfurt <[email protected]>

* Cloud gateway implementation fixes

Signed-off-by: Petr Weinfurt <[email protected]>

* Categorize certs filter WIP

Signed-off-by: Petr Weinfurt <[email protected]>

* Merge with master branch

Signed-off-by: Petr Weinfurt <[email protected]>

* Fix casting exception

Signed-off-by: Petr Weinfurt <[email protected]>

* Cleanup. Add log messages.

Signed-off-by: Petr Weinfurt <[email protected]>

* Fixes

Signed-off-by: Petr Weinfurt <[email protected]>

* Add tests for CategorizeCertsFilter

Signed-off-by: Petr Weinfurt <[email protected]>

* Add CertificateValidatorTest

Signed-off-by: Petr Weinfurt <[email protected]>

* Add caching trusted certificates

Signed-off-by: Petr Weinfurt <[email protected]>

* Fix message types

Signed-off-by: Petr Weinfurt <[email protected]>

* Add javadoc

Signed-off-by: Petr Weinfurt <[email protected]>

* remove unnecessary dependency

Signed-off-by: Petr Weinfurt <[email protected]>

* Prepare SSL Auth for integration test.

Signed-off-by: Petr Weinfurt <[email protected]>

* Remove obsolete test

Signed-off-by: Petr Weinfurt <[email protected]>

* Add new runtime variables to start.sh files.

Signed-off-by: Petr Weinfurt <[email protected]>

* Add new options to manifest.yaml files

Signed-off-by: Petr Weinfurt <[email protected]>

* fix integration test

Signed-off-by: Petr Weinfurt <[email protected]>

* Update IT

Signed-off-by: Petr Weinfurt <[email protected]>

* Update keystore for IT

Signed-off-by: Petr Weinfurt <[email protected]>

* Update error messages

Signed-off-by: Petr Weinfurt <[email protected]>

* Update common name in the certificate

Signed-off-by: Petr Weinfurt <[email protected]>

* Update common name in the certificate

Signed-off-by: Petr Weinfurt <[email protected]>

* Update common name in the certificate

Signed-off-by: Petr Weinfurt <[email protected]>

* Update common name in the certificate

Signed-off-by: Petr Weinfurt <[email protected]>

* Add tests for CategorizeCertsFilter

Signed-off-by: Petr Weinfurt <[email protected]>

* Add CA certificate to keystore

Signed-off-by: Petr Weinfurt <[email protected]>

* Add unit tests

Signed-off-by: Petr Weinfurt <[email protected]>

* disable forwarded cert in gateway on localhost

Signed-off-by: Petr Weinfurt <[email protected]>

* Resolve code review

Signed-off-by: Petr Weinfurt <[email protected]>

* Increase coverage

Signed-off-by: Petr Weinfurt <[email protected]>

* Externalize the update public keys function to the CategorizeCertsFilter. Update tests.

Signed-off-by: Petr Weinfurt <[email protected]>

* Increase coverage.

Signed-off-by: Petr Weinfurt <[email protected]>

---------

Signed-off-by: Petr Weinfurt <[email protected]>
Signed-off-by: at670475 <[email protected]>
Co-authored-by: Andrea Tabone <[email protected]>
Co-authored-by: achmelo <[email protected]>
Signed-off-by: achmelo <[email protected]>

* chore: add media icon and change link color (#3057)

---------

Signed-off-by: at670475 <[email protected]>
Signed-off-by: Pablo Hernán Carle <[email protected]>
Co-authored-by: Pablo Hernán Carle <[email protected]>
Co-authored-by: Pablo Carle <[email protected]>
Signed-off-by: achmelo <[email protected]>

* fix unregistering

Signed-off-by: achmelo <[email protected]>

* cleanup

Signed-off-by: achmelo <[email protected]>

* IT for multiple registration

Signed-off-by: achmelo <[email protected]>

* revert reading of DC list to original version

Signed-off-by: achmelo <[email protected]>

* revert checkstyle

Signed-off-by: achmelo <[email protected]>

* REMOVE! hardcode DS url for test

Signed-off-by: achmelo <[email protected]>

* run new job only

Signed-off-by: achmelo <[email protected]>

* skip tests

Signed-off-by: achmelo <[email protected]>

* styles

Signed-off-by: achmelo <[email protected]>

* align with original CITests

Signed-off-by: achmelo <[email protected]>

* add metrics service test

Signed-off-by: achmelo <[email protected]>

* Revert "run new job only"

This reverts commit 530047e.

Signed-off-by: achmelo <[email protected]>

* fix: Fixes for API Catalog standalone mode (#3050)

---------

Signed-off-by: Pablo Hernán Carle <[email protected]>
Co-authored-by: Pablo Hernán Carle <[email protected]>
Signed-off-by: achmelo <[email protected]>

* fix: header in api portal (#3059)

Signed-off-by: Pablo Hernán Carle <[email protected]>
Co-authored-by: Pablo Hernán Carle <[email protected]>
Signed-off-by: achmelo <[email protected]>

* verify registration with second DS

Signed-off-by: achmelo <[email protected]>

* hardcode discovery host

Signed-off-by: achmelo <[email protected]>

* revert local auth provider

Signed-off-by: achmelo <[email protected]>

* getting the list of discovery services from configuration

Signed-off-by: sj895092 <[email protected]>
Signed-off-by: achmelo <[email protected]>

* create bean conditionally

Signed-off-by: achmelo <[email protected]>

* changed the name from discoveryServiceUrlsList to centralRegistryUrls

Signed-off-by: sj895092 <[email protected]>
Signed-off-by: achmelo <[email protected]>

* Changed name of  a variable to url

Signed-off-by: sj895092 <[email protected]>
Signed-off-by: achmelo <[email protected]>

* enable second registration in CITests

Signed-off-by: achmelo <[email protected]>

* default value must be empty

Signed-off-by: achmelo <[email protected]>

* revert logging level

Signed-off-by: achmelo <[email protected]>

* fix styles

Signed-off-by: achmelo <[email protected]>

* code review, store unit test reports

Signed-off-by: achmelo <[email protected]>

* increase test coverage

Signed-off-by: achmelo <[email protected]>

* add licenses

Signed-off-by: achmelo <[email protected]>

* AOP check is done also inside getTargetObject

Signed-off-by: achmelo <[email protected]>

* remove empty test

Signed-off-by: achmelo <[email protected]>

* code review

Signed-off-by: achmelo <[email protected]>

* Revert "code review"

This reverts commit 5cad7ed.

* shutdown discoveryclient in test

Signed-off-by: achmelo <[email protected]>

* Revert "Revert "code review""

This reverts commit 956dbd6

Signed-off-by: achmelo <[email protected]>

* skip test

Signed-off-by: achmelo <[email protected]>

* debug system exit

Signed-off-by: achmelo <[email protected]>

* return test

Signed-off-by: achmelo <[email protected]>

* remove debugging

Signed-off-by: achmelo <[email protected]>

* remove system exit

Signed-off-by: achmelo <[email protected]>

* separate startup check from build

Signed-off-by: achmelo <[email protected]>

---------

Signed-off-by: achmelo <[email protected]>
Signed-off-by: Elena Kubantseva <[email protected]>
Signed-off-by: Pablo Hernán Carle <[email protected]>
Signed-off-by: Mike Simpson <[email protected]>
Signed-off-by: at670475 <[email protected]>
Signed-off-by: alexandr cumarav <[email protected]>
Signed-off-by: matejpopda <[email protected]>
Signed-off-by: Petr Weinfurt <[email protected]>
Signed-off-by: sj895092 <[email protected]>
Co-authored-by: Elena Kubantseva <[email protected]>
Co-authored-by: Pablo Carle <[email protected]>
Co-authored-by: Pablo Hernán Carle <[email protected]>
Co-authored-by: Zowe Robot <[email protected]>
Co-authored-by: Andrea Tabone <[email protected]>
Co-authored-by: ms895784 <[email protected]>
Co-authored-by: cumarav <[email protected]>
Co-authored-by: alexandr cumarav <[email protected]>
Co-authored-by: matejpopda <[email protected]>
Co-authored-by: Petr Weinfurt <[email protected]>
Co-authored-by: Andrea Tabone <[email protected]>
Co-authored-by: sj895092 <[email protected]>

* feat: Add centralRegistryUrls config parameter to zowe.yaml (#3069)

* (feat) Add centralRegistryUrls config parameter to zowe.yaml

Signed-off-by: Petr Weinfurt <[email protected]>

* Add cert forwarding configuration to schema

Signed-off-by: Petr Weinfurt <[email protected]>

* Add cert forwarding configuration to schema

Signed-off-by: Petr Weinfurt <[email protected]>

* add mock services to prevent shutdown of gateway

Signed-off-by: achmelo <[email protected]>

---------

Signed-off-by: Petr Weinfurt <[email protected]>
Signed-off-by: achmelo <[email protected]>
Co-authored-by: achmelo <[email protected]>
Co-authored-by: achmelo <[email protected]>

* chore: Update dependencies to avoid vulnerabilities V2 (#3074)

Signed-off-by: Pavel Jareš <[email protected]>

* chore: Add html-loader in webpack config (#3073)

* Add html loader to build html files

Signed-off-by: at670475 <[email protected]>

* add html-loader as dev-dependency

Signed-off-by: at670475 <[email protected]>

* remove comment

Signed-off-by: at670475 <[email protected]>

* custom-logo could have double slashes

Signed-off-by: Pablo Hernán Carle <[email protected]>

* fix url

Signed-off-by: Pablo Hernán Carle <[email protected]>

---------

Signed-off-by: at670475 <[email protected]>
Signed-off-by: Pablo Hernán Carle <[email protected]>
Co-authored-by: Pablo Hernán Carle <[email protected]>

* chore[ui]: Update UI per suggestions from UX
Update screens with notes from jan/mirek

Signed-off-by: Mike Simpson <[email protected]>

* style fab button

* rebase

* flex direction column footer

* unbroke the dashboard footer, now details has too many scrollbars

* Supress more swagger details

* Feeback in own component, hide license on details

* Footer wrapping better, hide feedback button on small screens

* mobile navigations

* changed favicon

* fix menu animation, move open/close fn

* img size

* wip changes for tiles?

* Looks ok on small, not so good on big

* flexing tiles

* lint fixup

* Hardcode tech docs, param for feedback

* remove margin on techdoc in mobile menu

* more feedback tweaks

* fixed up header to be img text img

* fix flex issues, mobile zowe links, footer tweaks

* text align

* merge

* fix scroll issue

* fix lint error

* cleanup swagger param spacing

* space between try it out button and param header, space between params, hide example

* Make brett happier with fonts

* Pivot from provided html for to custom react form for feedback

---------

Signed-off-by: alexandr cumarav <[email protected]>
Signed-off-by: achmelo <[email protected]>
Signed-off-by: Elena Kubantseva <[email protected]>
Signed-off-by: Pablo Hernán Carle <[email protected]>
Signed-off-by: Mike Simpson <[email protected]>
Signed-off-by: at670475 <[email protected]>
Signed-off-by: matejpopda <[email protected]>
Signed-off-by: Petr Weinfurt <[email protected]>
Signed-off-by: sj895092 <[email protected]>
Signed-off-by: Pavel Jareš <[email protected]>
Co-authored-by: cumarav <[email protected]>
Co-authored-by: achmelo <[email protected]>
Co-authored-by: Elena Kubantseva <[email protected]>
Co-authored-by: Pablo Carle <[email protected]>
Co-authored-by: Pablo Hernán Carle <[email protected]>
Co-authored-by: Zowe Robot <[email protected]>
Co-authored-by: Andrea Tabone <[email protected]>
Co-authored-by: alexandr cumarav <[email protected]>
Co-authored-by: matejpopda <[email protected]>
Co-authored-by: Petr Weinfurt <[email protected]>
Co-authored-by: Andrea Tabone <[email protected]>
Co-authored-by: sj895092 <[email protected]>
Co-authored-by: achmelo <[email protected]>
Co-authored-by: Pavel Jareš <[email protected]>
Co-authored-by: Brian Lee <[email protected]>
  • Loading branch information
16 people authored Sep 15, 2023
1 parent 5d854c4 commit a23bae1
Show file tree
Hide file tree
Showing 68 changed files with 26,334 additions and 277 deletions.
11 changes: 10 additions & 1 deletion .github/workflows/ci-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,22 @@ jobs:

- name: Build with Gradle
run: >
./gradlew clean build runStartUpCheck --info --scan -Partifactory_user=${{ secrets.ARTIFACTORY_USERNAME }} -Partifactory_password=${{ secrets.ARTIFACTORY_PASSWORD }}
./gradlew clean build --info --scan
- name: Run startup check
run: >
./gradlew runStartUpCheck --info --scan
- name: Store results
uses: actions/upload-artifact@v2
if: always()
with:
name: CITests-${{ env.JOB_ID }}
path: |
integration-tests/build/reports/**
gateway-service/build/reports/**
api-catalog-services/build/reports/**
caching-service/build/reports/**
cloud-gateway-service/build/reports/**
discovery-service/build/reports/**
metrics-service/build/reports/**
- uses: ./.github/actions/teardown
9 changes: 9 additions & 0 deletions .github/workflows/containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,12 +55,19 @@ jobs:
image: ghcr.io/balhar-jakub/discovery-service:${{ github.run_id }}-${{ github.run_number }}
volumes:
- /api-defs:/api-defs
discovery-service-2:
image: ghcr.io/balhar-jakub/discovery-service:${{ github.run_id }}-${{ github.run_number }}
volumes:
- /api-defs:/api-defs
env:
APIML_SERVICE_HOSTNAME: discovery-service-2
gateway-service:
image: ghcr.io/balhar-jakub/gateway-service:${{ github.run_id }}-${{ github.run_number }}
env:
APIML_SECURITY_AUTH_JWT_CUSTOMAUTHHEADER: customJwtHeader
APIML_SECURITY_AUTH_PASSTICKET_CUSTOMUSERHEADER: customUserHeader
APIML_SECURITY_AUTH_PASSTICKET_CUSTOMAUTHHEADER: customPassticketHeader
APIML_SERVICE_CENTRALREGISTRYURLS: https://discovery-service-2:10011/eureka
mock-services:
image: ghcr.io/balhar-jakub/mock-services:${{ github.run_id }}-${{ github.run_number }}
metrics-service:
Expand Down Expand Up @@ -156,6 +163,8 @@ jobs:
APIML_SERVICE_FORWARDCLIENTCERTENABLED: true
discoverable-client:
image: ghcr.io/balhar-jakub/discoverable-client:${{ github.run_id }}-${{ github.run_number }}
mock-services:
image: ghcr.io/balhar-jakub/mock-services:${{ github.run_id }}-${{ github.run_number }}

steps:
- uses: actions/checkout@v3
Expand Down
1 change: 0 additions & 1 deletion .run/GatewayApplication.run.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
</param>
</additionalParameters>
<option name="ALTERNATIVE_JRE_PATH" value="1.8 (2)" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="true" />
<module name="api-layer.gateway-service.main" />
<option name="SHORTEN_COMMAND_LINE" value="MANIFEST" />
<option name="SPRING_BOOT_MAIN_CLASS" value="org.zowe.apiml.gateway.GatewayApplication" />
Expand Down
20 changes: 17 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,10 +53,10 @@ The following tools are required to build and develop the API Mediation Layer:
./gradlew build
```

2. Install `concurrently` globally:
2. Install the same version of the `concurrently` globally:

```sh
npm install -g concurrently
npm install -g concurrently@^6.0.0
```

3. Run all service on your local machine:
Expand All @@ -71,7 +71,21 @@ Alternatively, to use Docker to run the API ML, consult the [Docker README](dock

By default the API Mediation Layer for local development uses mock zOSMF as the authentication provider. For development purposes, log in using the default setting `USER` for the username, and `validPassword` as the password

The API Mediation Layer can also use dummy credentials for development purposes. For development purposes, log in using the default setting `user` for the username, and `user` as the password.
The API Mediation Layer can also use dummy credentials for development purposes. For development purposes, log in using the default setting `user` for the username, and `user` as the password.
<details>
<summary>Configure dummy credentials provider</summary>
### Configure `dummy` credentials provider

Modify [gateway-service.yml](/config/local/gateway-service.yml)
```yaml
apiml:
security:
auth:
#provider: zosmf
provider: dummy

```
</details>

For more information, see [API Mediation Layer Security](https://docs.zowe.org/stable/extend/extend-apiml/zowe-api-mediation-layer-security-overview).

Expand Down
4 changes: 4 additions & 0 deletions api-catalog-ui/frontend/config-overrides.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ module.exports = {

config.module.rules = [
...config.module.rules,
{
test: /\.html$/i,
use: 'html-loader',
},
{
resolve: {
fallback: { querystring: require.resolve('querystring-es3') },
Expand Down
Loading

0 comments on commit a23bae1

Please sign in to comment.