Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
108 changes: 27 additions & 81 deletions baton_capabilities.json
Original file line number Diff line number Diff line change
@@ -1,107 +1,53 @@
{
"@type": "type.googleapis.com/c1.connector.v2.ConnectorCapabilities",
"resourceTypeCapabilities": [
"@type": "type.googleapis.com/c1.connector.v2.ConnectorCapabilities",
"resourceTypeCapabilities": [
{
"resourceType": {
"id": "enterpriseRole",
"displayName": "Enterprise Role",
"traits": [
"TRAIT_ROLE"
]
},
"capabilities": [
"CAPABILITY_SYNC",
"CAPABILITY_PROVISION"
],
"permissions": {}
},
{
"resourceType": {
"id": "group",
"displayName": "IDP Group",
"traits": [
"TRAIT_GROUP"
]
},
"capabilities": [
"CAPABILITY_SYNC",
"CAPABILITY_PROVISION"
],
"permissions": {}
},
{
"resourceType": {
"id": "user",
"displayName": "User",
"traits": [
"resourceType": {
"id": "user",
"displayName": "User",
"traits": [
"TRAIT_USER"
],
"annotations": [
"annotations": [
{
"@type": "type.googleapis.com/c1.connector.v2.SkipEntitlementsAndGrants"
"@type": "type.googleapis.com/c1.connector.v2.SkipEntitlementsAndGrants"
}
]
},
"capabilities": [
"CAPABILITY_SYNC",
"CAPABILITY_ACCOUNT_PROVISIONING"
],
"permissions": {}
},
{
"resourceType": {
"id": "userGroup",
"displayName": "User Group",
"traits": [
"TRAIT_GROUP"
]
},
"capabilities": [
"capabilities": [
"CAPABILITY_SYNC"
],
"permissions": {}
"permissions": {}
},
{
"resourceType": {
"id": "workspace",
"displayName": "Workspace",
"traits": [
"resourceType": {
"id": "workspace",
"displayName": "Workspace",
"traits": [
"TRAIT_GROUP"
]
},
"capabilities": [
"CAPABILITY_SYNC",
"CAPABILITY_PROVISION"
"capabilities": [
"CAPABILITY_SYNC"
],
"permissions": {}
"permissions": {}
},
{
"resourceType": {
"id": "workspaceRole",
"displayName": "Workspace Role",
"traits": [
"resourceType": {
"id": "workspaceRole",
"displayName": "Workspace Role",
"traits": [
"TRAIT_ROLE"
]
},
"capabilities": [
"CAPABILITY_SYNC",
"CAPABILITY_PROVISION"
"capabilities": [
"CAPABILITY_SYNC"
],
"permissions": {}
"permissions": {}
}
],
"connectorCapabilities": [
"CAPABILITY_PROVISION",
"CAPABILITY_SYNC",
"CAPABILITY_ACCOUNT_PROVISIONING",
"CAPABILITY_ACTIONS"
"connectorCapabilities": [
"CAPABILITY_SYNC"
],
"credentialDetails": {
"capabilityAccountProvisioning": {
"supportedCredentialOptions": [
"CAPABILITY_DETAIL_CREDENTIAL_OPTION_NO_PASSWORD"
],
"preferredCredentialOption": "CAPABILITY_DETAIL_CREDENTIAL_OPTION_NO_PASSWORD"
}
}
"credentialDetails": {}
}
7 changes: 2 additions & 5 deletions pkg/config/conf.gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

32 changes: 0 additions & 32 deletions pkg/config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,50 +14,18 @@ var (
field.WithRequired(true),
field.WithIsSecret(true),
)
EnterpriseTokenField = field.StringField(
"enterprise-token",
field.WithDisplayName("Enterprise Token"),
field.WithDescription("The Slack user oauth token used to connect to the Slack Enterprise Grid Admin API"),
field.WithIsSecret(true),
)
SSOEnabledField = field.BoolField(
"sso-enabled",
field.WithDisplayName("SSO Enabled"),
field.WithDescription("Flag indicating that the SSO has been configured for Enterprise Grid Organization. Enables usage of SCIM API"),
field.WithDefaultValue(false),
)
GovEnvironmentField = field.BoolField(
"gov-env",
field.WithDisplayName("Gov Environment"),
field.WithDescription("Flag indicating to use Slack-Gov environment."),
field.WithDefaultValue(false),
)

// ConfigurationFields defines the external configuration required for the
// connector to run. Note: these fields can be marked as optional or
// required.
ConfigurationFields = []field.SchemaField{
AccessTokenField,
EnterpriseTokenField,
SSOEnabledField,
GovEnvironmentField,
}

// FieldRelationships defines relationships between the fields listed in
// ConfigurationFields that can be automatically validated.
// Every Gov Slack instance is an Enterprise Grid instance.
FieldRelationships = []field.SchemaFieldRelationship{
field.FieldsDependentOn(
[]field.SchemaField{GovEnvironmentField},
[]field.SchemaField{EnterpriseTokenField},
),
}

Configuration = field.NewConfiguration(
ConfigurationFields,
field.WithConnectorDisplayName("Slack"),
field.WithHelpUrl("/docs/baton/slack"),
field.WithIconUrl("/static/app-icons/slack.svg"),
field.WithConstraints(FieldRelationships...),
)
)
Loading
Loading