Skip to content

Conversation

@JimSuplizio
Copy link
Contributor

The primary reason for this PR was that I'd found, by happenstance, a number of issues where dependency tags, weren't correctly set.

The pom_file_version_scanner now figures out, by using the ci*.yml files, what builds in each sdk/ and verifies that any tags appropriately. To quickly reiterate the rules:

  1. Any libraries that build and release in the same sdk/ must be using the current versions of other libraries that build and release in the same ServiceDirectory. There are no exceptions for this. If a library doesn't meet this criteria, then it needs to be in another pipeline, it's that simple.
  2. AdditionalModules in a ci*.yml file is used to identify libraries that are needed, usually for testing, that are not released. These are part of the module list used to determine sparse-checkout directories.
  3. Tags for these AdditionalModules in pom.xml files must be current. The reason for this is that these are always built from source but, in the case of an accidental release, it ensures that nothing is stuck using an older, possibly defunct version.

For most service directories, the updates consisted of adding the correct additional modules and/or correctly setting tags. There were two special cases that required new pipelines to be created. The reason being is that these need to use the dependency versions of the libraries in their respective service directories because they're not released with the same cadence and have different owners than the service directory owner. As such, the ci.yml file for their pipelines was created in the library's subdirectory. We already do this in sdk/communication since each library is owned by a different team.

  1. azure-resourcemanager-eventgrid
  2. azure-identity-extensions

@github-actions github-actions bot added Cognitive - Text Analytics Event Grid Event Hubs KeyVault Mgmt This issue is related to a management-plane library. Storage Storage Service (Queues, Blobs, Files) labels Mar 14, 2024
@JimSuplizio JimSuplizio self-assigned this Mar 14, 2024
@JimSuplizio
Copy link
Contributor Author

/azp run prepare-pipelines

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@azure-sdk
Copy link
Collaborator

API change check

API changes are not detected in this pull request.

Copy link
Contributor

@billwert billwert left a comment

Choose a reason for hiding this comment

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

Couple questions but otherwise looks good to me.

@JimSuplizio
Copy link
Contributor Author

/azp run java - azure-identity-extensions

@azure-pipelines
Copy link

Azure Pipelines failed to run 1 pipeline(s).

@JimSuplizio
Copy link
Contributor Author

I'm going to override check-enforcer. The reason being is that the latest-jdk.yml had to be updated for the generate_from_source_pom argument changes. If these changes were going to cause a failure, it would have happened long before the run tests step even started and latest-jdk.yml takes 2 hours to run.

@JimSuplizio
Copy link
Contributor Author

/check-enforcer override

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

Labels

App Configuration Azure.ApplicationModel.Configuration Azure.Core azure-core Azure.Identity azure-spring All azure-spring related issues Cognitive - Form Recognizer Cognitive - Text Analytics Event Grid Event Hubs KeyVault Mgmt This issue is related to a management-plane library. Storage Storage Service (Queues, Blobs, Files)

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants