Google Cloud (GCP) Classic

v6.39.0 published on Wednesday, Sep 28, 2022 by Pulumi

getFolders

Retrieve information about a set of folders based on a parent ID. See the REST API for more details.

Example Usage

Searching For Folders At The Root Of An Org

using System.Collections.Generic;
using Pulumi;
using Gcp = Pulumi.Gcp;

return await Deployment.RunAsync(() => 
{
    var my_org_folders = Gcp.Organizations.GetFolders.Invoke(new()
    {
        ParentId = $"organizations/{@var.Organization_id}",
    });

    var first_folder = Gcp.Organizations.GetFolder.Invoke(new()
    {
        Folder = my_org_folders.Apply(getFoldersResult => getFoldersResult.Folders[0]?.Name),
    });

});
package main

import (
	"fmt"

	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		my_org_folders, err := organizations.GetFolders(ctx, &organizations.GetFoldersArgs{
			ParentId: fmt.Sprintf("organizations/%v", _var.Organization_id),
		}, nil)
		if err != nil {
			return err
		}
		_, err = organizations.LookupFolder(ctx, &organizations.LookupFolderArgs{
			Folder: my_org_folders.Folders[0].Name,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetFoldersArgs;
import com.pulumi.gcp.organizations.inputs.GetFolderArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        final var my-org-folders = OrganizationsFunctions.getFolders(GetFoldersArgs.builder()
            .parentId(String.format("organizations/%s", var_.organization_id()))
            .build());

        final var first-folder = OrganizationsFunctions.getFolder(GetFolderArgs.builder()
            .folder(my_org_folders.folders()[0].name())
            .build());

    }
}
import pulumi
import pulumi_gcp as gcp

my_org_folders = gcp.organizations.get_folders(parent_id=f"organizations/{var['organization_id']}")
first_folder = gcp.organizations.get_folder(folder=my_org_folders.folders[0].name)
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const my-org-folders = gcp.organizations.getFolders({
    parentId: `organizations/${_var.organization_id}`,
});
const first-folder = my_org_folders.then(my_org_folders => gcp.organizations.getFolder({
    folder: my_org_folders.folders?[0]?.name,
}));
variables:
  my-org-folders:
    Fn::Invoke:
      Function: gcp:organizations:getFolders
      Arguments:
        parentId: organizations/${var.organization_id}
  first-folder:
    Fn::Invoke:
      Function: gcp:organizations:getFolder
      Arguments:
        folder: ${["my-org-folders"].folders[0].name}

Using getFolders

Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

function getFolders(args: GetFoldersArgs, opts?: InvokeOptions): Promise<GetFoldersResult>
function getFoldersOutput(args: GetFoldersOutputArgs, opts?: InvokeOptions): Output<GetFoldersResult>
def get_folders(parent_id: Optional[str] = None,
                opts: Optional[InvokeOptions] = None) -> GetFoldersResult
def get_folders_output(parent_id: Optional[pulumi.Input[str]] = None,
                opts: Optional[InvokeOptions] = None) -> Output[GetFoldersResult]
func GetFolders(ctx *Context, args *GetFoldersArgs, opts ...InvokeOption) (*GetFoldersResult, error)
func GetFoldersOutput(ctx *Context, args *GetFoldersOutputArgs, opts ...InvokeOption) GetFoldersResultOutput

> Note: This function is named GetFolders in the Go SDK.

public static class GetFolders 
{
    public static Task<GetFoldersResult> InvokeAsync(GetFoldersArgs args, InvokeOptions? opts = null)
    public static Output<GetFoldersResult> Invoke(GetFoldersInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetFoldersResult> getFolders(GetFoldersArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
Fn::Invoke:
  Function: gcp:organizations/getFolders:getFolders
  Arguments:
    # Arguments dictionary

The following arguments are supported:

ParentId string

A string parent as defined in the REST API.

ParentId string

A string parent as defined in the REST API.

parentId String

A string parent as defined in the REST API.

parentId string

A string parent as defined in the REST API.

parent_id str

A string parent as defined in the REST API.

parentId String

A string parent as defined in the REST API.

getFolders Result

The following output properties are available:

Folders List<GetFoldersFolder>

A list of projects matching the provided filter. Structure is defined below.

Id string

The provider-assigned unique ID for this managed resource.

ParentId string
Folders []GetFoldersFolder

A list of projects matching the provided filter. Structure is defined below.

Id string

The provider-assigned unique ID for this managed resource.

ParentId string
folders List<GetFoldersFolder>

A list of projects matching the provided filter. Structure is defined below.

id String

The provider-assigned unique ID for this managed resource.

parentId String
folders GetFoldersFolder[]

A list of projects matching the provided filter. Structure is defined below.

id string

The provider-assigned unique ID for this managed resource.

parentId string
folders Sequence[GetFoldersFolder]

A list of projects matching the provided filter. Structure is defined below.

id str

The provider-assigned unique ID for this managed resource.

parent_id str
folders List<Property Map>

A list of projects matching the provided filter. Structure is defined below.

id String

The provider-assigned unique ID for this managed resource.

parentId String

Supporting Types

GetFoldersFolder

CreateTime string

The timestamp of when the folder was created

DeleteTime string

The timestamp of when the folder was requested to be deleted (if applicable)

DisplayName string

The display name of the folder

Etag string

Entity tag identifier of the folder

Name string

The id of the folder

Parent string

The parent id of the folder

State string

The lifecycle state of the folder

UpdateTime string

The timestamp of when the folder was last modified

CreateTime string

The timestamp of when the folder was created

DeleteTime string

The timestamp of when the folder was requested to be deleted (if applicable)

DisplayName string

The display name of the folder

Etag string

Entity tag identifier of the folder

Name string

The id of the folder

Parent string

The parent id of the folder

State string

The lifecycle state of the folder

UpdateTime string

The timestamp of when the folder was last modified

createTime String

The timestamp of when the folder was created

deleteTime String

The timestamp of when the folder was requested to be deleted (if applicable)

displayName String

The display name of the folder

etag String

Entity tag identifier of the folder

name String

The id of the folder

parent String

The parent id of the folder

state String

The lifecycle state of the folder

updateTime String

The timestamp of when the folder was last modified

createTime string

The timestamp of when the folder was created

deleteTime string

The timestamp of when the folder was requested to be deleted (if applicable)

displayName string

The display name of the folder

etag string

Entity tag identifier of the folder

name string

The id of the folder

parent string

The parent id of the folder

state string

The lifecycle state of the folder

updateTime string

The timestamp of when the folder was last modified

create_time str

The timestamp of when the folder was created

delete_time str

The timestamp of when the folder was requested to be deleted (if applicable)

display_name str

The display name of the folder

etag str

Entity tag identifier of the folder

name str

The id of the folder

parent str

The parent id of the folder

state str

The lifecycle state of the folder

update_time str

The timestamp of when the folder was last modified

createTime String

The timestamp of when the folder was created

deleteTime String

The timestamp of when the folder was requested to be deleted (if applicable)

displayName String

The display name of the folder

etag String

Entity tag identifier of the folder

name String

The id of the folder

parent String

The parent id of the folder

state String

The lifecycle state of the folder

updateTime String

The timestamp of when the folder was last modified

Package Details

Repository
https://github.com/pulumi/pulumi-gcp
License
Apache-2.0
Notes

This Pulumi package is based on the google-beta Terraform Provider.