Interface ApprovalProvider

  • All Superinterfaces:
    PluginProvider

    public interface ApprovalProvider
    extends PluginProvider
    Provides capability to create custom approval policies
    • Method Detail

      • createApprovalRequest

        RequestResponse createApprovalRequest​(java.util.List instances,
                                              Request request,
                                              AccountIntegration accountIntegration,
                                              Policy policy,
                                              java.util.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

        java.util.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

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

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