Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add deploymentType and apiProxyType to ApigeeEnvironment #5884

Merged
merged 31 commits into from
Apr 4, 2022
Merged
Show file tree
Hide file tree
Changes from 30 commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
6675fb1
Add support IAM policy for the Environment of Apigee X
xuchenma Oct 3, 2021
f03205f
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Oct 12, 2021
13f9206
Add support IAM policy for the Environment of Apigee X
xuchenma Oct 3, 2021
88604e6
Add support IAM policy for the Environment of Apigee X
xuchenma Oct 3, 2021
974e3d0
Add support IAM policy for the Environment of Apigee X
xuchenma Oct 3, 2021
a485e31
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Oct 19, 2021
702d8be
Revert all changes to test files.
xuchenma Oct 19, 2021
c506d87
Revert all changes to test files.
xuchenma Oct 19, 2021
27bca67
Revert all changes to test files.
xuchenma Oct 19, 2021
f4fde55
Add primary_resource_name to fix tests.
xuchenma Oct 19, 2021
e018130
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Oct 21, 2021
0c4ac42
Update iam_attributes.tf.erb to honor skip_test.
xuchenma Oct 25, 2021
4c435e5
Don't reject skip_tests when example is nil.
xuchenma Oct 27, 2021
eaaba25
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Oct 28, 2021
68d4249
Update mmv1/products/apigee/api.yaml
xuchenma Nov 5, 2021
1e0499e
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Nov 5, 2021
602cc27
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Nov 10, 2021
5586f70
Fix primary_resource_name for apigee organization name.
xuchenma Nov 10, 2021
e67c72f
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Dec 14, 2021
4eb8698
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Dec 15, 2021
a34302a
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Jan 7, 2022
1abeb37
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Feb 8, 2022
d042493
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Feb 10, 2022
6e163c8
Merge branch 'GoogleCloudPlatform:master' into master
xuchenma Feb 15, 2022
41fe39f
Merge branch 'GoogleCloudPlatform:main' into main
xuchenma Mar 8, 2022
2d5cc5f
Merge branch 'GoogleCloudPlatform:main' into main
xuchenma Mar 10, 2022
11d21d4
Merge branch 'GoogleCloudPlatform:main' into main
xuchenma Mar 28, 2022
ffbf189
Merge branch 'GoogleCloudPlatform:main' into main
xuchenma Mar 30, 2022
94f8d3c
Merge branch 'GoogleCloudPlatform:main' into main
xuchenma Mar 31, 2022
91a586b
Add deploymentType and apiProxyType to ApigeeEnvironment.
xuchenma Apr 1, 2022
3511bac
Update mmv1/products/apigee/api.yaml
c2thorn Apr 4, 2022
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
25 changes: 25 additions & 0 deletions mmv1/products/apigee/api.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -277,6 +277,31 @@ objects:
Description of the environment.
required: false
input: true
- !ruby/object:Api::Type::Enum
name: 'deploymentType'
description: |
Optional. Deployment type supported by the environment. The deployment type can be
set when creating the environment and cannot be changed. When you enable archive
deployment, you will be prevented from performing a subset of actions within the
environment, including:\
Managing the deployment of API proxy or shared flow revisions;\
Creating, updating, or deleting resource files;\
Creating, updating, or deleting target servers;
c2thorn marked this conversation as resolved.
Show resolved Hide resolved
values:
- "DEPLOYMENT_TYPE_UNSPECIFIED"
- "PROXY"
- "ARCHIVE"
input: true
- !ruby/object:Api::Type::Enum
name: 'apiProxyType'
description: |
Optional. API Proxy type supported by the environment. The type can be set when creating
the Environment and cannot be changed.
values:
- "API_PROXY_TYPE_UNSPECIFIED"
- "PROGRAMMABLE"
- "CONFIGURABLE"
input: true
references: !ruby/object:Api::Resource::ReferenceLinks
guides:
'Creating an environment':
Expand Down
15 changes: 15 additions & 0 deletions mmv1/products/apigee/terraform.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,21 @@ overrides: !ruby/object:Overrides::ResourceOverrides
skip_docs: true
# Resource creation race
skip_vcr: true
- !ruby/object:Provider::Terraform::Examples
name: "apigee_environment_basic_deployment_apiproxy_type_test"
primary_resource_id: "apigee_environment"
primary_resource_name: "fmt.Sprintf(\"organizations/tf-test%s\", context[\"random_suffix\"]), fmt.Sprintf(\"tf-test%s\", context[\"random_suffix\"])"
test_env_vars:
org_id: :ORG_ID
billing_account: :BILLING_ACCT
skip_docs: true
# Resource creation race
skip_vcr: true
properties:
deploymentType: !ruby/object:Overrides::Terraform::PropertyOverride
default_from_api: true
apiProxyType: !ruby/object:Overrides::Terraform::PropertyOverride
default_from_api: true
timeouts: !ruby/object:Api::Timeouts
insert_minutes: 30
delete_minutes: 30
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
resource "google_project" "project" {
project_id = "tf-test%{random_suffix}"
name = "tf-test%{random_suffix}"
org_id = "<%= ctx[:test_env_vars]['org_id'] %>"
billing_account = "<%= ctx[:test_env_vars]['billing_account'] %>"
}

resource "google_project_service" "apigee" {
project = google_project.project.project_id
service = "apigee.googleapis.com"
}

resource "google_project_service" "servicenetworking" {
project = google_project.project.project_id
service = "servicenetworking.googleapis.com"
depends_on = [google_project_service.apigee]
}

resource "google_project_service" "compute" {
project = google_project.project.project_id
service = "compute.googleapis.com"
depends_on = [google_project_service.servicenetworking]
}

resource "google_compute_network" "apigee_network" {
name = "apigee-network"
project = google_project.project.project_id
depends_on = [google_project_service.compute]
}

resource "google_compute_global_address" "apigee_range" {
name = "apigee-range"
purpose = "VPC_PEERING"
address_type = "INTERNAL"
prefix_length = 16
network = google_compute_network.apigee_network.id
project = google_project.project.project_id
}

resource "google_service_networking_connection" "apigee_vpc_connection" {
network = google_compute_network.apigee_network.id
service = "servicenetworking.googleapis.com"
reserved_peering_ranges = [google_compute_global_address.apigee_range.name]
depends_on = [google_project_service.servicenetworking]
}

resource "google_apigee_organization" "apigee_org" {
analytics_region = "us-central1"
project_id = google_project.project.project_id
authorized_network = google_compute_network.apigee_network.id
depends_on = [
google_service_networking_connection.apigee_vpc_connection,
google_project_service.apigee,
]
}

resource "google_apigee_environment" "<%= ctx[:primary_resource_id] %>" {
org_id = google_apigee_organization.apigee_org.id
name = "tf-test%{random_suffix}"
description = "Apigee Environment"
display_name = "environment-1"
deployment_type = "PROXY"
api_proxy_type = "PROGRAMMABLE"
}