# salt.states.boto_cloudfront

Manage CloudFront distributions

Added in version 2018.3.0.

Create, update and destroy CloudFront distributions.

This module accepts explicit AWS credentials but can also utilize IAM roles assigned to the instance through Instance Profiles. Dynamic credentials are then automatically obtained from AWS API and no further configuration is necessary. More information available here.

If IAM roles are not used you need to specify them, either in a pillar file or in the minion's config file:

    cloudfront.keyid: GKTADJGHEIQSXMKKRBJ08H
    cloudfront.key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs

It's also possible to specify `key`, `keyid`, and `region` via a profile, either passed in as a dict, or a string to pull from pillars or minion config:

    myprofile:
        keyid: GKTADJGHEIQSXMKKRBJ08H
        key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs
        region: us-east-1

    aws:
        region:
            us-east-1:
                profile:
                    keyid: GKTADJGHEIQSXMKKRBJ08H
                    key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs
                    region: us-east-1

depends:

  boto3

salt.states.boto_cloudfront.present(name, config, tags, region=None, key=None, keyid=None, profile=None)

  Ensure the CloudFront distribution is present.

  name (string)

    Name of the CloudFront distribution

  config (dict)

    Configuration for the distribution

  tags (dict)

    Tags to associate with the distribution

  region (string)

    Region to connect to

  key (string)

    Secret key to use

  keyid (string)

    Access key to use

  profile (dict or string)

    A dict with region, key, and keyid, or a pillar key (string) that contains such a dict.

  Example:

      Manage my_distribution CloudFront distribution:
          boto_cloudfront.present:
            - name: my_distribution
            - config:
                Comment: 'partial config shown, most parameters elided'
                Enabled: True
            - tags:
                testing_key: testing_value