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

[TEP-0144] Param Enum - Implementation #7270

Closed
4 tasks done
QuanZhang-William opened this issue Oct 24, 2023 · 3 comments
Closed
4 tasks done

[TEP-0144] Param Enum - Implementation #7270

QuanZhang-William opened this issue Oct 24, 2023 · 3 comments
Assignees

Comments

@QuanZhang-William
Copy link
Member

QuanZhang-William commented Oct 24, 2023

In TEP-0144, we introduced a new Enum field to enable Tekton built-in param input validation.

This is the umbrella issue to tracking all the implementation work.

Implementation

Promotion Feedback Issue:

@QuanZhang-William
Copy link
Member Author

/assign

QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Oct 25, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the feature flag `enable-param-enum` and documentation placeholder for the feature.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Oct 25, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the feature flag `enable-param-enum` and documentation placeholder for the feature.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Oct 25, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the feature flag `enable-param-enum` and documentation placeholder for the feature.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Oct 26, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the `Enum` api field, validation and conversion logic.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Oct 26, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the `Enum` api field, validation and conversion logic.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Oct 26, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the `Enum` api field, validation and conversion logic.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Oct 26, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the `Enum` api field, validation and conversion logic.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
tekton-robot pushed a commit that referenced this issue Oct 27, 2023
Part of [#7270][#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the feature flag `enable-param-enum` and documentation placeholder for the feature.

/kind feature

[#7270]: #7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Oct 27, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the `Enum` api field, validation and conversion logic.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Oct 27, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the `Enum` api field, validation and conversion logic.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Oct 27, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the `Enum` api field, validation and conversion logic.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Oct 30, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the `Enum` api field, validation and conversion logic.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 1, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the `Enum` api field, validation and conversion logic.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 1, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the `Enum` api field, validation and conversion logic.

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
tekton-robot pushed a commit that referenced this issue Nov 2, 2023
Part of [#7270][#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds the `Enum` api field, validation and conversion logic.

/kind feature

[#7270]: #7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 2, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for TaskRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 2, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for TaskRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 2, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for TaskRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 2, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for TaskRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 6, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for TaskRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
tekton-robot pushed a commit that referenced this issue Nov 6, 2023
Part of [#7270][#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for TaskRun against Param Enum

/kind feature

[#7270]: #7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 6, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md

add pr validation
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 6, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md

add pr validation
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 7, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md

add pr validation
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 7, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 7, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 7, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 7, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 7, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 8, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 9, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 15, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 15, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
QuanZhang-William added a commit to QuanZhang-William/pipeline that referenced this issue Nov 22, 2023
Part of [tektoncd#7270][tektoncd#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[tektoncd#7270]: tektoncd#7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
tekton-robot pushed a commit that referenced this issue Nov 22, 2023
Part of [#7270][#7270]. In [TEP-0144][tep-0144] we proposed a new `enum` field to support built-in param input validation.

This commit adds validation logic for PipelineRun against Param Enum

/kind feature

[#7270]: #7270
[tep-0144]: https://github.com/tektoncd/community/blob/main/teps/0144-param-enum.md
@QuanZhang-William
Copy link
Member Author

This feature is implemented and will be available in v0.54 release!

/close

@dohoangkhiem
Copy link

dohoangkhiem commented Dec 11, 2023

Hey, this is causing issues after we upgraded to latest Tekton Pipeline, with enable-param-enum set to true.

This line 8a8c0c3#diff-39d9baa708e379638f742c8b9fd36d9d15c64c3386de958b5a3f309ca8fa037aR825 does not work in case of task param value is a script which referenced multiple pipeline params.

For example, this is the task in the pipeline

    - name: push-s3
      runAfter:
        - install-build
      taskRef:
        name: aws-cli
      workspaces:
        - name: source
          workspace: shared-data
      params:
        - name: SCRIPT
          value: |
            # this is to avoid aws-cli permission denied error on /.aws
            export HOME=/tmp/.aws
            aws s3 sync $(workspaces.source.path)/$(context.pipelineRun.name)/dist/ s3://$(params.s3-bucket)/$(params.s3-path) --delete --region $(params.aws-region) --debug

will result to
unexpected resolved param in ExtractVariablesFromString, expect 1 but got 3

The same error could happen to any task parameter value that is combined from more than 1 pipeline params' values.

@QuanZhang-William

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants