Skip to content

Conversation

matouskozak
Copy link
Member

@matouskozak matouskozak commented Jan 29, 2025

After setting up automatic runs of runtime-ioslike and runtime-llvm pipelines on PRs that touch Mono AOT-llvm code (#111614), un unwanted side effect appeared that the pipelines don't run on PRs that do not touch the selected files, even when triggered manually by comment.

To work around this, I've reverted the previous change and instead included the runtime-extra-platforms-ioslike.yml and runtime-extra-platforms-llvm.yml (previously runtime-llvm.yml) inside the runtime.yml and conditioned them by

or(
or(eq(variables['isiOSLikeOnlyBuild'], true), eq(variables['isExtraPlatformsBuild'], true)),
and(eq(variables['isRollingBuild'], false), eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_aot_llvm.containsChange'], true))

This allows to:

  1. run via runtime-ioslike or runtime-extra-platforms
  2. run automatically on PRs when Mono AOT-llvm code changes

and similarly for runtime-llvm and runtime-extra-platforms-llvm

I also removed Mono AOT-llvm jobs from runtime.yml as they are now included via runtime-extra-platforms-llvm.yml.


Before merging this PR we should:

@dotnet-policy-service
Copy link
Contributor

Tagging subscribers to this area: @akoeplinger, @matouskozak
See info in area-owners.md if you want to be subscribed.

@matouskozak matouskozak requested review from akoeplinger, Copilot, jkoritzinsky and kotlarmilos and removed request for jkoritzinsky and kotlarmilos January 29, 2025 18:08
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot reviewed 5 out of 7 changed files in this pull request and generated no comments.

Files not reviewed (2)
  • eng/pipelines/common/variables.yml: Evaluated as low risk
  • eng/pipelines/runtime-ioslike.yml: Evaluated as low risk

@matouskozak
Copy link
Member Author

During offline discussion, it was suggested that it might be worth considering returning to behavior #111614 where runtime-ioslike and runtime-llvm pipeline were only executed when triggered by /azp run comment.

@steveisok @akoeplinger @kotlarmilos @ivanpovazan
I would like to know you opinion on whether this PR should go through or return the original before is preferred. I think that both options are viable and have their advantages and disadvantages.

Current behavior:

  • [+] runtime-ioslike and runtime-llvm are executed automatically on PRs modifying Mono AOT LLVM code
  • [-] runtime-ioslike and runtime-llvm cannot be executed manually by commenting on PRs NOT modifying Mono AOT LLVM code

Original behavior:

  • [+] runtime-ioslike and runtime-llvm can only be executed manually by commenting on any PR
  • [-] contributors must be aware that they must execute these two pipelines on PRs modifying Mono AOT LLVM code to ensure proper test coverage

This PR:

  • [+] runtime-extra-platforms-ioslike and runtime-extra-platforms-llvm inner jobs are executed automatically on PRs modifying Mono AOT LLVM code
  • [+] runtime-ioslike and runtime-llvm can only be executed manually by commenting on any PR
  • [-] added new complexity to the yaml files

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-Infrastructure-mono NO-MERGE The PR is not ready for merge yet (see discussion for detailed reasons)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant