options:
  basedir:
      default: "daisy.ubuntu.com"
      type: string
      description: Base directory for code
  instance_type:
      default: "production"
      type: string
      description: Instance type
  user_code_runner:
      default: "whoopsie"
      type: string
      description: The user that runs the code
  group_code_runner:
      default: "whoopsie"
      type: string
      description: The group that runs the code
  user_code_owner:
      default: "webops_deploy"
      type: string
      description: The user that owns the code
  group_code_owner:
      default: "webops_deploy"
      type: string
      description: The group that owns the code
  amqp-user:
      type: string
      default: 'daisy'
      description: The user to log into the rabbitMQ server.
  amqp-vhost:
      type: string
      default: '/'
      description: The vhost in the rabbitMQ server.
  daisy-retracer-aws-secret-key:
      type: string
      default: ''
      description: The AWS secret key (EC2_SECRET_KEY).
  daisy-retracer-aws-access-key:
      type: string
      default: ''
      description: The AWS access key (EC2_ACCESS_KEY).
  daisy-retracer-s3-host:
      type: string
      default: ''
      description: The S3 IP address.
  daisy-retracer-s3-bucket:
      type: string
      default: ''
      description: The S3 bucket.
  daisy-retracer-openstack-auth-url:
      type: string
      default: ''
      description: |
        The OpenStack authentication URL, e.g.:
        https://keystone.yourdomain.com:443/v2.0/
  daisy-retracer-openstack-username:
      type: string
      default: ''
      description: The OpenStack username to authenticate with.
  daisy-retracer-openstack-password:
      type: string
      default: ''
      description: The OpenStack password to authenticate with.
  daisy-retracer-openstack-tenant:
      type: string
      default: ''
      description: |
        The OpenStack tenant to use, e.g.: yourname_project.
  daisy-retracer-openstack-region:
      type: string
      default: ''
      description: The OpenStack region to use.
  daisy-retracer-swift-bucket:
      type: string
      default: ''
      description: |
        The OpenStack Swift bucket to use, e.g.: daisy_core_files.
        Setting this will use Swift instead of S3 for storing core files.
  daisy-cassandra-host:
      type: string
      default: ''
      description: |
        Override relations to Cassandra with specific host addresses. This
        is a temporary measure until cross-environment relations are ready.
  daisy-retracer-architectures:
      type: string
      default: 'i386 amd64 armhf arm64'
      description: Space separated list of architectures for which to process reports.
  daisy_code_dirs:
      type: int
      default: 3
      description: |
        How many old copies of daisy code to retain (candidates for backouts)
  daisy_code_revno:
      type: int
      default: 766
      description: |
        The revision number of daisy code to run.
  apport_code_dirs:
      type: int
      default: 3
      description: |
        How many old copies of apport code to retain (candidates for backouts)
  apport_code_revno:
      type: int
      default: 2993
      description: |
        The revision number of apport code to run.
  repository:
      type: string
      default: 'ppa:daisy-pluckers/daisy-seeds'
      description: The location for the daisy-dependencies package.
  extra-repository:
      type: string
      default: ''
      description: Apt repository required for packages other than daisy-dependencies.
  duplicate-database:
      type: string
      default: 'porter-i386.canonical.com::whoopsie/apport_duplicates.db'
      description: The location for the Apport duplicates database.
  time-to-retrace-alert:
      type: int
      default: 86400
      description: |
        The maximum number of seconds to allow between accepting a core file
        and processing it, before we start alerting.
  region:
      default: "prodstack"
      type: string
      description: Region deploying to. Used by nrpe to define servicegroup
  mailto:
      default: 'root'
      type: string
      description: Where to send mail on failure.
  max-disk-usage-pct:
      default: 75
      type: int
      description: |
        The maximum amount of free space to use before purging the retracer
        caches.
  cache-debs:
      default: True
      type: boolean
      description: |
        If left True, the default caching of deb files to disk is excecuted by
        retracer.py. If False, do not cache deb files to disk by passing
        --nocache-debs to retracer.py.
  sandbox:
      default: False
      type: boolean
      description: |
        If left True, the default use of --sandbox-dir at 
        /srv/$sitename/$instance-type/cache is used by retracer.py. If False,
        the --nouse-sandbox switch is used. 
  cleanup-sandbox:
      default: False
      type: boolean
      description: |
        If True, retracer.py is run with the --cleanup-sandbox options and will
        cleanup the sandbox 
        /srv/$sitename/$instance-type/cache/$release/cache-xyz/sandbox directory
        after each retrace. If left False, retracer.py uses the default behavior
        of leaving cached chroot data on disk.
  cleanup-debs:
      default: False
      type: boolean
      description: |
        If True, retracer.py is run with the --cleanup-debs options and will
        cleanup the debs cache 
        /srv/$sitename/$instance-type/cache/$release/cache-xyz/cache directory
        after each retrace. If left False, retracer.py uses the default behavior
        of leaving cached debs data on disk.
  stacktrace-source:
      default: False
      type: boolean
      description: |
        If left False, retracer.py is run with the --no-stacktrace-source
        option which is passed along to apport-retrace and StacktraceSource
        will not be added to the retraced report. If True, StacktraceSource
        will be added to the retraced report.
  failed-queue:
      default: False
      type: boolean
      description: |
        If True, retracer.py is run with the --failed option and will use the
        failed to retrace queue to determine core files to process. If left
        False, retracer.py will use the queue of core files that have never
        been retraced.
  retracer-verbose:
      default: False
      type: boolean
      description: |
        If True, retracer.py is run with the --verbose option and will provide
        more information in the retracer log file.  If left False, retracer.py
        will not be run in verbose mode.
  daisy-cassandra-username:
      type: string
      default: ''
      description: |
        The Cassandra RPC username. Leave blank if one is not needed.
  daisy-cassandra-password:
      type: string
      default: ''
      description: |
        The Cassandra RPC password. Leave blank if one is not needed.
  statsd_host:
      type: string
      description: statsd collection host
  statsd_port:
      type: string
      description: statsd collection port
  volume-ephemeral:
    type: boolean
    default: true
    description: >
      If false, the /srv/$site/$instance_type/cache directory will be symlinked
         to persistent storage. A configure-error state will be raised if
         volume-map[$JUJU_UNIT_NAME] is not set (see "volume-map" below).
      If true, /srv/$site/$instance_type/cache will be on the / partition.
         All data will be destroyed with the instance.
      Note volumes require charmsupport to be installed
  volume-map:
    type: string
    default: '{}'
    description: >
      YAML map as e.g. 
      "{ daisy-retracer/0: /dev/vdc, daisy-retracer/1: /dev/vdc}".
      Service units will raise a configure-error if volume-persistent is 'true'
      and no volume-map value is set. Use 'juju set' to set a value and 'juju
      resolved' to complete configuration.
  oops-amqp-host:
      type: string
      default: ''
      description: The host in the rabbitMQ server for OOPS reports.
  oops-amqp-username:
      type: string
      default: 'daisy-retracer'
      description: The user to log into the rabbitMQ server for OOPS reports.
  oops-amqp-password:
      type: string
      default: 'daisy-retracer'
      description: The password for the rabbitMQ server for OOPS reports.
  oops-amqp-vhost:
      type: string
      default: '/'
      description: The vhost in the rabbitMQ server for OOPS reports.
  oops-amqp-exchange:
      type: string
      default: ''
      description: The exchange for the rabbitMQ server for OOPS reports.
  oops-amqp-routing-key:
      type: string
      default: ''
      description: The routing key for the rabbitMQ server for OOPS reports.
  service-affecting-packages:
      type: string
      default: ''
      description: |
        Packages that may need to be held from automatic upgrades in order to protect service uptime.
        Space delimited list of package names.
  package-status:
      default: "install"
      type: string
      description: |
        The status of service-affecting-packages will be set to this value in the dpkg database.
        Useful valid values are "install" and "hold".
  nagios-log-file-age-warn:
      default: 1800
      type: int
      description: |
        The nagios check warn threshold for the retracer-amd64.log file age check in seconds.
  nagios-log-file-age-crit:
      default: 3600
      type: int
      description: |
        The nagios check critical threshold for the retracer-amd64.log file age check in seconds.
  lp_oauth_token:
      type: string
      default: ''
      description: OAuth token for talking to Launchpad.net.
  lp_oauth_secret:
      type: string
      default: ''
      description: OAuth secret for talking to Launchpad.net.
  cron_runner:
      default: False
      type: boolean
      description: |
        If True, cronjobs will be run on this retracer. If left False, cronjobs will not be run.
