Set up Application Design Center
This document guides administrators through the initial setup for Application Design Center, which lets you design, share, and manage cloud infrastructure using an application-centric model. The setup process configures the following:
- Application management, which lets you define the boundary for your application and manage its lifecycle.
- An initial space where your team can collaborate.
- A default catalog to store templates.
- A Google-managed catalog with templates based on best practices.
- One of the following Cloud Storage buckets for Terraform storage:
- A new storage bucket that is automatically created.
- Your own existing storage bucket.
Before you begin
Choose a storage bucket option
When you create templates and applications, App Design Center stores Terraform code in a Cloud Storage bucket. Choose one of the following storage bucket options:
- Automatically create a new bucket: Perform the setup in the console.
- Use an existing storage bucket: Complete the setup using the App Design Center API.
You might use your own bucket if you have organization policies that prevent you from creating new buckets, or if you have established business practices that dictate bucket creation.
Verify existing storage bucket access
To complete the setup and use your own bucket, verify the following:
You have access to use APIs. For more information, see Set up API access.
Your bucket is in the same management project where you want to set up App Design Center.
You have the following permissions on the bucket:
storage.buckets.getstorage.objects.create
Choose your application management boundary
An application management boundary is a centralized place for application management tasks, including API enablement, access control, billing, and quotas. Within the boundary, you can monitor, troubleshoot, optimize costs, and manage your Google Cloud resources in the context of your application.
Choose the boundary model that fits your organization:
- Single-project boundary (Preview): Best for new users or small organizations where all resources reside in one project.
- Folder-level boundary: Best for large organizations that manage resources across multiple projects and subfolders.
The following table compares the features of each boundary model:
| Feature | Single-project boundary (Preview) | Folder-level boundary |
|---|---|---|
| Flexibility | Complete the setup using default settings. |
|
| Integrated products |
|
|
Enable application management
When you enable application management, the system does one of the following to help you manage quotas and billing for your application:
- Single-project (Preview): The system configures your project as a management project.
- Folder-level: The system creates a new management project in the folder.
To enable application management, do the following:
Single-project (Preview)
Make sure that your project has a linked billing account.
Make sure that you have the required roles to enable application management and complete the setup, which creates your space.
Application management is automatically enabled on your project when you complete the setup using the console. Alternatively, to perform the setup using the App Design Center API, enable application management on your project.
Folder-level
Make sure that you have an organization resource.
Make sure that you have the required roles to enable application management.
Configure the observability scope for the management project.
Make sure that you have the required roles to complete the setup and create your space.
Verify required IAM roles
To perform the setup, ask your administrator to grant you the necessary roles on your project or boundary folder, as listed in the following table:
| Task | Required roles |
|---|---|
| Perform single-project initial setup | Project Owner (roles/owner), or both of the following:Application Design Center Admin ( roles/designcenter.admin) andService Usage Admin ( roles/serviceusage.serviceUsageAdmin) |
| Perform folder-level initial setup | Both of the following: Application Design Center Admin ( roles/designcenter.admin) andApplication Admin ( roles/designcenter.applicationAdmin) |
For more information about roles, see Access control with IAM.
Set up App Design Center and create a new storage bucket
The setup process in the console creates a new Cloud Storage bucket to store application information. To use an existing bucket, see Set up App Design Center and use your own storage bucket.
Single-project (Preview)
To enable application management on a single project and set up App Design Center, do the following:
Go to the Application Design Center Overview page.
From the project picker, select the project where you want to configure application management.
Click Go to Setup.
In the Setup your project for application management pane, review the list of APIs that will be enabled.
Click Enable. The system enables the APIs, and creates the storage bucket and default-space space.
To store the Google Cloud resources that you deploy with App Design Center, create standard projects in your organization.
Folder-level
To set up App Design Center on your app-enabled folder, do the following:
Go to the Application Design Center Overview page.
Click Select folder and select your app-enabled folder.
Click Set up ADC.
In the My space name field, enter a name for your space. You can't edit this name later.
By default, the space contains components and application templates that are created by Google. To remove Google components and application templates from the space, clear the Enable Google opinionated templates checkbox.
If you remove Google opinionated templates, space users can only use the components that you import and the application templates that you create.
Click Complete setup. The system enables the APIs, and creates the storage bucket and space.
To store the Google Cloud resources that you deploy with App Design Center, create standard projects in your app-enabled folder.
Set up App Design Center and use your own storage bucket
When you set up App Design Center, you can use your own Cloud Storage bucket to store Terraform code. For example, you might use an existing bucket if your organization policies prevent you from creating new buckets.
To set up Application Design Center and use your own Cloud Storage bucket, you must use the App Design Center API. Do the following:
Identify the bucket name.
Create your API call using the
projects.locations.spacesresource. The API request path takes the formatprojects/<var>PROJECT_ID</var>/locations/<var>LOCATION</var>, where<var>PROJECT_ID</var>is one of the following:- For a single-project boundary, use your project ID.
- For a folder-level boundary, use the ID of the management project that you created during the application management setup.
Perform the following configuration in your API call:
Specify your bucket name in the
gcs_bucketfield. For example, if the bucket URI isgs://my-bucket, the bucket name ismy-bucket.Use the
projects.locations.spaces.createmethod to create the space.
Running this method creates your space, sets your bucket as the storage location for application information, enables the required APIs, and completes the setup process.
What's next
- Deploy your first application from a Google template by following Quickstart: Customize and deploy a Google template.
- Manage team permissions by providing access to space users.
- Share templates by creating additional spaces.
- Review core concepts and benefits with the App Design Center overview.
- Publish templates by managing template catalogs.