View Source
const (

    Environment variables used to publish the assumed role expiration date

    View Source
    const CacheFile = ".terragrunt.cache"

      CacheFile is the name of the file that hold the S3 source configuration for the folder


      View Source
      var ErrS3PathNotFoundError = errors.New("HeadObject failed on the given object")

        ErrS3PathNotFoundError is the error that will be returned if an object doesn't exist in S3


        func AssumeRoleEnvironmentVariables

        func AssumeRoleEnvironmentVariables(logger *multilogger.Logger, roleArn, sessionName string, assumeDuration *int) (map[string]string, error)

          AssumeRoleEnvironmentVariables returns a set of key value pair to use as environment variables to assume a different role

          func CheckS3Status

          func CheckS3Status(sourceBucketInfo *BucketInfo, folder string) error

            CheckS3Status compares the saved status with the current version of the bucket folder returns true if the objects has not changed

            func ConvertS3Path

            func ConvertS3Path(path string) (string, error)

              ConvertS3Path returns an S3 compatible path

              func CreateAwsSession

              func CreateAwsSession(awsRegion, awsProfile string) (*session.Session, error)

                CreateAwsSession returns an AWS session object for the given region, ensuring that the credentials are available

                func GetSSMParameter

                func GetSSMParameter(parameterName, region string) (string, error)

                  GetSSMParameter returns the value from the parameters store

                  func GetSSMParametersByPath

                  func GetSSMParametersByPath(path, region string) (result []*ssm.Parameter, err error)

                    GetSSMParametersByPath returns values from the parameters store matching the path

                    func InitAwsSession

                    func InitAwsSession(awsProfile string) (*session.Session, error)

                      InitAwsSession configures environment variables to ensure that all following AWS operations will be able to be executed using the proper credentials. Some calls to terraform library are not able to handle shared config properly. This also ensures that the session remains alive in case of MFA is required avoiding asking for MFA on each AWS calls.

                      func SaveS3Status

                      func SaveS3Status(bucketInfo *BucketInfo, folder string) (err error)

                        SaveS3Status save the current state of the S3 bucket folder in the directory


                        type BucketInfo

                        type BucketInfo struct {
                        	BucketName string
                        	Region     string
                        	Key        string

                          BucketInfo represents the basic information relative to an S3 URL

                          func GetBucketObjectInfoFromURL

                          func GetBucketObjectInfoFromURL(url string) (*BucketInfo, error)

                            GetBucketObjectInfoFromURL retrieve the components of the bucket (name, key, region) from an URL

                            func (*BucketInfo) String

                            func (b *BucketInfo) String() string

                              Path returns a valid path from a bucket object