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

Trigger command #1570

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

rochana-atapattu
Copy link

@rochana-atapattu rochana-atapattu commented Sep 21, 2023

  • pass trigger commands arg as a PipelineRunParam TRIGGER_COMMAND_ARG to presubmit
    with this change we can pass a parameter to out pipeline and use that parameter in the pipeline
    eg:
    /deploy dev
    TRIGGER_COMMAND_ARG=dev
  • ability to add multiple trigger commands LH_CUSTOM_TRIGGER_COMMAND will accept a comma seperated list of trigger

@jenkins-x-bot
Copy link
Contributor

Hi @rochana-atapattu. Thanks for your PR.

I'm waiting for a jenkins-x member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository.

@jenkins-x-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
To complete the pull request process, please assign garethjevans
You can assign the PR to them by writing /assign @garethjevans in a comment when ready.

The full list of commands accepted by this bot can be found 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

@msvticket
Copy link
Member

Please give a description with the purpose of the PR

@rochana-atapattu
Copy link
Author

Please give a description with the purpose of the PR

thank you for having a look at this, I have updated the description above

Copy link
Member

@msvticket msvticket left a comment

Choose a reason for hiding this comment

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

Your new code lines need to have their indentation adjusted to correspond to the surrounding code

docs/trigger/README.md Outdated Show resolved Hide resolved
Comment on lines +101 to +108
if arg != "" {
for i := range toTest {
toTest[i].Base.PipelineRunParams = append(toTest[i].Base.PipelineRunParams , job.PipelineRunParam{
Name: "TRIGGER_COMMAND_ARG",
ValueTemplate: arg,
})
}
}
Copy link
Member

Choose a reason for hiding this comment

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

The feature should be documented and unit test added

Copy link
Author

Choose a reason for hiding this comment

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

836cdca adding in unit tests. please let me know if I have missed anything. I updated the code so that handleGenericComment take in the command arg.
documentation for this feature is in

When these commands are triggered using ChatOps, Lighthouse will store the command arg in TRIGGER_COMMAND_ARG PipelineRunPara which you can refer from the pipeline.


plugins.RegisterPlugin(pluginName, plugin)
customTriggerCommand := os.Getenv(customerTriggerCommandEnvVar)
for _, trigger := range strings.Split(customTriggerCommand, ","){
Copy link
Contributor

@dippynark dippynark Jan 9, 2024

Choose a reason for hiding this comment

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

Can you not already do this using a regex pattern for the customDeploymentTriggerCommand like: build|plan|apply?

We are doing this currently to trigger builds with /build commands and Terraform plans/applies with /plan and /apply commands. Perhaps the docs just need to be updated to make this clearer?

Copy link
Member

Choose a reason for hiding this comment

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

Yeah, I agree. This is interpreted as a regexp, so I think you should revert this change and update the documentation and tests accordingly.

@msvticket
Copy link
Member

/ok-to-test


plugins.RegisterPlugin(pluginName, plugin)
customTriggerCommand := os.Getenv(customerTriggerCommandEnvVar)
for _, trigger := range strings.Split(customTriggerCommand, ","){
Copy link
Member

Choose a reason for hiding this comment

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

Yeah, I agree. This is interpreted as a regexp, so I think you should revert this change and update the documentation and tests accordingly.

@msvticket msvticket self-assigned this Mar 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants