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

[Ingest Node Pipelines] Community ID Form Does Not Validate Against Decimal Values for Seed Parameter #110417

Closed
cuff-links opened this issue Aug 28, 2021 · 2 comments · Fixed by #196527
Assignees
Labels
bug Fixes for quality problems that affect the customer experience Feature:Ingest Node Pipelines Ingest node pipelines management good first issue low hanging fruit Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more

Comments

@cuff-links
Copy link
Contributor

Summary

Environment

Kibana: 7.15.0 BC3
Elasticsearch 7.15.0 BC3
Browsers: All Browsers

Steps to reproduce:

1.) Navigate to Ingest Node Pipelines
2.) Create a new pipeline
3.) Add a name and then put a decimea in the Seed field like 5.9
4.) Try to save.

Expected Result

The client side is supposed to let you know that the given value has to be an integer.

Actual Result

The form saves and when you try to create the pipeline you get an error from the server. See image.

Screen Shot 2021-08-27 at 9 18 32 PM

@cuff-links cuff-links added bug Fixes for quality problems that affect the customer experience Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more Feature:Ingest Node Pipelines Ingest node pipelines management labels Aug 28, 2021
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-stack-management (Team:Stack Management)

@alisonelizabeth alisonelizabeth added the good first issue low hanging fruit label Aug 30, 2024
@alisonelizabeth alisonelizabeth removed the Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more label Sep 16, 2024
@botelastic botelastic bot added the needs-team Issues missing a team label label Sep 16, 2024
@alisonelizabeth alisonelizabeth added the Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more label Sep 16, 2024
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-management (Team:Kibana Management)

@botelastic botelastic bot removed the needs-team Issues missing a team label label Sep 16, 2024
SoniaSanzV added a commit that referenced this issue Oct 24, 2024
…x_lifecycle_management (#196527)

Closes [#110417 ](#110417)
## Summary
In the Ingest Node Pipelines section, when the users created a new
pipeline selecting de Community ID processor the users could set a
non-integer number in this field. Then, they received a server side
error when tried to create a pipeline. For fixing this, a validation
must be added in the client.

We didn't have a reusable validation for this case, but we did have a
custom validation for integer values in the Index lifecycle management
plugin. We also had the necessary translation in that plugin. So I went
forward with:

* I created a new integer validator in the `es_ui_shared` package as it
is a fairly common validation and we could take advantage of it in the
future. Also added a couple of unit test there for this validator.

* I reused in the `ingest_pipelines` plugin the strings that already
existed in `index_lifecycle_management`.

* I added the new validation in the Community ID form in the
`ingest_pipelines` plugin. Also added some test verifying that the
processor doesn't create when the seeds validation fails.

* Changed the method in the `index_lifecycle_management` validator so
now it uses the reusable one.

Now the Ingest pipeline forms shows the validation when the number is
not an integer:
![Screenshot 2024-10-16 at 12 16
47](https://github.com/user-attachments/assets/1db9ad22-b144-44a5-9012-d3ebd5a19b6f)

And the `index_lifecycle_management` still shows the validations as
expected:

<img width="756" alt="Screenshot 2024-10-16 at 11 49 53"
src="https://github.com/user-attachments/assets/680886a5-355e-4637-9da9-4b93b396e751">
kibanamachine pushed a commit to kibanamachine/kibana that referenced this issue Oct 24, 2024
…x_lifecycle_management (elastic#196527)

Closes [elastic#110417 ](elastic#110417)
## Summary
In the Ingest Node Pipelines section, when the users created a new
pipeline selecting de Community ID processor the users could set a
non-integer number in this field. Then, they received a server side
error when tried to create a pipeline. For fixing this, a validation
must be added in the client.

We didn't have a reusable validation for this case, but we did have a
custom validation for integer values in the Index lifecycle management
plugin. We also had the necessary translation in that plugin. So I went
forward with:

* I created a new integer validator in the `es_ui_shared` package as it
is a fairly common validation and we could take advantage of it in the
future. Also added a couple of unit test there for this validator.

* I reused in the `ingest_pipelines` plugin the strings that already
existed in `index_lifecycle_management`.

* I added the new validation in the Community ID form in the
`ingest_pipelines` plugin. Also added some test verifying that the
processor doesn't create when the seeds validation fails.

* Changed the method in the `index_lifecycle_management` validator so
now it uses the reusable one.

Now the Ingest pipeline forms shows the validation when the number is
not an integer:
![Screenshot 2024-10-16 at 12 16
47](https://github.com/user-attachments/assets/1db9ad22-b144-44a5-9012-d3ebd5a19b6f)

And the `index_lifecycle_management` still shows the validations as
expected:

<img width="756" alt="Screenshot 2024-10-16 at 11 49 53"
src="https://github.com/user-attachments/assets/680886a5-355e-4637-9da9-4b93b396e751">

(cherry picked from commit 5a42e58)
kibanamachine added a commit that referenced this issue Oct 24, 2024
…d Index_lifecycle_management (#196527) (#197685)

# Backport

This will backport the following commits from `main` to `8.x`:
- [Create a common Int Validator and use it in ingest_pipelines and
Index_lifecycle_management
(#196527)](#196527)

<!--- Backport version: 9.4.3 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Sonia Sanz
Vivas","email":"[email protected]"},"sourceCommit":{"committedDate":"2024-10-24T16:09:38Z","message":"Create
a common Int Validator and use it in ingest_pipelines and
Index_lifecycle_management (#196527)\n\nCloses [#110417
](https://github.com/elastic/kibana/issues/110417)\r\n## Summary\r\nIn
the Ingest Node Pipelines section, when the users created a
new\r\npipeline selecting de Community ID processor the users could set
a\r\nnon-integer number in this field. Then, they received a server
side\r\nerror when tried to create a pipeline. For fixing this, a
validation\r\nmust be added in the client.\r\n\r\nWe didn't have a
reusable validation for this case, but we did have a\r\ncustom
validation for integer values in the Index lifecycle
management\r\nplugin. We also had the necessary translation in that
plugin. So I went\r\nforward with:\r\n\r\n* I created a new integer
validator in the `es_ui_shared` package as it\r\nis a fairly common
validation and we could take advantage of it in the\r\nfuture. Also
added a couple of unit test there for this validator.\r\n\r\n* I reused
in the `ingest_pipelines` plugin the strings that already\r\nexisted in
`index_lifecycle_management`.\r\n\r\n* I added the new validation in the
Community ID form in the\r\n`ingest_pipelines` plugin. Also added some
test verifying that the\r\nprocessor doesn't create when the seeds
validation fails.\r\n\r\n* Changed the method in the
`index_lifecycle_management` validator so\r\nnow it uses the reusable
one.\r\n\r\nNow the Ingest pipeline forms shows the validation when the
number is\r\nnot an integer:\r\n![Screenshot 2024-10-16 at 12
16\r\n47](https://github.com/user-attachments/assets/1db9ad22-b144-44a5-9012-d3ebd5a19b6f)\r\n\r\nAnd
the `index_lifecycle_management` still shows the validations
as\r\nexpected:\r\n\r\n<img width=\"756\" alt=\"Screenshot 2024-10-16 at
11 49
53\"\r\nsrc=\"https://github.com/user-attachments/assets/680886a5-355e-4637-9da9-4b93b396e751\">","sha":"5a42e5861dc53911e10a3140d8cb5366fea98ff7","branchLabelMapping":{"^v9.0.0$":"main","^v8.17.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Kibana
Management","release_note:skip","v9.0.0","Feature:Ingest Node
Pipelines","backport:prev-minor","v8.17.0"],"title":"Create a common Int
Validator and use it in ingest_pipelines and
Index_lifecycle_management","number":196527,"url":"https://github.com/elastic/kibana/pull/196527","mergeCommit":{"message":"Create
a common Int Validator and use it in ingest_pipelines and
Index_lifecycle_management (#196527)\n\nCloses [#110417
](https://github.com/elastic/kibana/issues/110417)\r\n## Summary\r\nIn
the Ingest Node Pipelines section, when the users created a
new\r\npipeline selecting de Community ID processor the users could set
a\r\nnon-integer number in this field. Then, they received a server
side\r\nerror when tried to create a pipeline. For fixing this, a
validation\r\nmust be added in the client.\r\n\r\nWe didn't have a
reusable validation for this case, but we did have a\r\ncustom
validation for integer values in the Index lifecycle
management\r\nplugin. We also had the necessary translation in that
plugin. So I went\r\nforward with:\r\n\r\n* I created a new integer
validator in the `es_ui_shared` package as it\r\nis a fairly common
validation and we could take advantage of it in the\r\nfuture. Also
added a couple of unit test there for this validator.\r\n\r\n* I reused
in the `ingest_pipelines` plugin the strings that already\r\nexisted in
`index_lifecycle_management`.\r\n\r\n* I added the new validation in the
Community ID form in the\r\n`ingest_pipelines` plugin. Also added some
test verifying that the\r\nprocessor doesn't create when the seeds
validation fails.\r\n\r\n* Changed the method in the
`index_lifecycle_management` validator so\r\nnow it uses the reusable
one.\r\n\r\nNow the Ingest pipeline forms shows the validation when the
number is\r\nnot an integer:\r\n![Screenshot 2024-10-16 at 12
16\r\n47](https://github.com/user-attachments/assets/1db9ad22-b144-44a5-9012-d3ebd5a19b6f)\r\n\r\nAnd
the `index_lifecycle_management` still shows the validations
as\r\nexpected:\r\n\r\n<img width=\"756\" alt=\"Screenshot 2024-10-16 at
11 49
53\"\r\nsrc=\"https://github.com/user-attachments/assets/680886a5-355e-4637-9da9-4b93b396e751\">","sha":"5a42e5861dc53911e10a3140d8cb5366fea98ff7"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/196527","number":196527,"mergeCommit":{"message":"Create
a common Int Validator and use it in ingest_pipelines and
Index_lifecycle_management (#196527)\n\nCloses [#110417
](https://github.com/elastic/kibana/issues/110417)\r\n## Summary\r\nIn
the Ingest Node Pipelines section, when the users created a
new\r\npipeline selecting de Community ID processor the users could set
a\r\nnon-integer number in this field. Then, they received a server
side\r\nerror when tried to create a pipeline. For fixing this, a
validation\r\nmust be added in the client.\r\n\r\nWe didn't have a
reusable validation for this case, but we did have a\r\ncustom
validation for integer values in the Index lifecycle
management\r\nplugin. We also had the necessary translation in that
plugin. So I went\r\nforward with:\r\n\r\n* I created a new integer
validator in the `es_ui_shared` package as it\r\nis a fairly common
validation and we could take advantage of it in the\r\nfuture. Also
added a couple of unit test there for this validator.\r\n\r\n* I reused
in the `ingest_pipelines` plugin the strings that already\r\nexisted in
`index_lifecycle_management`.\r\n\r\n* I added the new validation in the
Community ID form in the\r\n`ingest_pipelines` plugin. Also added some
test verifying that the\r\nprocessor doesn't create when the seeds
validation fails.\r\n\r\n* Changed the method in the
`index_lifecycle_management` validator so\r\nnow it uses the reusable
one.\r\n\r\nNow the Ingest pipeline forms shows the validation when the
number is\r\nnot an integer:\r\n![Screenshot 2024-10-16 at 12
16\r\n47](https://github.com/user-attachments/assets/1db9ad22-b144-44a5-9012-d3ebd5a19b6f)\r\n\r\nAnd
the `index_lifecycle_management` still shows the validations
as\r\nexpected:\r\n\r\n<img width=\"756\" alt=\"Screenshot 2024-10-16 at
11 49
53\"\r\nsrc=\"https://github.com/user-attachments/assets/680886a5-355e-4637-9da9-4b93b396e751\">","sha":"5a42e5861dc53911e10a3140d8cb5366fea98ff7"}},{"branch":"8.x","label":"v8.17.0","branchLabelMappingKey":"^v8.17.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Sonia Sanz Vivas <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Fixes for quality problems that affect the customer experience Feature:Ingest Node Pipelines Ingest node pipelines management good first issue low hanging fruit Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more
Projects
None yet
4 participants