func()

in teamcity/group_data_source.go [38:83]


func (d *groupDataSource) Schema(_ context.Context, _ datasource.SchemaRequest, resp *datasource.SchemaResponse) {
	resp.Schema = schema.Schema{
		Description: "Use this data source to get information about an existing TeamCity group.",
		Attributes: map[string]schema.Attribute{
			"id": schema.StringAttribute{
				Computed:    true,
				Description: "The internal ID of the group.",
			},
			"key": schema.StringAttribute{
				Optional:    true,
				Computed:    true,
				Description: "The key (identifier) of the group to retrieve. Either key or name must be specified.",
			},
			"name": schema.StringAttribute{
				Optional:    true,
				Computed:    true,
				Description: "The name of the group to retrieve. Either key or name must be specified.",
			},
			"roles": schema.SetNestedAttribute{
				Computed: true,
				NestedObject: schema.NestedAttributeObject{
					Attributes: map[string]schema.Attribute{
						"id": schema.StringAttribute{
							Computed:    true,
							Description: "The role ID.",
						},
						"global": schema.BoolAttribute{
							Computed:    true,
							Description: "Whether the role is assigned globally.",
						},
						"project": schema.StringAttribute{
							Computed:    true,
							Description: "The project ID if the role is project-specific.",
						},
					},
				},
				Description: "List of roles assigned to the group.",
			},
			"parent_groups": schema.SetAttribute{
				ElementType: types.StringType,
				Computed:    true,
				Description: "Set of parent group keys.",
			},
		},
	}
}