Skip to content

feat(ir): add typed builder for MavenAuthenticate@0#1161

Merged
jamesadevine merged 1 commit into
mainfrom
feat/ir-maven-authenticate-5ac46b3941091a27
Jun 23, 2026
Merged

feat(ir): add typed builder for MavenAuthenticate@0#1161
jamesadevine merged 1 commit into
mainfrom
feat/ir-maven-authenticate-5ac46b3941091a27

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

Summary

Adds a typed builder struct for MavenAuthenticate@0 to the ado-aw IR, completing the authentication-task family alongside NuGetAuthenticate@1, PipAuthenticate@1, CargoAuthenticate@0, npmAuthenticate@0, and TwineAuthenticate@1.

Motivation

Previously, any code that needed to emit a MavenAuthenticate@0 step had to hand-craft TaskStep::new(...) with raw string input keys. This PR introduces a typed builder struct (new() + typed optional setters + into_step()) so inputs and their semantics are explicit and type-checked.

Changes

  • src/compile/ir/tasks/maven_authenticate.rs: new MavenAuthenticate builder struct and its #[cfg(test)] mod tests (9 unit tests)
  • src/compile/ir/tasks/mod.rs: pub mod maven_authenticate; declaration (alphabetical order, between java_tool_installer and npm)

ADO Task Reference

  • Task: MavenAuthenticate@0
  • Docs: (https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/maven-authenticate-v0)
  • Required inputs: (none — all inputs are optional)
  • Optional inputs:
    • artifactsFeeds — comma-separated Azure Artifacts feed names to authenticate
    • mavenServiceConnections — comma-separated Maven service connection names for external repositories (ignored when workloadIdentityServiceConnection is set)
    • workloadIdentityServiceConnection — Entra Workload Identity-backed service connection

Validation

  • cargo build --all-targets
  • cargo test (all 18 test suites pass, 9 new unit tests added)
  • cargo clippy --all-targets --all-features --workspace -- -D warnings

Created by the ado-task-ir-contributor workflow.

Warning

Firewall blocked 2 domains

The following domains were blocked by the firewall during workflow execution:

  • spsprodeus21.vssps.visualstudio.com
  • spsprodweu4.vssps.visualstudio.com

To allow these domains, add them to the network.allowed list in your workflow frontmatter:

network:
  allowed:
    - defaults
    - "spsprodeus21.vssps.visualstudio.com"
    - "spsprodweu4.vssps.visualstudio.com"

See Network Configuration for more information.

Generated by ADO Task IR Contributor · 1.1K AIC · ⌖ 26.8 AIC · ⊞ 38.1K ·

Adds a typed builder struct for `MavenAuthenticate@0` to the ado-aw IR,
following the established pattern from `NuGetAuthenticate@1`,
`PipAuthenticate@1`, `CargoAuthenticate@0`, and `TwineAuthenticate@1`.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@jamesadevine jamesadevine marked this pull request as ready for review June 23, 2026 06:19
@jamesadevine jamesadevine merged commit 3d719eb into main Jun 23, 2026
@jamesadevine jamesadevine deleted the feat/ir-maven-authenticate-5ac46b3941091a27 branch June 23, 2026 06:19
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.

1 participant