INNER CODE UNIT · Go

earlyRenewalPeriod

hashicorp/terraform-provider-tls · internal/provider/common_cert.go:301

	earlyRenewalPeriod := time.Duration(-earlyRenewalHours) * time.Hour
	earlyRenewalTime := validityEndTime.Add(earlyRenewalPeriod)

	// If "early renewal" time has passed, mark it "ready for renewal"
	timeToEarlyRenewal := earlyRenewalTime.Sub(currentTime)
	if timeToEarlyRenewal <= 0 {
		tflog.Info(ctx, "Certificate is ready for early renewal")
		readyForRenewalPath := path.Root("ready_for_renewal")
		res.Diagnostics.Append(res.Plan.SetAttribute(ctx, readyForRenewalPath, types.BoolUnknown())...)
		res.RequiresReplace = append(res.RequiresReplace, readyForRenewalPath)
	}
}

func modifyStateIfCertificateReadyForRenewal(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResponse) {
	// Retrieve `validity_end_time` and confirm is a known, non-null value
	validityEndTimePath := path.Root("validity_end_time")
	var validityEndTimeStr types.String
	resp.Diagnostics.Append(req.State.GetAttribute(ctx, validityEndTimePath, &validityEndTimeStr)...)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…