Documentation
¶
Index ¶
- Variables
- func NewResource() resource.Resource
- type CommentModel
- type CommonExceptionItemProps
- type EntryListModel
- type EntryModel
- type ExceptionItemModel
- type ExceptionItemResource
- func (r *ExceptionItemResource) Configure(ctx context.Context, req resource.ConfigureRequest, ...)
- func (r *ExceptionItemResource) Create(ctx context.Context, req resource.CreateRequest, resp *resource.CreateResponse)
- func (r *ExceptionItemResource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse)
- func (r *ExceptionItemResource) ImportState(ctx context.Context, request resource.ImportStateRequest, ...)
- func (r *ExceptionItemResource) Metadata(ctx context.Context, req resource.MetadataRequest, ...)
- func (r *ExceptionItemResource) Read(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResponse)
- func (r *ExceptionItemResource) Schema(_ context.Context, _ resource.SchemaRequest, resp *resource.SchemaResponse)
- func (r *ExceptionItemResource) Update(ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse)
- func (r *ExceptionItemResource) ValidateConfig(ctx context.Context, req resource.ValidateConfigRequest, ...)
- type NestedEntryModel
Constants ¶
This section is empty.
Variables ¶
var MinVersionExpireTime = version.Must(version.NewVersion("8.7.2"))
MinVersionExpireTime defines the minimum server version required for expire_time field
Functions ¶
func NewResource ¶
NewResource is a helper function to simplify the provider implementation.
Types ¶
type CommentModel ¶
type CommonExceptionItemProps ¶
type CommonExceptionItemProps struct {
NamespaceType *kbapi.SecurityExceptionsAPIExceptionNamespaceType
OsTypes *[]kbapi.SecurityExceptionsAPIExceptionListOsType
Tags *kbapi.SecurityExceptionsAPIExceptionListItemTags
Meta *kbapi.SecurityExceptionsAPIExceptionListItemMeta
ExpireTime *kbapi.SecurityExceptionsAPIExceptionListItemExpireTime
}
CommonExceptionItemProps holds pointers to common fields across create/update requests
type EntryListModel ¶
type EntryModel ¶
type ExceptionItemModel ¶
type ExceptionItemModel struct {
ID types.String `tfsdk:"id"`
SpaceID types.String `tfsdk:"space_id"`
ItemID types.String `tfsdk:"item_id"`
ListID types.String `tfsdk:"list_id"`
Name types.String `tfsdk:"name"`
Description types.String `tfsdk:"description"`
Type types.String `tfsdk:"type"`
NamespaceType types.String `tfsdk:"namespace_type"`
OsTypes types.Set `tfsdk:"os_types"`
Tags types.Set `tfsdk:"tags"`
Meta jsontypes.Normalized `tfsdk:"meta"`
Entries types.List `tfsdk:"entries"`
Comments types.List `tfsdk:"comments"`
ExpireTime timetypes.RFC3339 `tfsdk:"expire_time"`
CreatedAt types.String `tfsdk:"created_at"`
CreatedBy types.String `tfsdk:"created_by"`
UpdatedAt types.String `tfsdk:"updated_at"`
UpdatedBy types.String `tfsdk:"updated_by"`
TieBreakerID types.String `tfsdk:"tie_breaker_id"`
}
type ExceptionItemResource ¶
type ExceptionItemResource struct {
// contains filtered or unexported fields
}
func (*ExceptionItemResource) Configure ¶
func (r *ExceptionItemResource) Configure(ctx context.Context, req resource.ConfigureRequest, resp *resource.ConfigureResponse)
func (*ExceptionItemResource) Create ¶
func (r *ExceptionItemResource) Create(ctx context.Context, req resource.CreateRequest, resp *resource.CreateResponse)
func (*ExceptionItemResource) Delete ¶
func (r *ExceptionItemResource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse)
func (*ExceptionItemResource) ImportState ¶
func (r *ExceptionItemResource) ImportState(ctx context.Context, request resource.ImportStateRequest, response *resource.ImportStateResponse)
func (*ExceptionItemResource) Metadata ¶
func (r *ExceptionItemResource) Metadata(ctx context.Context, req resource.MetadataRequest, resp *resource.MetadataResponse)
Metadata returns the provider type name.
func (*ExceptionItemResource) Read ¶
func (r *ExceptionItemResource) Read(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResponse)
func (*ExceptionItemResource) Schema ¶
func (r *ExceptionItemResource) Schema(_ context.Context, _ resource.SchemaRequest, resp *resource.SchemaResponse)
func (*ExceptionItemResource) Update ¶
func (r *ExceptionItemResource) Update(ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse)
func (*ExceptionItemResource) ValidateConfig ¶
func (r *ExceptionItemResource) ValidateConfig(ctx context.Context, req resource.ValidateConfigRequest, resp *resource.ValidateConfigResponse)
ValidateConfig validates the configuration for an exception item resource. It ensures that entries are properly configured based on their type:
- For "match" and "wildcard" types: 'value' must be set - For "match_any" type: 'values' must be set - For "list" type: 'list' object must be set with 'id' and 'type' - For "exists" type: only 'field' and 'operator' are required - For "nested" type: 'entries' must be set and validated recursively - The 'operator' field is required for all types except "nested"
Validation only runs on known values. Values that are unknown (e.g., references to other resources that haven't been created yet) are skipped.
The function adds appropriate error diagnostics if validation fails.