Class BedrockProviderConfig

All Implemented Interfaces:
Describable<AiProviderConfig>, Serializable

public class BedrockProviderConfig extends AiProviderConfig
AWS Bedrock, via the Runtime Converse API - see BedrockProvider for the wire contract. The AWS credential is optional and deliberately not a plain-text access key/secret pasted into this plugin's own config: when set, it references a Jenkins AmazonWebServicesCredentials credential (the standard type from the aws-credentials plugin, backed by Jenkins Credentials storage the same way every other secret in this plugin already is); when left unset, calls fall back to the AWS SDK's default credential provider chain, which is how most enterprise Bedrock setups actually work - an IAM role attached to the Jenkins controller or agent, with no static key material anywhere. An optional Role ARN layers AWS STS AssumeRole on top of either credential source - see BedrockProvider for how that's wired without ever hand-signing anything.
See Also:
  • Constructor Details

    • BedrockProviderConfig

      @DataBoundConstructor public BedrockProviderConfig(String region, String model)
  • Method Details

    • getRegion

      public String getRegion()
    • getModel

      public String getModel()
      Description copied from class: AiProviderConfig
      The model identifier this configuration will request, for display purposes.
      Specified by:
      getModel in class AiProviderConfig
    • getCredentialsId

      public String getCredentialsId()
    • setCredentialsId

      @DataBoundSetter public void setCredentialsId(String credentialsId)
    • getEndpointUrl

      public String getEndpointUrl()
    • setEndpointUrl

      @DataBoundSetter public void setEndpointUrl(String endpointUrl)
    • getRoleArn

      public String getRoleArn()
    • setRoleArn

      @DataBoundSetter public void setRoleArn(String roleArn)
    • createProvider

      public AiProvider createProvider(com.fasterxml.jackson.databind.ObjectMapper objectMapper, int timeoutSeconds)
      Description copied from class: AiProviderConfig
      Builds a provider bound to this configuration's resolved settings, ready to make one (or more) AiProvider.chatCompletion(io.jenkins.plugins.changeinvestigator.ai.AiAnalysisRequest) calls. Resolving the credential happens inside this method, not before it, so the plaintext secret's lifetime is limited to the call that actually needs it.
      Specified by:
      createProvider in class AiProviderConfig
      Parameters:
      objectMapper - shared Jackson mapper for building/parsing request and response JSON
      timeoutSeconds - administrator-configured connect/request timeout (a global, not per-provider, setting - see ChangeInvestigatorGlobalConfiguration)