User-Provided Service

Page last updated:

Warning: Pivotal Operations Manager v2.5 is no longer supported because it has reached the End of General Support (EOGS) phase as defined by the Support Lifecycle Policy. To stay up to date with the latest software and security updates, upgrade to a supported version.

This topic explains how to create a user-provided service for Pivotal Cloud Foundry (PCF).

Overview

A PCF developer can call your service from their app code, even if the service runs outside of PCF and has no service broker. Use cases for this include:

  • Your software is available as a SaaS.

  • You already have a way to install your software on-premises at a customer site.

  • Your customer already uses your software, is now adopting PCF, and wants to consume your software from applications that they deploy on PCF.

This do-it-yourself solution represents the lowest level of PCF service integration. It works only for services running external to PCF, and does not publish the services to the Services Marketplace or make them available to anyone outside the space of the developer who runs these commands. For more information, see User-Provided Service Instances.

Running apps with a user-provided service is a great way to determine what information needs to be passed in the credential structure (useful in higher integration levels), verify that the integration works, and develop a test app that can continue to be used at higher levels. From the app developer perspective, once a user-provided service works, later integrations of the service will not require any further code changes. User-provided service bindings are fully forward-compatible with brokered service bindings.

Using a User-Provided Service

To use an external service that has no tile:

  1. Create a service instance by running:

    cf create-user-provided-service YOUR-SERVICE-NAME -p CREDENTIALS
    

    Where:

    • YOUR-SERVICE-NAME is the name of the service instance you want to create.
    • CREDENTIALS is a valid JSON string that contains the URL and credentials necessary to connect to your externally-deployed service.
  2. Bind the service instance to their app by running:

    cf bind-service
    

By doing this, app developers can bind their apps to your service and write all code necessary to access it through a PCF service binding.