Documentation
¶
Overview ¶
hash.go This package contains shared / common hash functions
Index ¶
- func Create[sdkPayloadType any, sdkResponseType any](ctx context.Context, d *schema.ResourceData, meta interface{}, ...) diag.Diagnostics
- func Delete(ctx context.Context, d *schema.ResourceData, meta interface{}, ...) diag.Diagnostics
- func DownloadFile(url string) (string, error)
- func HandleResourceNotFoundError(err error, d *schema.ResourceData, cleanup bool) diag.Diagnostics
- func HashString(s string) string
- func Read[sdkResponseType any](ctx context.Context, d *schema.ResourceData, meta interface{}, ...) diag.Diagnostics
- func SerializeAndRedactJSON(resource interface{}, redactFields []string) (string, error)
- func SerializeAndRedactXML(resource interface{}, redactFields []string) (string, error)
- func Update[sdkPayloadType any, sdkResponseType any](ctx context.Context, d *schema.ResourceData, meta interface{}, ...) diag.Diagnostics
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Create ¶ added in v0.1.6
func Create[sdkPayloadType any, sdkResponseType any]( ctx context.Context, d *schema.ResourceData, meta interface{}, construct payoadConstructorFunc[sdkPayloadType], serverOutcomeFunc sdkCreateUpdateFunc[sdkPayloadType, sdkResponseType], reader providerReadFunc, ) diag.Diagnostics
Create is a shared helper that handles the creation of a new resource in Jamf Pro with retry logic and state management. It accepts generic types for the SDK payload and response to maintain type safety while being reusable.
Parameters: - ctx: The context for the operation, used for timeouts and cancellation - d: The ResourceData containing the desired state from Terraform - meta: The provider meta object containing the authenticated client - construct: A function that builds the SDK payload from ResourceData - serverOutcomeFunc: The SDK function that performs the actual creation API call - reader: A function that reads back the resource state after creation
Returns: - diag.Diagnostics containing any errors or warnings from the operation
func Delete ¶ added in v0.1.6
func Delete(ctx context.Context, d *schema.ResourceData, meta interface{}, serverOutcomeFunc sdkDeleteFunc) diag.Diagnostics
Delete is a shared helper that removes a resource from Jamf Pro with retry logic. It handles both the API deletion and clearing the resource ID from state.
Parameters: - ctx: The context for the operation, used for timeouts and cancellation - d: The ResourceData containing the resource to delete - meta: The provider meta object containing the authenticated client - serverOutcomeFunc: The SDK function that performs the actual delete API call
Returns: - diag.Diagnostics containing any errors or warnings from the operation
func DownloadFile ¶ added in v0.6.0
DownloadFile downloads a file from the given URL and saves it to a temporary file. This is used for resources such as packages and icons where we want to reference a web source. If the Content-Disposition header is present in the response, it uses the filename from the header. Otherwise, if no filename is provided in the headers, it uses the final URL after any redirects to determine the filename. It also replaces any '%' characters in the filename with '_'.
func HandleResourceNotFoundError ¶ added in v0.1.6
func HandleResourceNotFoundError(err error, d *schema.ResourceData, cleanup bool) diag.Diagnostics
HandleResourceNotFoundError is a helper function to handle 404 and 410 errors and remove the resource from Terraform state
func HashString ¶ added in v0.1.6
HashString calculates the SHA-256 hash of a string and returns it as a hexadecimal string.
func Read ¶ added in v0.1.6
func Read[sdkResponseType any]( ctx context.Context, d *schema.ResourceData, meta interface{}, removeDeleteResourcesFromState bool, serverOutcomeFunc sdkGetFunc[sdkResponseType], providerStateFunc providerStateFunc[sdkResponseType], ) diag.Diagnostics
Read is a shared helper that retrieves the current state of a resource from Jamf Pro and updates the Terraform state. It includes retry logic and can optionally remove deleted resources from state.
Parameters: - ctx: The context for the operation, used for timeouts and cancellation - d: The ResourceData to be updated with the current state - meta: The provider meta object containing the authenticated client - removeDeleteResourcesFromState: Whether to remove the resource from state if not found - serverOutcomeFunc: The SDK function that performs the actual read API call - providerStateFunc: A function that updates ResourceData with the API response
Returns: - diag.Diagnostics containing any errors or warnings from the operation
func SerializeAndRedactJSON ¶ added in v0.1.6
SerializeAndRedactJSON serializes a resource to JSON and redacts specified fields.
func SerializeAndRedactXML ¶ added in v0.1.6
SerializeAndRedactXML serializes a resource to XML and redacts specified fields.
func Update ¶ added in v0.1.6
func Update[sdkPayloadType any, sdkResponseType any]( ctx context.Context, d *schema.ResourceData, meta interface{}, constructor payoadConstructorFunc[sdkPayloadType], outcomeFunc sdkUpdateFunc[sdkPayloadType, sdkResponseType], reader providerReadFunc, ) diag.Diagnostics
Update is a shared helper that handles updating an existing resource in Jamf Pro with retry logic. It constructs the update payload, sends it to the API, and refreshes the state.
Parameters: - ctx: The context for the operation, used for timeouts and cancellation - d: The ResourceData containing the desired state from Terraform - meta: The provider meta object containing the authenticated client - constructor: A function that builds the SDK payload from ResourceData - outcomeFunc: The SDK function that performs the actual update API call - reader: A function that reads back the resource state after update
Returns: - diag.Diagnostics containing any errors or warnings from the operation
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
configurationprofiles
|
|
|
datavalidators
common/configurationprofiles/datavalidators/helpers.go
|
common/configurationprofiles/datavalidators/helpers.go |
|
plist
common/configurationprofiles/plist/plistdiffsuppression.go contains the functions to process configuration profiles for diff suppression.
|
common/configurationprofiles/plist/plistdiffsuppression.go contains the functions to process configuration profiles for diff suppression. |
|
plist/test/encode
command
|
|
|
plist/test/removekeys
command
|
|
|
plist/test/sortkeys
command
|
|
|
common/constructobject.go
|
common/constructobject.go |