github.com/juju/juju@v0.0.0-20240430160146-1752b71fcf00/worker/remoterelations/doc.go (about)

     1  // Copyright 2023 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  // Package remoterelations defines workers which manage the operation of cross model relations.
     5  //   - `Worker`: Top level worker. Watches SaaS applications/proxies and creates a worker for each.
     6  //   - `remoteApplicationWorker`: Manages operations for a consumer or offer proxy. Consumes and publishes relation data and status changes.
     7  //   - `remoteRelationsWorker`: Runs on the consuming model to manage relations to the offer.
     8  //   - `relationUnitsWorker`: Runs on the consuming model to receive and publish changes to each relation unit data bag.
     9  //
    10  // The consuming side pushes relation updates from the consumer application to the model containing
    11  // the offer. It also polls the offered application to record relation changes from the offer into
    12  // the consuming model.
    13  package remoterelations