Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add EOL info component #2520

Merged
merged 10 commits into from
Aug 19, 2020
Merged

Add EOL info component #2520

merged 10 commits into from
Aug 19, 2020

Conversation

floreks
Copy link
Contributor

@floreks floreks commented Jul 28, 2020

What this PR does / why we need it:

Features

  • clusters running versions <1.16.0 are highlighted in the UI with a warning
    • in their respective detail views
    • on a project's cluster list
    • in the project list, projects containing EOL clusters are highlighted similarly
  • the warning is of a higher severity (e.g. in red) so that in the future we can use a lower severity visual warning to show clusters which are not yet EOL, but will soon be
  • the specific version value <1.16.0 is relatively easy to change in the future

### Design
@cschieder I could use some ideas here. We are already showing a warning icon for container linux clusters. I don't have any good ideas on how to nicely show more warnings/errors. We also need to differentiate between versions where end-of-life date has already passed (error) and not yet passed (warning).

# Update 2

Zrzut ekranu z 2020-08-14 12-02-58

Zrzut ekranu z 2020-08-14 12-03-12

Zrzut ekranu z 2020-08-14 12-04-30

Zrzut ekranu z 2020-08-14 12-04-41

Which issue(s) this PR fixes:
Fixes #2497

Release note:

Kubermatic Dashboard now supports end-of-life configuration for Kubernetes versions. All versions up to defined version will be marked as deprecated or soon-to-be deprecated in the UI. It can be defined in the config.json file as follows:
...
"end_of_life": {
  "1.17.9": "2020-07-01",
  "1.18.0": "2020-09-15"
}

@kubermatic-bot kubermatic-bot added release-note Denotes a PR that will be considered when it comes time to generate release notes. dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. labels Jul 28, 2020
@kubermatic-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: floreks

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubermatic-bot kubermatic-bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 28, 2020
@floreks floreks marked this pull request as draft July 28, 2020 12:44
@kubermatic-bot kubermatic-bot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Jul 28, 2020
@codecov
Copy link

codecov bot commented Jul 28, 2020

Codecov Report

Merging #2520 into master will increase coverage by 0.32%.
The diff coverage is 85.88%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2520      +/-   ##
==========================================
+ Coverage   52.44%   52.77%   +0.32%     
==========================================
  Files         226      229       +3     
  Lines        7936     8012      +76     
  Branches      927      938      +11     
==========================================
+ Hits         4162     4228      +66     
- Misses       3771     3781      +10     
  Partials        3        3              
Impacted Files Coverage Δ
src/app/app-config.service.ts 29.72% <0.00%> (-1.70%) ⬇️
.../components/notification/notification.component.ts 69.56% <0.00%> (ø)
...app/cluster/cluster-list/cluster-list.component.ts 75.49% <66.66%> (+0.49%) ⬆️
src/app/shared/components/eol/component.ts 76.47% <76.47%> (ø)
src/app/shared/components/chip/component.ts 80.00% <80.00%> (ø)
src/app/shared/services/eol.service.ts 90.90% <90.90%> (ø)
...luster-version/change-cluster-version.component.ts 97.77% <100.00%> (+0.34%) ⬆️
...details/version-picker/version-picker.component.ts 81.53% <100.00%> (+4.17%) ⬆️
src/app/shared/shared.module.ts 100.00% <100.00%> (ø)
...rc/app/testing/services/app-config-mock.service.ts 88.88% <100.00%> (+1.38%) ⬆️
... and 3 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update f2d6236...49872b6. Read the comment docs.

@floreks
Copy link
Contributor Author

floreks commented Aug 11, 2020

@kdomanski

in the project list, projects containing EOL clusters are highlighted similarly

What about a case where there are multiple clusters within the project and some of them are near EOL and some of them use already deprecated versions?

Should we show multiple warnings/errors? Show only error with generic information about status?

Also, I think that this would have to be handled by the API directly since we do not get information about the clusters on the project list view and we shouldn't get all the clusters for all projects as it would be a very expensive operation. We'd need to modify the existing project list endpoint probably.

@floreks
Copy link
Contributor Author

floreks commented Aug 14, 2020

@cschieder PTAL at new screenshots.

@kubermatic-bot kubermatic-bot added size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Aug 14, 2020
@maciaszczykm
Copy link
Contributor

/lgtm
/hold

@kubermatic-bot kubermatic-bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Aug 14, 2020
@kubermatic-bot kubermatic-bot added the lgtm Indicates that a PR is ready to be merged. label Aug 14, 2020
@kubermatic-bot
Copy link
Contributor

LGTM label has been added.

Git tree hash: a18b3d8d25ef8f46c29d723d15fb71231a512658

@kubermatic-bot kubermatic-bot removed the lgtm Indicates that a PR is ready to be merged. label Aug 14, 2020
@floreks floreks marked this pull request as ready for review August 17, 2020 07:30
@kubermatic-bot kubermatic-bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Aug 17, 2020
@floreks
Copy link
Contributor Author

floreks commented Aug 17, 2020

/test pre-dashboard-test-e2e

@floreks
Copy link
Contributor Author

floreks commented Aug 19, 2020

/hold cancel

@kubermatic-bot kubermatic-bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Aug 19, 2020
@maciaszczykm
Copy link
Contributor

/lgtm

@kubermatic-bot kubermatic-bot added the lgtm Indicates that a PR is ready to be merged. label Aug 19, 2020
@kubermatic-bot
Copy link
Contributor

LGTM label has been added.

Git tree hash: 405f8c2f7195504796db2dbb84f0f9377d92957c

@kubermatic-bot kubermatic-bot merged commit 42ad6aa into kubermatic:master Aug 19, 2020
@floreks floreks deleted the feature/eol branch August 19, 2020 11:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. lgtm Indicates that a PR is ready to be merged. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Provide a warning when clusters are running EOL version of K8S
3 participants