juju_offer (Resource)

A resource that represent a Juju Offer.

Example Usage

resource "juju_offer" "myoffer" {
  model            = juju_model.development.name
  application_name = juju_application.percona-cluster.name
  endpoint         = "server"
}

// an offer can then be used in an cross model integration as below:
resource "juju_integration" "myintegration" {
  model = juju_model.development-destination.name

  application {
    name     = juju_application.wordpress.name
    endpoint = "db"
  }
  application {
    offer_url = juju_offer.myoffer.url
  }
}

Schema

Required

  • application_name (String) The name of the application. Changing this value will cause the offer to be destroyed and recreated by terraform.

  • endpoints (Set of String) The endpoint names. Changing this value will cause the offer to be destroyed and recreated by terraform.

  • model (String) The name of the model to operate in. Changing this value will cause the offer to be destroyed and recreated by terraform.

Optional

  • name (String) The name of the offer. Changing this value will cause the offer to be destroyed and recreated by terraform.

Read-Only

  • id (String) The ID of this resource.

  • url (String) The offer URL.

Import

Import is supported using the following syntax:

# Offers can be imported by using the URL as in the juju show-offers output.
# Example:
# $juju show-offer mysql
# Store            URL             Access  Description                                    Endpoint  Interface  Role
# mycontroller     admin/db.mysql  admin   MariaDB Server is one of the most ...          mysql     mysql      provider
$ terraform import juju_offer.db admin/db.mysql