Skip to content

Conversation

@JonathanGiles
Copy link
Member

No description provided.

…r than the whole pom.client.xml, including the code-quality-reports codebase by way of the -Dinclude-non-shipping-modules flag.
Copy link
Contributor

@mitchdenny mitchdenny left a comment

Choose a reason for hiding this comment

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

Looks reasonable to me. I can replicate this in the analyze step I'm using (eng/pipelines/templates/jobs/archetype-sdk-client.yml.

# We `install` separately from running `site:site site:stage` so that the `install` brings in the non-shipping-modules,
# but we don't include them in the Maven site commands (so that we don't generate reports for the non-shipping modules).
# We `install` the code quality reports tooling into our local m2 cache separately from building the Maven project
# reports. This means it is available as part of that, but also so that this is not documented in the proejct report.
Copy link
Member

Choose a reason for hiding this comment

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

nit: proejct -> project

Copy link
Member Author

Choose a reason for hiding this comment

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

You and your words!

@JonathanGiles
Copy link
Member Author

whomp whomp. Some build artifacts aren't generated like this. I'll tweak and update PR.

@JonathanGiles
Copy link
Member Author

Looks reasonable to me. I can replicate this in the analyze step I'm using (eng/pipelines/templates/jobs/archetype-sdk-client.yml.

If this PR builds successfully, I'll do the replication before I merge.

… testing build works with a reduced set of tasks. This won't be merged as we still need a way to generate the whole site output - but hopefully that can be done nightly instead of on every analyse task.
…y disabled some later steps in the Analyze job to understand performance of this approach
…stalling the client libraries (so that they are not run twice in the Analyze step)
@JonathanGiles
Copy link
Member Author

@mitchdenny @weshaggard As a proof of concept, this PR takes the Analyze job from around 10:52 to 5:24, so roughly reduced by half. The way I mainly achieved this was by not producing HTML artifacts (e.g. Maven Site, JavaDoc, Jacoco, spotbugs reports or checkstyle reports). What I would like to see is these generated daily, rather than per-PR. Is this something that we could do (in which case, much of what I have commented out in this PR would move into that job instead)

1 similar comment
@JonathanGiles
Copy link
Member Author

@mitchdenny @weshaggard As a proof of concept, this PR takes the Analyze job from around 10:52 to 5:24, so roughly reduced by half. The way I mainly achieved this was by not producing HTML artifacts (e.g. Maven Site, JavaDoc, Jacoco, spotbugs reports or checkstyle reports). What I would like to see is these generated daily, rather than per-PR. Is this something that we could do (in which case, much of what I have commented out in this PR would move into that job instead)

@danieljurek
Copy link
Member

The client.yml file defines the nightly run. To shorten the inner-loop cycle we should remove steps from archetype-sdk-client.yml.

@mitchdenny
Copy link
Contributor

We should cut client.yml to use the archetype template anyway. I'll do that soon! But these changes look good.

Copy link
Member

@weshaggard weshaggard left a comment

Choose a reason for hiding this comment

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

Looks reasonable to me.

@JonathanGiles
Copy link
Member Author

Build failed due to networking failure.

@JonathanGiles
Copy link
Member Author

/azp run java - core - ci

@azure-pipelines
Copy link

Azure Pipelines could not run because the pipeline triggers exclude this branch/path.

@JonathanGiles
Copy link
Member Author

@weshaggard What's the best way here to get this merged? Due to the network failure I either need to know the right command to re-run the build, or have it force-merged?

@weshaggard
Copy link
Member

@JonathanGiles You should be able to re-run any failed leg via the Checks tab on github. Assuming that doesn't work then the simply copy the job name listed in the details and call /azp run <job>. As long as we can get the /azp run azure-sdk-for-java - client to green then I'm good with force merging.

@JonathanGiles
Copy link
Member Author

@JonathanGiles You should be able to re-run any failed leg via the Checks tab on github. Assuming that doesn't work then the simply copy the job name listed in the details and call /azp run <job>. As long as we can get the /azp run azure-sdk-for-java - client to green then I'm good with force merging.

Yeah - the 're-run' links don't seem to work for me. I'll re-run it as outlined now.

@JonathanGiles
Copy link
Member Author

/azp run azure-sdk-for-java - client

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@weshaggard
Copy link
Member

the 're-run' links don't seem to work for me.

I've found that the re-run links don't actually work until all the jobs in the particular pipeline has finished. If any of them are still running then it doesn't work. The DevOps team should really work on improving that entire experience though because it doesn't give people any feedback.

@mitchdenny mitchdenny merged commit b67dfac into Azure:master Jul 24, 2019
@JonathanGiles JonathanGiles deleted the quicker-code-quality-install branch July 24, 2019 21:38
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

Successfully merging this pull request may close these issues.

5 participants