Interface ApprovalProvider

All Superinterfaces:
PluginProvider
All Known Subinterfaces:
ApprovalProvider

public interface ApprovalProvider extends PluginProvider
Provides capability to create custom approval policies
Since:
0.15.1
  • Method Details

    • createApprovalRequest

      RequestResponse createApprovalRequest(List instances, Request request, AccountIntegration accountIntegration, Policy policy, Map opts)
      Parameters:
      instances - List of Instance or App or ComputeServer
      request - the Morpheus provision Request
      accountIntegration - the integration details. OptionType values are keyed under configMap.cm.plugin
      policy - the approval policy containing a Map config with values from provided optionTypes
      opts - provision options
      Returns:
      a response object with a success status and references to external approval system
    • monitorApproval

      List<Request> monitorApproval(AccountIntegration accountIntegration)
      Periodically called to check on approval status
      Parameters:
      accountIntegration - account integration details
      Returns:
      Request objects with their corresponding RequestReference containing approval status
    • integrationOptionTypes

      List<OptionType> integrationOptionTypes()
      Optionally provide custom configuration options when creating a new AccountIntegration
      Returns:
      a List of OptionType
    • policyOptionTypes

      List<OptionType> policyOptionTypes()
      Optionally provide custom configuration options when creating a new Policy
      Returns:
      a List of OptionType