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

sendDeploymentFinishedEvent ommits param: "testStrategy" #24

Open
Nixmix800 opened this issue Apr 24, 2021 · 2 comments
Open

sendDeploymentFinishedEvent ommits param: "testStrategy" #24

Nixmix800 opened this issue Apr 24, 2021 · 2 comments

Comments

@Nixmix800
Copy link

Nixmix800 commented Apr 24, 2021

Hello everyone, @grabnerandi, @kristofre

Context

I am currently working on integrating Keptn qualitygates / performance as a self service with Jenkins and Dynatrace. Really enjoying the functionality of Keptn and its easy configuration.
However, at the moment I am facing problems with the "performance as a self service" part of things.

The comments above the sendDeploymentFinishedEvent function talk about, that this will trigger a test execution with subsequent SLO evaluation. I can imagine, that the deploymentFinishedEvent would trigger a teststep, specified in a shipyard file.

The Problem

How would Keptn know, which testStrategy I want to use?
The parameter is extracted and echoed to the console, but not added to the payload of the request.
Maybe I'm missing something.

Quick Question

As I read it, the sendDeploymentFinishedEvent is relying on a shipyard file to trigger the JMeter Tests. Is this correct?

Thanks in advance,
greetings from Vienna,

Michael

@grabnerandi
Copy link
Contributor

Hi Michael

Thanks for the post. Its something I had planned to implement.
With the shift towards sequences that were introduced with shipyard 0.2 (keptn 0.8) we now have to send trigger sequence events instead of sending e.g: a deployment finished event. This is something that is currently not reflected in the Jenkins Library.
I am proposing that we are providing functions such as

triggerDelivery(project, stage, service, version, tag, ...)
triggerEvaluation(project, stage, service, start, end, timestamp, ...)
triggerSequence(project, stage, service, sequencename, ...)

triggerDelivery and triggerEvaluation essentially trigger a sequence with the name delivery or evaluation. triggerSequence allows you to trigger ANY type of sequence. Its basically the same as the Keptn CLI does when calling keptn trigger evaluation or keptn trigger delivery.

Providing these functions will allow you to then trigger a sequence that you use for your performance as a self-service use case. You can define a sequence that includes test and evaluation and then use the trigger function to trigger that sequence. Your sequence definition would then include the teststrategy as part of your shipyard. If you want to "overwrite" that teststrategy we can pass it as part of the trigger sequence event.

Does this explanation make sense?

@Nixmix800
Copy link
Author

Hi Andi

Thanks for you answer.
Due to time presure I wrote a quick function, that waits for the TestDoneEvent and opened a pull request for it.
#25
Now I am not sure if this is inline with the whole idea of the shipyard-files and so on.
Thanks for your answer.

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