Skip to content
This repository has been archived by the owner on Jan 24, 2023. It is now read-only.

Add nodeSelector implementation and tests to kubernetes helm deployment. #4252

Merged
merged 3 commits into from
May 6, 2020
Merged

Conversation

macevil
Copy link
Contributor

@macevil macevil commented May 2, 2020

Add nodeSelector implementation and tests to kubernetes helm deployment.

Description

Added nodeSelector template

{{- if .Values.configInit }}
      nodeSelector:
{{ toYaml .Values.configInit.nodeSelector | indent 8 }}
{{- end }}

to

  • stratos/deploy/kubernetes/console/templates/deployment.yaml
  • stratos/deploy/kubernetes/console/templates/database.yaml
  • stratos/deploy/kubernetes/console/templates/config-init.yaml

Added tests to validate nodeSelector template to

  • stratos/deploy/kubernetes/console/templates/tests/deployment_test.yaml

Created tests to validate nodeSelector template to

  • stratos/deploy/kubernetes/console/templates/tests/database_test.yaml
  • stratos/deploy/kubernetes/console/templates/tests/config_init_test.yaml

Motivation and Context

I have a k3s cluster with four arm64 and one amd64 node and want to run stratos on it. To do this you need to be able to configure the amd64 node in the helm deployment.

How Has This Been Tested?

I have written helm unit tests that validate the configuration.
I deployed the fork on my arm64/amd64 cluster successfully.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • Docs update
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have followed the guidelines in CONTRIBUTING.md, including the required formatting of the commit message

Add nodeSelector template to the helm deployment:
- deployment.yaml
- database.yaml
- config-init.yaml

Add tests to validate nodeSelector template to
- deployment_test.yaml

Create tests to validate nodeSelector template to
- database_test.yaml
- config_init_test.yaml
Add fix for c&p bug to
- database.yaml
- deployment.yaml

Add test to validate nodeSelector template to
- config_init_test.yaml

Add test config to
- database-test.yaml
- deployment-test.yaml
Remove test to validate nodeSelector template to
    - config_init_test.yaml
@nwmac nwmac self-requested a review May 4, 2020 14:37
@nwmac nwmac added the in review label May 4, 2020
@nwmac nwmac linked an issue May 6, 2020 that may be closed by this pull request
@nwmac nwmac merged commit 577bc5e into cloudfoundry:master May 6, 2020
Copy link
Contributor

@nwmac nwmac left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

nwmac added a commit to SUSE/stratos that referenced this pull request May 11, 2020
* Add initial UI for backup/restore

* Convert connection details checkbox to drop down

* Add docs for max list feature

* Add db version check

* Tidy up #1

* Tidying & bug fixes. Handle client_secret

* Add minimum password length

* First pass encrypt/decrypt

* Tidy up

* Fix unit tests

* Re-add tests that now work

* Changes following review

* Move backup into it's own module

* Ensure we filter out maxed results for local lists
- When apps collection is fetched and exceeds maxed allowed certain monitor observables were still firing with the partial collection of apps
- This led to app based stats (like count and memory) to be shown on the space cards & summary
- This was caused by a correction to the pagination monitor to use 'local' monitor observables instead of non-local
- The now correct observable to use did not have a filter for maxed results, so emited the bad data

* CF Push: Ensure we refresh token

* Fix uaa docs. Make UAA endpoint config simpler

* Fix compile issues

* Fixes following merge

* Fix row highlight (see app github tab commit table)
- wasn't showing after list in list changes
- fixes cloudfoundry#4243

* Improve metrics view

* Fix code climate issues

* Fix 2 more code climate issues

* Fix merge issue

* Fix dark mode box shadow
- dark mode styling overode disabling of box shadow

* Helm Chart: Fix Helm 3 compatibility with Release.Time

* Fix multiple metrics requests due to recreated list cards

* Fix most additional /stratos requests on load of endpoints page with metrics

* Add nodeSelector implementation and tests to kubernetes helm deployment. (cloudfoundry#4252)

* Add nodeSelector template and tests

Add nodeSelector template to the helm deployment:
- deployment.yaml
- database.yaml
- config-init.yaml

Add tests to validate nodeSelector template to
- deployment_test.yaml

Create tests to validate nodeSelector template to
- database_test.yaml
- config_init_test.yaml

* Add c&p fix and another nodeSelector test

Add fix for c&p bug to
- database.yaml
- deployment.yaml

Add test to validate nodeSelector template to
- config_init_test.yaml

Add test config to
- database-test.yaml
- deployment-test.yaml

* Remove test

Remove test to validate nodeSelector template to
    - config_init_test.yaml

* Autoscaler improvements

* Fix unit tests

* Fix disabling of polling (cloudfoundry#4260)

- fixes cloudfoundry#4244

* Add Helm 3 lint check to the Travis Helm Chart job (cloudfoundry#4263)

* Helm Chart: Fix Helm 3 compatibility with Release.Time

* Add helm 3 lint

* Fix EndpointCardComponent test

* Increase users table page size before searching for `e2e` user

* Helm node selector docs and values (cloudfoundry#4264)

* Add nodeSelector template and tests

Add nodeSelector template to the helm deployment:
- deployment.yaml
- database.yaml
- config-init.yaml

Add tests to validate nodeSelector template to
- deployment_test.yaml

Create tests to validate nodeSelector template to
- database_test.yaml
- config_init_test.yaml

* Add c&p fix and another nodeSelector test

Add fix for c&p bug to
- database.yaml
- deployment.yaml

Add test to validate nodeSelector template to
- config_init_test.yaml

Add test config to
- database-test.yaml
- deployment-test.yaml

* Remove test

Remove test to validate nodeSelector template to
    - config_init_test.yaml

* More gates on node selector. Added to values.yaml and README

Co-authored-by: Johannes Jungkunst <macevil@gmail.com>

* Fix root list colour in metrics summary page dark mode

* Fix first row alignment in users table

* Fix invite user e2e test (see cloudfoundry#4272)

* Disable random route override setting when deploying apps in e2e tests
- pushes route over max 63 chars

* Disable random route override setting when deploying apps in e2e tests
- pushes route over max 63 chars

* Override name but do not set a random route

* EE Test improvements (cloudfoundry#4274)

* Speed up form fill

* Manage users fix?

* Wait slightly longer

* Improve error output in tests

* Fix invite users error msg check

* Fix manage users e2e

* Need checked in form to check box correctly

* Fix row highligh & Improve metrics summary view (cloudfoundry#4270)

* Fix row highlight (see app github tab commit table)
- wasn't showing after list in list changes
- fixes cloudfoundry#4243

* Improve metrics view

* Fix code climate issues

* Fix 2 more code climate issues

* Fix merge issue

* Fix dark mode box shadow
- dark mode styling overode disabling of box shadow

* Fix multiple metrics requests due to recreated list cards

* Fix most additional /stratos requests on load of endpoints page with metrics

* Fix unit tests

* Fix EndpointCardComponent test

* Fix root list colour in metrics summary page dark mode

* Fix first row alignment in users table

* Fix invite user e2e test (see cloudfoundry#4272)

* Disable random route override setting when deploying apps in e2e tests
- pushes route over max 63 chars

Co-authored-by: Neil MacDougall <neil.macdougall@suse.com>

* Improve view that shows details for a metrics endpoint (cloudfoundry#4258)

* Improve metrics view

* Fix code climate issues

* Fix 2 more code climate issues

* Fix merge issue

* Fix multiple metrics requests due to recreated list cards

* Fix most additional /stratos requests on load of endpoints page with metrics

* Fix unit tests

* Fix EndpointCardComponent test

Co-authored-by: Richard Cox <richard.cox@suse.com>

* Fix row highlight (see app github tab commit table) (cloudfoundry#4257)

* Fix row highlight (see app github tab commit table)
- wasn't showing after list in list changes
- fixes cloudfoundry#4243

* Fix dark mode box shadow
- dark mode styling overode disabling of box shadow

Co-authored-by: Neil MacDougall <neil.macdougall@suse.com>

* E2E Cleanup script: clean other users (cloudfoundry#4269)

* E2E Cleanup script: clean other users and reduce time to 1 hour

* Remove superfluous blank lines

* Revert back to 2 hours

* Version bump and change log for 3.2.0

* E2E Test improvements (cloudfoundry#4275)

* Speed up form fill

* Fix page set setting

* Remove whitespace

* Add ability to provided a wildcard in path when matching urls (cloudfoundry#4277)

* Update releas notes

Co-authored-by: Neil MacDougall <neil_macdougall@hotmail.com>
Co-authored-by: Neil MacDougall <neil.macdougall@suse.com>
Co-authored-by: macevil <30493519+macevil@users.noreply.github.com>
Co-authored-by: Neil MacDougall <nwmac@users.noreply.github.com>
Co-authored-by: Johannes Jungkunst <macevil@gmail.com>
nwmac added a commit to SUSE/stratos that referenced this pull request May 13, 2020
* Add initial UI for backup/restore

* Convert connection details checkbox to drop down

* Add docs for max list feature

* Add db version check

* Tidy up #1

* Tidying & bug fixes. Handle client_secret

* Add minimum password length

* First pass encrypt/decrypt

* Tidy up

* Fix unit tests

* Re-add tests that now work

* Changes following review

* Move backup into it's own module

* Ensure we filter out maxed results for local lists
- When apps collection is fetched and exceeds maxed allowed certain monitor observables were still firing with the partial collection of apps
- This led to app based stats (like count and memory) to be shown on the space cards & summary
- This was caused by a correction to the pagination monitor to use 'local' monitor observables instead of non-local
- The now correct observable to use did not have a filter for maxed results, so emited the bad data

* CF Push: Ensure we refresh token

* Fix uaa docs. Make UAA endpoint config simpler

* Fix compile issues

* Helm Chart: Fix Helm 3 compatibility with Release.Time

* Add nodeSelector implementation and tests to kubernetes helm deployment. (cloudfoundry#4252)

* Add nodeSelector template and tests

Add nodeSelector template to the helm deployment:
- deployment.yaml
- database.yaml
- config-init.yaml

Add tests to validate nodeSelector template to
- deployment_test.yaml

Create tests to validate nodeSelector template to
- database_test.yaml
- config_init_test.yaml

* Add c&p fix and another nodeSelector test

Add fix for c&p bug to
- database.yaml
- deployment.yaml

Add test to validate nodeSelector template to
- config_init_test.yaml

Add test config to
- database-test.yaml
- deployment-test.yaml

* Remove test

Remove test to validate nodeSelector template to
    - config_init_test.yaml

* Autoscaler improvements

* Fix disabling of polling (cloudfoundry#4260)

- fixes cloudfoundry#4244

* Add Helm 3 lint check to the Travis Helm Chart job (cloudfoundry#4263)

* Helm Chart: Fix Helm 3 compatibility with Release.Time

* Add helm 3 lint

* Increase users table page size before searching for `e2e` user

* Helm node selector docs and values (cloudfoundry#4264)

* Add nodeSelector template and tests

Add nodeSelector template to the helm deployment:
- deployment.yaml
- database.yaml
- config-init.yaml

Add tests to validate nodeSelector template to
- deployment_test.yaml

Create tests to validate nodeSelector template to
- database_test.yaml
- config_init_test.yaml

* Add c&p fix and another nodeSelector test

Add fix for c&p bug to
- database.yaml
- deployment.yaml

Add test to validate nodeSelector template to
- config_init_test.yaml

Add test config to
- database-test.yaml
- deployment-test.yaml

* Remove test

Remove test to validate nodeSelector template to
    - config_init_test.yaml

* More gates on node selector. Added to values.yaml and README

Co-authored-by: Johannes Jungkunst <macevil@gmail.com>

* Disable random route override setting when deploying apps in e2e tests
- pushes route over max 63 chars

* Override name but do not set a random route

* EE Test improvements (cloudfoundry#4274)

* Speed up form fill

* Manage users fix?

* Wait slightly longer

* Improve error output in tests

* Fix invite users error msg check

* Fix manage users e2e

* Need checked in form to check box correctly

* Fix row highligh & Improve metrics summary view (cloudfoundry#4270)

* Fix row highlight (see app github tab commit table)
- wasn't showing after list in list changes
- fixes cloudfoundry#4243

* Improve metrics view

* Fix code climate issues

* Fix 2 more code climate issues

* Fix merge issue

* Fix dark mode box shadow
- dark mode styling overode disabling of box shadow

* Fix multiple metrics requests due to recreated list cards

* Fix most additional /stratos requests on load of endpoints page with metrics

* Fix unit tests

* Fix EndpointCardComponent test

* Fix root list colour in metrics summary page dark mode

* Fix first row alignment in users table

* Fix invite user e2e test (see cloudfoundry#4272)

* Disable random route override setting when deploying apps in e2e tests
- pushes route over max 63 chars

Co-authored-by: Neil MacDougall <neil.macdougall@suse.com>

* Improve view that shows details for a metrics endpoint (cloudfoundry#4258)

* Improve metrics view

* Fix code climate issues

* Fix 2 more code climate issues

* Fix merge issue

* Fix multiple metrics requests due to recreated list cards

* Fix most additional /stratos requests on load of endpoints page with metrics

* Fix unit tests

* Fix EndpointCardComponent test

Co-authored-by: Richard Cox <richard.cox@suse.com>

* Fix row highlight (see app github tab commit table) (cloudfoundry#4257)

* Fix row highlight (see app github tab commit table)
- wasn't showing after list in list changes
- fixes cloudfoundry#4243

* Fix dark mode box shadow
- dark mode styling overode disabling of box shadow

Co-authored-by: Neil MacDougall <neil.macdougall@suse.com>

* E2E Cleanup script: clean other users (cloudfoundry#4269)

* E2E Cleanup script: clean other users and reduce time to 1 hour

* Remove superfluous blank lines

* Revert back to 2 hours

* Version bump and change log for 3.2.0

* E2E Test improvements (cloudfoundry#4275)

* Speed up form fill

* Fix page set setting

* Remove whitespace

* Add ability to provided a wildcard in path when matching urls (cloudfoundry#4277)

* Update releas notes

* Only show metrics details on endpoint card/list when connected

* Fix icon alignment on service marketplace view

* Fix issue where user profile was fetched repeatidly (cloudfoundry#4285)

- remove calls to fetchUserProfile
- ensure entity service is used instead of monitor (will fetch profile)
- update FetchUserProfileAction action to a EntityRequestAction
- there's no response to update profile, so ensure we fetch profile again afterwards
- also fixed issue where metrics endpoint reporting a k8s endpoint would cause a console.error

* CF Push: A better fix for the token expiry issue

* Update changelog for 3.2.0 (cloudfoundry#4291)

* Fixes after merge

Co-authored-by: Neil MacDougall <neil_macdougall@hotmail.com>
Co-authored-by: Neil MacDougall <neil.macdougall@suse.com>
Co-authored-by: macevil <30493519+macevil@users.noreply.github.com>
Co-authored-by: Neil MacDougall <nwmac@users.noreply.github.com>
Co-authored-by: Johannes Jungkunst <macevil@gmail.com>
richard-cox added a commit to SUSE/stratos that referenced this pull request Jun 4, 2020
* Add initial UI for backup/restore

* Convert connection details checkbox to drop down

* Add docs for max list feature

* Add db version check

* Tidy up #1

* Tidying & bug fixes. Handle client_secret

* Add minimum password length

* First pass encrypt/decrypt

* Tidy up

* Fix unit tests

* Re-add tests that now work

* Changes following review

* Move backup into it's own module

* Ensure we filter out maxed results for local lists
- When apps collection is fetched and exceeds maxed allowed certain monitor observables were still firing with the partial collection of apps
- This led to app based stats (like count and memory) to be shown on the space cards & summary
- This was caused by a correction to the pagination monitor to use 'local' monitor observables instead of non-local
- The now correct observable to use did not have a filter for maxed results, so emited the bad data

* CF Push: Ensure we refresh token

* Fix uaa docs. Make UAA endpoint config simpler

* Fix compile issues

* Helm Chart: Fix Helm 3 compatibility with Release.Time

* Add nodeSelector implementation and tests to kubernetes helm deployment. (cloudfoundry#4252)

* Add nodeSelector template and tests

Add nodeSelector template to the helm deployment:
- deployment.yaml
- database.yaml
- config-init.yaml

Add tests to validate nodeSelector template to
- deployment_test.yaml

Create tests to validate nodeSelector template to
- database_test.yaml
- config_init_test.yaml

* Add c&p fix and another nodeSelector test

Add fix for c&p bug to
- database.yaml
- deployment.yaml

Add test to validate nodeSelector template to
- config_init_test.yaml

Add test config to
- database-test.yaml
- deployment-test.yaml

* Remove test

Remove test to validate nodeSelector template to
    - config_init_test.yaml

* Autoscaler improvements

* Fix disabling of polling (cloudfoundry#4260)

- fixes cloudfoundry#4244

* Add Helm 3 lint check to the Travis Helm Chart job (cloudfoundry#4263)

* Helm Chart: Fix Helm 3 compatibility with Release.Time

* Add helm 3 lint

* Increase users table page size before searching for `e2e` user

* Helm node selector docs and values (cloudfoundry#4264)

* Add nodeSelector template and tests

Add nodeSelector template to the helm deployment:
- deployment.yaml
- database.yaml
- config-init.yaml

Add tests to validate nodeSelector template to
- deployment_test.yaml

Create tests to validate nodeSelector template to
- database_test.yaml
- config_init_test.yaml

* Add c&p fix and another nodeSelector test

Add fix for c&p bug to
- database.yaml
- deployment.yaml

Add test to validate nodeSelector template to
- config_init_test.yaml

Add test config to
- database-test.yaml
- deployment-test.yaml

* Remove test

Remove test to validate nodeSelector template to
    - config_init_test.yaml

* More gates on node selector. Added to values.yaml and README

Co-authored-by: Johannes Jungkunst <macevil@gmail.com>

* Disable random route override setting when deploying apps in e2e tests
- pushes route over max 63 chars

* Override name but do not set a random route

* EE Test improvements (cloudfoundry#4274)

* Speed up form fill

* Manage users fix?

* Wait slightly longer

* Improve error output in tests

* Fix invite users error msg check

* Fix manage users e2e

* Need checked in form to check box correctly

* Fix row highligh & Improve metrics summary view (cloudfoundry#4270)

* Fix row highlight (see app github tab commit table)
- wasn't showing after list in list changes
- fixes cloudfoundry#4243

* Improve metrics view

* Fix code climate issues

* Fix 2 more code climate issues

* Fix merge issue

* Fix dark mode box shadow
- dark mode styling overode disabling of box shadow

* Fix multiple metrics requests due to recreated list cards

* Fix most additional /stratos requests on load of endpoints page with metrics

* Fix unit tests

* Fix EndpointCardComponent test

* Fix root list colour in metrics summary page dark mode

* Fix first row alignment in users table

* Fix invite user e2e test (see cloudfoundry#4272)

* Disable random route override setting when deploying apps in e2e tests
- pushes route over max 63 chars

Co-authored-by: Neil MacDougall <neil.macdougall@suse.com>

* Improve view that shows details for a metrics endpoint (cloudfoundry#4258)

* Improve metrics view

* Fix code climate issues

* Fix 2 more code climate issues

* Fix merge issue

* Fix multiple metrics requests due to recreated list cards

* Fix most additional /stratos requests on load of endpoints page with metrics

* Fix unit tests

* Fix EndpointCardComponent test

Co-authored-by: Richard Cox <richard.cox@suse.com>

* Fix row highlight (see app github tab commit table) (cloudfoundry#4257)

* Fix row highlight (see app github tab commit table)
- wasn't showing after list in list changes
- fixes cloudfoundry#4243

* Fix dark mode box shadow
- dark mode styling overode disabling of box shadow

Co-authored-by: Neil MacDougall <neil.macdougall@suse.com>

* E2E Cleanup script: clean other users (cloudfoundry#4269)

* E2E Cleanup script: clean other users and reduce time to 1 hour

* Remove superfluous blank lines

* Revert back to 2 hours

* Version bump and change log for 3.2.0

* E2E Test improvements (cloudfoundry#4275)

* Speed up form fill

* Fix page set setting

* Remove whitespace

* Add ability to provided a wildcard in path when matching urls (cloudfoundry#4277)

* Update releas notes

* Only show metrics details on endpoint card/list when connected

* Fix icon alignment on service marketplace view

* Fix issue where user profile was fetched repeatidly (cloudfoundry#4285)

- remove calls to fetchUserProfile
- ensure entity service is used instead of monitor (will fetch profile)
- update FetchUserProfileAction action to a EntityRequestAction
- there's no response to update profile, so ensure we fetch profile again afterwards
- also fixed issue where metrics endpoint reporting a k8s endpoint would cause a console.error

* CF Push: A better fix for the token expiry issue

* Update changelog for 3.2.0 (cloudfoundry#4291)

* Fix misaligned user button
- fixes cloudfoundry#4316

* Temporarily add branch v3.2.1 to travis

* check sso whitelist in more places

Signed-off-by: Ben Berry <ben.berry@gsa.gov>

* refactor sso state checks into single function

Signed-off-by: Ben Berry <ben.berry@gsa.gov>

* Update version

* First pass at changelog (additional SSO fix required)

* Update changelog

* Fixes after merge

* Remove v3.2.1 branch from travis

* Changes following review

* Ensure browser.baseUrl doesn't end with /

Co-authored-by: Neil MacDougall <neil_macdougall@hotmail.com>
Co-authored-by: Neil MacDougall <neil.macdougall@suse.com>
Co-authored-by: macevil <30493519+macevil@users.noreply.github.com>
Co-authored-by: Neil MacDougall <nwmac@users.noreply.github.com>
Co-authored-by: Johannes Jungkunst <macevil@gmail.com>
Co-authored-by: Ben Berry <ben.berry@gsa.gov>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Helm Chart: Add support for node selectors
2 participants