Documentation
¶
Overview ¶
+kubebuilder:object:generate=true +groupName=groups.googleworkspace.upbound.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- type Settings
- func (in *Settings) DeepCopy() *Settings
- func (in *Settings) DeepCopyInto(out *Settings)
- func (in *Settings) DeepCopyObject() runtime.Object
- func (mg *Settings) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (tr *Settings) GetConnectionDetailsMapping() map[string]string
- func (mg *Settings) GetDeletionPolicy() xpv1.DeletionPolicy
- func (tr *Settings) GetID() string
- func (mg *Settings) GetManagementPolicy() xpv1.ManagementPolicy
- func (tr *Settings) GetObservation() (map[string]any, error)
- func (tr *Settings) GetParameters() (map[string]any, error)
- func (mg *Settings) GetProviderConfigReference() *xpv1.Reference
- func (mg *Settings) GetProviderReference() *xpv1.Reference
- func (mg *Settings) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *Settings) GetTerraformResourceType() string
- func (tr *Settings) GetTerraformSchemaVersion() int
- func (mg *Settings) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (tr *Settings) LateInitialize(attrs []byte) (bool, error)
- func (mg *Settings) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *Settings) SetConditions(c ...xpv1.Condition)
- func (mg *Settings) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *Settings) SetManagementPolicy(r xpv1.ManagementPolicy)
- func (tr *Settings) SetObservation(obs map[string]any) error
- func (tr *Settings) SetParameters(params map[string]any) error
- func (mg *Settings) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *Settings) SetProviderReference(r *xpv1.Reference)
- func (mg *Settings) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *Settings) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type SettingsList
- type SettingsObservation
- type SettingsParameters
- type SettingsSpec
- type SettingsStatus
Constants ¶
const ( CRDGroup = "groups.googleworkspace.upbound.io" CRDVersion = "v1alpha1" )
Package type metadata.
Variables ¶
var ( // CRDGroupVersion is the API Group Version used to register the objects CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var ( Settings_Kind = "Settings" Settings_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: Settings_Kind}.String() Settings_KindAPIVersion = Settings_Kind + "." + CRDGroupVersion.String() Settings_GroupVersionKind = CRDGroupVersion.WithKind(Settings_Kind) )
Repository type metadata.
Functions ¶
This section is empty.
Types ¶
type Settings ¶
type Settings struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SettingsSpec `json:"spec"` Status SettingsStatus `json:"status,omitempty"` }
Settings is the Schema for the Settingss API. <no value> +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,googleworkspace}
func (*Settings) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Settings.
func (*Settings) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Settings) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Settings) GetCondition ¶
func (mg *Settings) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this Settings.
func (*Settings) GetConnectionDetailsMapping ¶
GetConnectionDetailsMapping for this Settings
func (*Settings) GetDeletionPolicy ¶
func (mg *Settings) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this Settings.
func (*Settings) GetManagementPolicy ¶
func (mg *Settings) GetManagementPolicy() xpv1.ManagementPolicy
GetManagementPolicy of this Settings.
func (*Settings) GetObservation ¶
GetObservation of this Settings
func (*Settings) GetParameters ¶
GetParameters of this Settings
func (*Settings) GetProviderConfigReference ¶
GetProviderConfigReference of this Settings.
func (*Settings) GetProviderReference ¶
GetProviderReference of this Settings. Deprecated: Use GetProviderConfigReference.
func (*Settings) GetPublishConnectionDetailsTo ¶
func (mg *Settings) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this Settings.
func (*Settings) GetTerraformResourceType ¶
GetTerraformResourceType returns Terraform resource type for this Settings
func (*Settings) GetTerraformSchemaVersion ¶
GetTerraformSchemaVersion returns the associated Terraform schema version
func (*Settings) GetWriteConnectionSecretToReference ¶
func (mg *Settings) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this Settings.
func (*Settings) LateInitialize ¶
LateInitialize this Settings using its observed tfState. returns True if there are any spec changes for the resource.
func (*Settings) ResolveReferences ¶
ResolveReferences of this Settings.
func (*Settings) SetConditions ¶
SetConditions of this Settings.
func (*Settings) SetDeletionPolicy ¶
func (mg *Settings) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this Settings.
func (*Settings) SetManagementPolicy ¶
func (mg *Settings) SetManagementPolicy(r xpv1.ManagementPolicy)
SetManagementPolicy of this Settings.
func (*Settings) SetObservation ¶
SetObservation for this Settings
func (*Settings) SetParameters ¶
SetParameters for this Settings
func (*Settings) SetProviderConfigReference ¶
SetProviderConfigReference of this Settings.
func (*Settings) SetProviderReference ¶
SetProviderReference of this Settings. Deprecated: Use SetProviderConfigReference.
func (*Settings) SetPublishConnectionDetailsTo ¶
func (mg *Settings) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this Settings.
func (*Settings) SetWriteConnectionSecretToReference ¶
func (mg *Settings) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this Settings.
type SettingsList ¶
type SettingsList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Settings `json:"items"` }
SettingsList contains a list of Settingss
func (*SettingsList) DeepCopy ¶
func (in *SettingsList) DeepCopy() *SettingsList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingsList.
func (*SettingsList) DeepCopyInto ¶
func (in *SettingsList) DeepCopyInto(out *SettingsList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SettingsList) DeepCopyObject ¶
func (in *SettingsList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*SettingsList) GetItems ¶
func (l *SettingsList) GetItems() []resource.Managed
GetItems of this SettingsList.
type SettingsObservation ¶
type SettingsObservation struct { // Defaults to `false`. Identifies whether members external to your organization can join the group. If true, Google Workspace users external to your organization can become members of this group. If false, users not belonging to the organization are not allowed to become members of this group. AllowExternalMembers *bool `json:"allowExternalMembers,omitempty" tf:"allow_external_members,omitempty"` // Defaults to `true`. Allows posting from web. If true, allows any member to post to the group forum. If false, Members only use Gmail to communicate with the group. AllowWebPosting *bool `json:"allowWebPosting,omitempty" tf:"allow_web_posting,omitempty"` // Defaults to `false`. Allows the group to be archived only. If true, Group is archived and the group is inactive. New messages to this group are rejected. The older archived messages are browsable and searchable. If true, the `who_can_post_message` property is set to `NONE_CAN_POST`. If reverted from true to false, `who_can_post_message` is set to `ALL_MANAGERS_CAN_POST`. If false, The group is active and can receive messages. When false, updating `who_can_post_message` to `NONE_CAN_POST`, results in an error. ArchiveOnly *bool `json:"archiveOnly,omitempty" tf:"archive_only,omitempty"` CustomFooterText *string `json:"customFooterText,omitempty" tf:"custom_footer_text,omitempty"` // An email address used when replying to a message if the `reply_to` property is set to `REPLY_TO_CUSTOM`. This address is defined by an account administrator. When the group's `reply_to` property is set to `REPLY_TO_CUSTOM`, the `custom_reply_to` property holds a custom email address used when replying to a message, the `custom_reply_to` property must have a text value or an error is returned. CustomReplyTo *string `json:"customReplyTo,omitempty" tf:"custom_reply_to,omitempty"` // Specifies whether the group has a custom role that's included in one of the settings being merged. CustomRolesEnabledForSettingsToBeMerged *bool `json:"customRolesEnabledForSettingsToBeMerged,omitempty" tf:"custom_roles_enabled_for_settings_to_be_merged,omitempty"` // When a message is rejected, this is text for the rejection notification sent to the message's author. By default, this property is empty and has no value in the API's response body. The maximum notification text size is 10,000 characters. Requires `send_message_deny_notification` property to be true. DefaultMessageDenyNotificationText *string `json:"defaultMessageDenyNotificationText,omitempty" tf:"default_message_deny_notification_text,omitempty"` // Description of the group. The maximum group description is no more than 300 characters. Description *string `json:"description,omitempty" tf:"description,omitempty"` // The group's email address. Email *string `json:"email,omitempty" tf:"email,omitempty"` // Defaults to `false`. Specifies whether a collaborative inbox will remain turned on for the group. EnableCollaborativeInbox *bool `json:"enableCollaborativeInbox,omitempty" tf:"enable_collaborative_inbox,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` IncludeCustomFooter *bool `json:"includeCustomFooter,omitempty" tf:"include_custom_footer,omitempty"` // Defaults to `true`. Enables the group to be included in the Global Address List. If true, the group is included in the Global Address List. If false, it is not included in the Global Address List. IncludeInGlobalAddressList *bool `json:"includeInGlobalAddressList,omitempty" tf:"include_in_global_address_list,omitempty"` // Defaults to `false`. Allows the Group contents to be archived. If true, archive messages sent to the group. If false, Do not keep an archive of messages sent to this group. If false, previously archived messages remain in the archive. IsArchived *bool `json:"isArchived,omitempty" tf:"is_archived,omitempty"` // Defaults to `false`. Enables members to post messages as the group. If true, group member can post messages using the group's email address instead of their own email address. Message appear to originate from the group itself. Any message moderation settings on individual users or new members do not apply to posts made on behalf of the group. If false, members can not post in behalf of the group's email address. MembersCanPostAsTheGroup *bool `json:"membersCanPostAsTheGroup,omitempty" tf:"members_can_post_as_the_group,omitempty"` // Defaults to `MODERATE_NONE`. Moderation level of incoming messages. Possible values are: // - `MODERATE_ALL_MESSAGES`: All messages are sent to the group owner's email address for approval. If approved, the message is sent to the group. // - `MODERATE_NON_MEMBERS`: All messages from non group members are sent to the group owner's email address for approval. If approved, the message is sent to the group. // - `MODERATE_NEW_MEMBERS`: All messages from new members are sent to the group owner's email address for approval. If approved, the message is sent to the group. // - `MODERATE_NONE`: No moderator approval is required. Messages are delivered directly to the group. // Note: When the `who_can_post_message` is set to `ANYONE_CAN_POST`, we recommend the `message_moderation_level` be set to `MODERATE_NON_MEMBERS` to protect the group from possible spam.When `member_can_post_as_the_group` is true, any message moderation settings on individual users or new members will not apply to posts made on behalf of the group. MessageModerationLevel *string `json:"messageModerationLevel,omitempty" tf:"message_moderation_level,omitempty"` // Name of the group, which has a maximum size of 75 characters. Name *string `json:"name,omitempty" tf:"name,omitempty"` // The primary language for group. For a group's primary language use the language tags from the Google Workspace languages found at Google Workspace Email Settings API Email Language Tags. PrimaryLanguage *string `json:"primaryLanguage,omitempty" tf:"primary_language,omitempty"` // Defaults to `REPLY_TO_IGNORE`. Specifies who receives the default reply. Possible values are: // - `REPLY_TO_CUSTOM`: For replies to messages, use the group's custom email address. When set to `REPLY_TO_CUSTOM`, the `custom_reply_to` property holds the custom email address used when replying to a message, the customReplyTo property must have a value. Otherwise an error is returned. // - `REPLY_TO_SENDER`: The reply sent to author of message. // - `REPLY_TO_LIST`: This reply message is sent to the group. // - `REPLY_TO_OWNER`: The reply is sent to the owner(s) of the group. This does not include the group's managers. // - `REPLY_TO_IGNORE`: Group users individually decide where the message reply is sent. // - `REPLY_TO_MANAGERS`: This reply message is sent to the group's managers, which includes all managers and the group owner. ReplyTo *string `json:"replyTo,omitempty" tf:"reply_to,omitempty"` // Defaults to `false`. Allows a member to be notified if the member's message to the group is denied by the group owner. If true, when a message is rejected, send the deny message notification to the message author. The `default_message_deny_notification_text` property is dependent on the `send_message_deny_notification` property being true. If false, when a message is rejected, no notification is sent. SendMessageDenyNotification *bool `json:"sendMessageDenyNotification,omitempty" tf:"send_message_deny_notification,omitempty"` // Defaults to `MODERATE`. Specifies moderation levels for messages detected as spam. Possible values are: // - `ALLOW`: Post the message to the group. // - `MODERATE`: Send the message to the moderation queue. This is the default. // - `SILENTLY_MODERATE`: Send the message to the moderation queue, but do not send notification to moderators. // - `REJECT`: Immediately reject the message. SpamModerationLevel *string `json:"spamModerationLevel,omitempty" tf:"spam_moderation_level,omitempty"` // Defaults to `NONE`. Specifies who can moderate metadata. Possible values are: // - `ALL_MEMBERS` // - `OWNERS_AND_MANAGERS` // - `MANAGERS_ONLY` // - `OWNERS_ONLY` // - `NONE` WhoCanAssistContent *string `json:"whoCanAssistContent,omitempty" tf:"who_can_assist_content,omitempty"` // Defaults to `ANYONE_CAN_CONTACT`. Permission to contact owner of the group via web UI. Possible values are: // - `ALL_IN_DOMAIN_CAN_CONTACT` // - `ALL_MANAGERS_CAN_CONTACT` // - `ALL_MEMBERS_CAN_CONTACT` // - `ANYONE_CAN_CONTACT` // - `ALL_OWNERS_CAN_CONTACT` WhoCanContactOwner *string `json:"whoCanContactOwner,omitempty" tf:"who_can_contact_owner,omitempty"` // Defaults to `ALL_IN_DOMAIN_CAN_DISCOVER`. Specifies the set of users for whom this group is discoverable. Possible values are: // - `ANYONE_CAN_DISCOVER` // - `ALL_IN_DOMAIN_CAN_DISCOVER` // - `ALL_MEMBERS_CAN_DISCOVER` WhoCanDiscoverGroup *string `json:"whoCanDiscoverGroup,omitempty" tf:"who_can_discover_group,omitempty"` // Defaults to `CAN_REQUEST_TO_JOIN`. Permission to join group. Possible values are: // - `ANYONE_CAN_JOIN`: Any Internet user, both inside and outside your domain, can join the group. // - `ALL_IN_DOMAIN_CAN_JOIN`: Anyone in the account domain can join. This includes accounts with multiple domains. // - `INVITED_CAN_JOIN`: Candidates for membership can be invited to join. // - `CAN_REQUEST_TO_JOIN`: Non members can request an invitation to join. WhoCanJoin *string `json:"whoCanJoin,omitempty" tf:"who_can_join,omitempty"` // Defaults to `ALL_MEMBERS_CAN_LEAVE`. Permission to leave the group. Possible values are: // - `ALL_MANAGERS_CAN_LEAVE` // - `ALL_MEMBERS_CAN_LEAVE` // - `NONE_CAN_LEAVE` WhoCanLeaveGroup *string `json:"whoCanLeaveGroup,omitempty" tf:"who_can_leave_group,omitempty"` // Defaults to `OWNERS_AND_MANAGERS`. Specifies who can moderate content. Possible values are: // - `ALL_MEMBERS` // - `OWNERS_AND_MANAGERS` // - `OWNERS_ONLY` // - `NONE` WhoCanModerateContent *string `json:"whoCanModerateContent,omitempty" tf:"who_can_moderate_content,omitempty"` // Defaults to `OWNERS_AND_MANAGERS`. Specifies who can manage members. Possible values are: // - `ALL_MEMBERS` // - `OWNERS_AND_MANAGERS` // - `OWNERS_ONLY` // - `NONE` WhoCanModerateMembers *string `json:"whoCanModerateMembers,omitempty" tf:"who_can_moderate_members,omitempty"` // Permissions to post messages. Possible values are: // - `NONE_CAN_POST`: The group is disabled and archived. No one can post a message to this group. * When archiveOnly is false, updating whoCanPostMessage to NONE_CAN_POST, results in an error. * If archiveOnly is reverted from true to false, whoCanPostMessages is set to ALL_MANAGERS_CAN_POST. // - `ALL_MANAGERS_CAN_POST`: Managers, including group owners, can post messages. // - `ALL_MEMBERS_CAN_POST`: Any group member can post a message. // - `ALL_OWNERS_CAN_POST`: Only group owners can post a message. // - `ALL_IN_DOMAIN_CAN_POST`: Anyone in the account can post a message. // - `ANYONE_CAN_POST`: Any Internet user who outside your account can access your Google Groups service and post a message. // *Note: When `who_can_post_message` is set to `ANYONE_CAN_POST`, we recommend the`message_moderation_level` be set to `MODERATE_NON_MEMBERS` to protect the group from possible spam. Users not belonging to the organization are not allowed to become members of this group. WhoCanPostMessage *string `json:"whoCanPostMessage,omitempty" tf:"who_can_post_message,omitempty"` // Defaults to `ALL_MEMBERS_CAN_VIEW`. Permissions to view group messages. Possible values are: // - `ANYONE_CAN_VIEW`: Any Internet user can view the group's messages. // - `ALL_IN_DOMAIN_CAN_VIEW`: Anyone in your account can view this group's messages. // - `ALL_MEMBERS_CAN_VIEW`: All group members can view the group's messages. // - `ALL_MANAGERS_CAN_VIEW`: Any group manager can view this group's messages. // - `ALL_OWNERS_CAN_VIEW`: The group owners can view this group's messages. WhoCanViewGroup *string `json:"whoCanViewGroup,omitempty" tf:"who_can_view_group,omitempty"` // Defaults to `ALL_MEMBERS_CAN_VIEW`. Permissions to view membership. Possible values are: // - `ALL_IN_DOMAIN_CAN_VIEW`: Anyone in the account can view the group members list. If a group already has external members, those members can still send email to this group. // - `ALL_MEMBERS_CAN_VIEW`: The group members can view the group members list. // - `ALL_MANAGERS_CAN_VIEW`: The group managers can view group members list. // - `ALL_OWNERS_CAN_VIEW`: The group owners can view group members list. WhoCanViewMembership *string `json:"whoCanViewMembership,omitempty" tf:"who_can_view_membership,omitempty"` }
func (*SettingsObservation) DeepCopy ¶
func (in *SettingsObservation) DeepCopy() *SettingsObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingsObservation.
func (*SettingsObservation) DeepCopyInto ¶
func (in *SettingsObservation) DeepCopyInto(out *SettingsObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SettingsParameters ¶
type SettingsParameters struct { // Defaults to `false`. Identifies whether members external to your organization can join the group. If true, Google Workspace users external to your organization can become members of this group. If false, users not belonging to the organization are not allowed to become members of this group. // +kubebuilder:validation:Optional AllowExternalMembers *bool `json:"allowExternalMembers,omitempty" tf:"allow_external_members,omitempty"` // Defaults to `true`. Allows posting from web. If true, allows any member to post to the group forum. If false, Members only use Gmail to communicate with the group. // +kubebuilder:validation:Optional AllowWebPosting *bool `json:"allowWebPosting,omitempty" tf:"allow_web_posting,omitempty"` // Defaults to `false`. Allows the group to be archived only. If true, Group is archived and the group is inactive. New messages to this group are rejected. The older archived messages are browsable and searchable. If true, the `who_can_post_message` property is set to `NONE_CAN_POST`. If reverted from true to false, `who_can_post_message` is set to `ALL_MANAGERS_CAN_POST`. If false, The group is active and can receive messages. When false, updating `who_can_post_message` to `NONE_CAN_POST`, results in an error. // +kubebuilder:validation:Optional ArchiveOnly *bool `json:"archiveOnly,omitempty" tf:"archive_only,omitempty"` // +kubebuilder:validation:Optional CustomFooterText *string `json:"customFooterText,omitempty" tf:"custom_footer_text,omitempty"` // An email address used when replying to a message if the `reply_to` property is set to `REPLY_TO_CUSTOM`. This address is defined by an account administrator. When the group's `reply_to` property is set to `REPLY_TO_CUSTOM`, the `custom_reply_to` property holds a custom email address used when replying to a message, the `custom_reply_to` property must have a text value or an error is returned. // +kubebuilder:validation:Optional CustomReplyTo *string `json:"customReplyTo,omitempty" tf:"custom_reply_to,omitempty"` // When a message is rejected, this is text for the rejection notification sent to the message's author. By default, this property is empty and has no value in the API's response body. The maximum notification text size is 10,000 characters. Requires `send_message_deny_notification` property to be true. // +kubebuilder:validation:Optional DefaultMessageDenyNotificationText *string `json:"defaultMessageDenyNotificationText,omitempty" tf:"default_message_deny_notification_text,omitempty"` // The group's email address. // +crossplane:generate:reference:type=github.com/alanraison/provider-googleworkspace/apis/directory/v1alpha1.Group // +crossplane:generate:reference:refFieldName=GroupRef // +crossplane:generate:reference:selectorFieldName=GroupSelector // +kubebuilder:validation:Optional Email *string `json:"email,omitempty" tf:"email,omitempty"` // Defaults to `false`. Specifies whether a collaborative inbox will remain turned on for the group. // +kubebuilder:validation:Optional EnableCollaborativeInbox *bool `json:"enableCollaborativeInbox,omitempty" tf:"enable_collaborative_inbox,omitempty"` // Reference to a Group in directory to populate email. // +kubebuilder:validation:Optional GroupRef *v1.Reference `json:"groupRef,omitempty" tf:"-"` // Selector for a Group in directory to populate email. // +kubebuilder:validation:Optional GroupSelector *v1.Selector `json:"groupSelector,omitempty" tf:"-"` // +kubebuilder:validation:Optional IncludeCustomFooter *bool `json:"includeCustomFooter,omitempty" tf:"include_custom_footer,omitempty"` // Defaults to `true`. Enables the group to be included in the Global Address List. If true, the group is included in the Global Address List. If false, it is not included in the Global Address List. // +kubebuilder:validation:Optional IncludeInGlobalAddressList *bool `json:"includeInGlobalAddressList,omitempty" tf:"include_in_global_address_list,omitempty"` // Defaults to `false`. Allows the Group contents to be archived. If true, archive messages sent to the group. If false, Do not keep an archive of messages sent to this group. If false, previously archived messages remain in the archive. // +kubebuilder:validation:Optional IsArchived *bool `json:"isArchived,omitempty" tf:"is_archived,omitempty"` // Defaults to `false`. Enables members to post messages as the group. If true, group member can post messages using the group's email address instead of their own email address. Message appear to originate from the group itself. Any message moderation settings on individual users or new members do not apply to posts made on behalf of the group. If false, members can not post in behalf of the group's email address. // +kubebuilder:validation:Optional MembersCanPostAsTheGroup *bool `json:"membersCanPostAsTheGroup,omitempty" tf:"members_can_post_as_the_group,omitempty"` // Defaults to `MODERATE_NONE`. Moderation level of incoming messages. Possible values are: // - `MODERATE_ALL_MESSAGES`: All messages are sent to the group owner's email address for approval. If approved, the message is sent to the group. // - `MODERATE_NON_MEMBERS`: All messages from non group members are sent to the group owner's email address for approval. If approved, the message is sent to the group. // - `MODERATE_NEW_MEMBERS`: All messages from new members are sent to the group owner's email address for approval. If approved, the message is sent to the group. // - `MODERATE_NONE`: No moderator approval is required. Messages are delivered directly to the group. // Note: When the `who_can_post_message` is set to `ANYONE_CAN_POST`, we recommend the `message_moderation_level` be set to `MODERATE_NON_MEMBERS` to protect the group from possible spam.When `member_can_post_as_the_group` is true, any message moderation settings on individual users or new members will not apply to posts made on behalf of the group. // +kubebuilder:validation:Optional MessageModerationLevel *string `json:"messageModerationLevel,omitempty" tf:"message_moderation_level,omitempty"` // The primary language for group. For a group's primary language use the language tags from the Google Workspace languages found at Google Workspace Email Settings API Email Language Tags. // +kubebuilder:validation:Optional PrimaryLanguage *string `json:"primaryLanguage,omitempty" tf:"primary_language,omitempty"` // Defaults to `REPLY_TO_IGNORE`. Specifies who receives the default reply. Possible values are: // - `REPLY_TO_CUSTOM`: For replies to messages, use the group's custom email address. When set to `REPLY_TO_CUSTOM`, the `custom_reply_to` property holds the custom email address used when replying to a message, the customReplyTo property must have a value. Otherwise an error is returned. // - `REPLY_TO_SENDER`: The reply sent to author of message. // - `REPLY_TO_LIST`: This reply message is sent to the group. // - `REPLY_TO_OWNER`: The reply is sent to the owner(s) of the group. This does not include the group's managers. // - `REPLY_TO_IGNORE`: Group users individually decide where the message reply is sent. // - `REPLY_TO_MANAGERS`: This reply message is sent to the group's managers, which includes all managers and the group owner. // +kubebuilder:validation:Optional ReplyTo *string `json:"replyTo,omitempty" tf:"reply_to,omitempty"` // Defaults to `false`. Allows a member to be notified if the member's message to the group is denied by the group owner. If true, when a message is rejected, send the deny message notification to the message author. The `default_message_deny_notification_text` property is dependent on the `send_message_deny_notification` property being true. If false, when a message is rejected, no notification is sent. // +kubebuilder:validation:Optional SendMessageDenyNotification *bool `json:"sendMessageDenyNotification,omitempty" tf:"send_message_deny_notification,omitempty"` // Defaults to `MODERATE`. Specifies moderation levels for messages detected as spam. Possible values are: // - `ALLOW`: Post the message to the group. // - `MODERATE`: Send the message to the moderation queue. This is the default. // - `SILENTLY_MODERATE`: Send the message to the moderation queue, but do not send notification to moderators. // - `REJECT`: Immediately reject the message. // +kubebuilder:validation:Optional SpamModerationLevel *string `json:"spamModerationLevel,omitempty" tf:"spam_moderation_level,omitempty"` // Defaults to `NONE`. Specifies who can moderate metadata. Possible values are: // - `ALL_MEMBERS` // - `OWNERS_AND_MANAGERS` // - `MANAGERS_ONLY` // - `OWNERS_ONLY` // - `NONE` // +kubebuilder:validation:Optional WhoCanAssistContent *string `json:"whoCanAssistContent,omitempty" tf:"who_can_assist_content,omitempty"` // Defaults to `ANYONE_CAN_CONTACT`. Permission to contact owner of the group via web UI. Possible values are: // - `ALL_IN_DOMAIN_CAN_CONTACT` // - `ALL_MANAGERS_CAN_CONTACT` // - `ALL_MEMBERS_CAN_CONTACT` // - `ANYONE_CAN_CONTACT` // - `ALL_OWNERS_CAN_CONTACT` // +kubebuilder:validation:Optional WhoCanContactOwner *string `json:"whoCanContactOwner,omitempty" tf:"who_can_contact_owner,omitempty"` // Defaults to `ALL_IN_DOMAIN_CAN_DISCOVER`. Specifies the set of users for whom this group is discoverable. Possible values are: // - `ANYONE_CAN_DISCOVER` // - `ALL_IN_DOMAIN_CAN_DISCOVER` // - `ALL_MEMBERS_CAN_DISCOVER` // +kubebuilder:validation:Optional WhoCanDiscoverGroup *string `json:"whoCanDiscoverGroup,omitempty" tf:"who_can_discover_group,omitempty"` // Defaults to `CAN_REQUEST_TO_JOIN`. Permission to join group. Possible values are: // - `ANYONE_CAN_JOIN`: Any Internet user, both inside and outside your domain, can join the group. // - `ALL_IN_DOMAIN_CAN_JOIN`: Anyone in the account domain can join. This includes accounts with multiple domains. // - `INVITED_CAN_JOIN`: Candidates for membership can be invited to join. // - `CAN_REQUEST_TO_JOIN`: Non members can request an invitation to join. // +kubebuilder:validation:Optional WhoCanJoin *string `json:"whoCanJoin,omitempty" tf:"who_can_join,omitempty"` // Defaults to `ALL_MEMBERS_CAN_LEAVE`. Permission to leave the group. Possible values are: // - `ALL_MANAGERS_CAN_LEAVE` // - `ALL_MEMBERS_CAN_LEAVE` // - `NONE_CAN_LEAVE` // +kubebuilder:validation:Optional WhoCanLeaveGroup *string `json:"whoCanLeaveGroup,omitempty" tf:"who_can_leave_group,omitempty"` // Defaults to `OWNERS_AND_MANAGERS`. Specifies who can moderate content. Possible values are: // - `ALL_MEMBERS` // - `OWNERS_AND_MANAGERS` // - `OWNERS_ONLY` // - `NONE` // +kubebuilder:validation:Optional WhoCanModerateContent *string `json:"whoCanModerateContent,omitempty" tf:"who_can_moderate_content,omitempty"` // Defaults to `OWNERS_AND_MANAGERS`. Specifies who can manage members. Possible values are: // - `ALL_MEMBERS` // - `OWNERS_AND_MANAGERS` // - `OWNERS_ONLY` // - `NONE` // +kubebuilder:validation:Optional WhoCanModerateMembers *string `json:"whoCanModerateMembers,omitempty" tf:"who_can_moderate_members,omitempty"` // Permissions to post messages. Possible values are: // - `NONE_CAN_POST`: The group is disabled and archived. No one can post a message to this group. * When archiveOnly is false, updating whoCanPostMessage to NONE_CAN_POST, results in an error. * If archiveOnly is reverted from true to false, whoCanPostMessages is set to ALL_MANAGERS_CAN_POST. // - `ALL_MANAGERS_CAN_POST`: Managers, including group owners, can post messages. // - `ALL_MEMBERS_CAN_POST`: Any group member can post a message. // - `ALL_OWNERS_CAN_POST`: Only group owners can post a message. // - `ALL_IN_DOMAIN_CAN_POST`: Anyone in the account can post a message. // - `ANYONE_CAN_POST`: Any Internet user who outside your account can access your Google Groups service and post a message. // *Note: When `who_can_post_message` is set to `ANYONE_CAN_POST`, we recommend the`message_moderation_level` be set to `MODERATE_NON_MEMBERS` to protect the group from possible spam. Users not belonging to the organization are not allowed to become members of this group. // +kubebuilder:validation:Optional WhoCanPostMessage *string `json:"whoCanPostMessage,omitempty" tf:"who_can_post_message,omitempty"` // Defaults to `ALL_MEMBERS_CAN_VIEW`. Permissions to view group messages. Possible values are: // - `ANYONE_CAN_VIEW`: Any Internet user can view the group's messages. // - `ALL_IN_DOMAIN_CAN_VIEW`: Anyone in your account can view this group's messages. // - `ALL_MEMBERS_CAN_VIEW`: All group members can view the group's messages. // - `ALL_MANAGERS_CAN_VIEW`: Any group manager can view this group's messages. // - `ALL_OWNERS_CAN_VIEW`: The group owners can view this group's messages. // +kubebuilder:validation:Optional WhoCanViewGroup *string `json:"whoCanViewGroup,omitempty" tf:"who_can_view_group,omitempty"` // Defaults to `ALL_MEMBERS_CAN_VIEW`. Permissions to view membership. Possible values are: // - `ALL_IN_DOMAIN_CAN_VIEW`: Anyone in the account can view the group members list. If a group already has external members, those members can still send email to this group. // - `ALL_MEMBERS_CAN_VIEW`: The group members can view the group members list. // - `ALL_MANAGERS_CAN_VIEW`: The group managers can view group members list. // - `ALL_OWNERS_CAN_VIEW`: The group owners can view group members list. // +kubebuilder:validation:Optional WhoCanViewMembership *string `json:"whoCanViewMembership,omitempty" tf:"who_can_view_membership,omitempty"` }
func (*SettingsParameters) DeepCopy ¶
func (in *SettingsParameters) DeepCopy() *SettingsParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingsParameters.
func (*SettingsParameters) DeepCopyInto ¶
func (in *SettingsParameters) DeepCopyInto(out *SettingsParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SettingsSpec ¶
type SettingsSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SettingsParameters `json:"forProvider"` }
SettingsSpec defines the desired state of Settings
func (*SettingsSpec) DeepCopy ¶
func (in *SettingsSpec) DeepCopy() *SettingsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingsSpec.
func (*SettingsSpec) DeepCopyInto ¶
func (in *SettingsSpec) DeepCopyInto(out *SettingsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SettingsStatus ¶
type SettingsStatus struct { v1.ResourceStatus `json:",inline"` AtProvider SettingsObservation `json:"atProvider,omitempty"` }
SettingsStatus defines the observed state of Settings.
func (*SettingsStatus) DeepCopy ¶
func (in *SettingsStatus) DeepCopy() *SettingsStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingsStatus.
func (*SettingsStatus) DeepCopyInto ¶
func (in *SettingsStatus) DeepCopyInto(out *SettingsStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.