Skip to content

Commit 08717c1

Browse files
authored
Release 3.50.0
Release 3.50.0
2 parents 620f4d0 + 83f24c9 commit 08717c1

File tree

2,049 files changed

+613086
-1508
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,049 files changed

+613086
-1508
lines changed

CHANGELOG.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,17 @@
1-
## 3.49.1 (Unreleased)
1+
## 3.50.0 (Unreleased)
2+
3+
### Added
4+
- Support for Wallet Management.
5+
- Support for Add/Remove Compatible Shape from Custom Images
6+
- Support for HTTP Redirects
7+
- Support for OCI Resource Discovery to generate configurations and state files from existing compartments
8+
9+
### Fixed
10+
- `extended_metadata` fields should be imported as part of instances and instance configurations
11+
12+
### Notes
13+
Starting with this version, the terraform-provider-oci supports resource discovery.
14+
215
## 3.49.0 (October 23, 2019)
316

417
### Added

GNUmakefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ else
102102
endif
103103

104104
### `make release version=2.0.1`
105-
release: clean get
105+
release: clean
106106
ifdef version
107107
sed -i -e 's/Version = ".*"/Version = "$(version)"/g' oci/version.go && rm -f oci/version.go-e
108108
gox -output ./bin/{{.OS}}_{{.Arch}}/terraform-provider-oci_v$(version)

examples/always_free/main.tf

Lines changed: 344 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,344 @@
1+
// Copyright (c) 2017, 2019, Oracle and/or its affiliates. All rights reserved.
2+
3+
variable "tenancy_ocid" {}
4+
variable "user_ocid" {}
5+
variable "fingerprint" {}
6+
variable "private_key_path" {}
7+
variable "ssh_public_key" {}
8+
variable "compartment_ocid" {}
9+
variable "region" {}
10+
11+
provider "oci" {
12+
region = "${var.region}"
13+
tenancy_ocid = "${var.tenancy_ocid}"
14+
user_ocid = "${var.user_ocid}"
15+
fingerprint = "${var.fingerprint}"
16+
private_key_path = "${var.private_key_path}"
17+
}
18+
19+
variable "ad_region_mapping" {
20+
type = "map"
21+
22+
default = {
23+
us-phoenix-1 = 2
24+
us-ashburn-1 = 3
25+
us-seattle-1 = 2
26+
}
27+
}
28+
29+
variable "images" {
30+
type = "map"
31+
32+
default = {
33+
# See https://docs.us-phoenix-1.oraclecloud.com/images/
34+
# Oracle-provided image "Oracle-Linux-7.5-2018.10.16-0"
35+
us-phoenix-1 = "ocid1.image.oc1.phx.aaaaaaaadtmpmfm77czi5ghi5zh7uvkguu6dsecsg7kuo3eigc5663und4za"
36+
37+
us-ashburn-1 = "ocid1.image.oc1.iad.aaaaaaaayuihpsm2nfkxztdkottbjtfjqhgod7hfuirt2rqlewxrmdlgg75q"
38+
eu-frankfurt-1 = "ocid1.image.oc1.eu-frankfurt-1.aaaaaaaaitzn6tdyjer7jl34h2ujz74jwy5nkbukbh55ekp6oyzwrtfa4zma"
39+
uk-london-1 = "ocid1.image.oc1.uk-london-1.aaaaaaaa32voyikkkzfxyo4xbdmadc2dmvorfxxgdhpnk6dw64fa3l4jh7wa"
40+
us-seattle-1 = "ocid1.image.region1.sea.aaaaaaaau2iablsucjq62zapd3fr4laaoiqviwsujgois2wcaejaazjnhivq"
41+
}
42+
}
43+
44+
data "oci_identity_availability_domain" "ad" {
45+
compartment_id = "${var.tenancy_ocid}"
46+
ad_number = "${var.ad_region_mapping[var.region]}"
47+
}
48+
49+
resource "oci_core_virtual_network" "test_vcn" {
50+
cidr_block = "10.1.0.0/16"
51+
compartment_id = "${var.compartment_ocid}"
52+
display_name = "testVCN"
53+
dns_label = "testvcn"
54+
}
55+
56+
resource "oci_core_subnet" "test_subnet" {
57+
cidr_block = "10.1.20.0/24"
58+
display_name = "testSubnet"
59+
dns_label = "testsubnet"
60+
security_list_ids = ["${oci_core_security_list.test_security_list.id}"]
61+
compartment_id = "${var.compartment_ocid}"
62+
vcn_id = "${oci_core_virtual_network.test_vcn.id}"
63+
route_table_id = "${oci_core_route_table.test_route_table.id}"
64+
dhcp_options_id = "${oci_core_virtual_network.test_vcn.default_dhcp_options_id}"
65+
}
66+
67+
resource "oci_core_internet_gateway" "test_internet_gateway" {
68+
compartment_id = "${var.compartment_ocid}"
69+
display_name = "testIG"
70+
vcn_id = "${oci_core_virtual_network.test_vcn.id}"
71+
}
72+
73+
resource "oci_core_route_table" "test_route_table" {
74+
compartment_id = "${var.compartment_ocid}"
75+
vcn_id = "${oci_core_virtual_network.test_vcn.id}"
76+
display_name = "testRouteTable"
77+
78+
route_rules {
79+
destination = "0.0.0.0/0"
80+
destination_type = "CIDR_BLOCK"
81+
network_entity_id = "${oci_core_internet_gateway.test_internet_gateway.id}"
82+
}
83+
}
84+
85+
resource "oci_core_security_list" "test_security_list" {
86+
compartment_id = "${var.compartment_ocid}"
87+
vcn_id = "${oci_core_virtual_network.test_vcn.id}"
88+
display_name = "testSecurityList"
89+
90+
egress_security_rules {
91+
protocol = "6"
92+
destination = "0.0.0.0/0"
93+
}
94+
95+
ingress_security_rules {
96+
protocol = "6"
97+
source = "0.0.0.0/0"
98+
99+
tcp_options {
100+
max = "22"
101+
min = "22"
102+
}
103+
}
104+
105+
ingress_security_rules {
106+
protocol = "6"
107+
source = "0.0.0.0/0"
108+
109+
tcp_options {
110+
max = "3000"
111+
min = "3000"
112+
}
113+
}
114+
115+
ingress_security_rules {
116+
protocol = "6"
117+
source = "0.0.0.0/0"
118+
119+
tcp_options {
120+
max = "3005"
121+
min = "3005"
122+
}
123+
}
124+
125+
ingress_security_rules {
126+
protocol = "6"
127+
source = "0.0.0.0/0"
128+
129+
tcp_options {
130+
max = "80"
131+
min = "80"
132+
}
133+
}
134+
}
135+
136+
resource "oci_core_instance" "free_instance0" {
137+
availability_domain = "${data.oci_identity_availability_domain.ad.name}"
138+
compartment_id = "${var.compartment_ocid}"
139+
display_name = "freeInstance0"
140+
shape = "VM.Standard.E2.1.Micro"
141+
142+
create_vnic_details {
143+
subnet_id = "${oci_core_subnet.test_subnet.id}"
144+
display_name = "primaryvnic"
145+
assign_public_ip = true
146+
hostname_label = "freeinstance0"
147+
}
148+
149+
source_details {
150+
source_type = "image"
151+
source_id = "${var.images[var.region]}"
152+
}
153+
154+
metadata = {
155+
ssh_authorized_keys = "${var.ssh_public_key}"
156+
}
157+
}
158+
159+
resource "oci_core_instance" "free_instance1" {
160+
availability_domain = "${data.oci_identity_availability_domain.ad.name}"
161+
compartment_id = "${var.compartment_ocid}"
162+
display_name = "freeInstance1"
163+
shape = "VM.Standard.E2.1.Micro"
164+
165+
create_vnic_details {
166+
subnet_id = "${oci_core_subnet.test_subnet.id}"
167+
display_name = "primaryvnic"
168+
assign_public_ip = true
169+
hostname_label = "freeinstance1"
170+
}
171+
172+
source_details {
173+
source_type = "image"
174+
source_id = "${var.images[var.region]}"
175+
}
176+
177+
metadata = {
178+
ssh_authorized_keys = "${var.ssh_public_key}"
179+
}
180+
}
181+
182+
resource "oci_load_balancer" "free_load_balancer" {
183+
#Required
184+
compartment_id = "${var.compartment_ocid}"
185+
display_name = "alwaysFreeLoadBalancer"
186+
shape = "10Mbps-Micro"
187+
188+
subnet_ids = [
189+
"${oci_core_subnet.test_subnet.id}",
190+
]
191+
}
192+
193+
resource "oci_load_balancer_backend_set" "free_load_balancer_backend_set" {
194+
name = "lbBackendSet1"
195+
load_balancer_id = "${oci_load_balancer.free_load_balancer.id}"
196+
policy = "ROUND_ROBIN"
197+
198+
health_checker {
199+
port = "80"
200+
protocol = "HTTP"
201+
response_body_regex = ".*"
202+
url_path = "/"
203+
}
204+
205+
session_persistence_configuration {
206+
cookie_name = "lb-session1"
207+
disable_fallback = true
208+
}
209+
}
210+
211+
resource "oci_load_balancer_backend" "free_load_balancer_test_backend0" {
212+
#Required
213+
backendset_name = "${oci_load_balancer_backend_set.free_load_balancer_backend_set.name}"
214+
ip_address = "${oci_core_instance.free_instance0.public_ip}"
215+
load_balancer_id = "${oci_load_balancer.free_load_balancer.id}"
216+
port = "80"
217+
}
218+
219+
resource "oci_load_balancer_backend" "free_load_balancer_test_backend1" {
220+
#Required
221+
backendset_name = "${oci_load_balancer_backend_set.free_load_balancer_backend_set.name}"
222+
ip_address = "${oci_core_instance.free_instance1.public_ip}"
223+
load_balancer_id = "${oci_load_balancer.free_load_balancer.id}"
224+
port = "80"
225+
}
226+
227+
resource "oci_load_balancer_hostname" "test_hostname1" {
228+
#Required
229+
hostname = "app.free.com"
230+
load_balancer_id = "${oci_load_balancer.free_load_balancer.id}"
231+
name = "hostname1"
232+
}
233+
234+
resource "oci_load_balancer_listener" "load_balancer_listener0" {
235+
load_balancer_id = "${oci_load_balancer.free_load_balancer.id}"
236+
name = "http"
237+
default_backend_set_name = "${oci_load_balancer_backend_set.free_load_balancer_backend_set.name}"
238+
hostname_names = ["${oci_load_balancer_hostname.test_hostname1.name}"]
239+
port = 80
240+
protocol = "HTTP"
241+
rule_set_names = ["${oci_load_balancer_rule_set.test_rule_set.name}"]
242+
243+
connection_configuration {
244+
idle_timeout_in_seconds = "240"
245+
}
246+
}
247+
248+
resource "oci_load_balancer_rule_set" "test_rule_set" {
249+
items {
250+
action = "ADD_HTTP_REQUEST_HEADER"
251+
header = "example_header_name"
252+
value = "example_header_value"
253+
}
254+
255+
items {
256+
action = "CONTROL_ACCESS_USING_HTTP_METHODS"
257+
allowed_methods = ["GET", "POST"]
258+
status_code = "405"
259+
}
260+
261+
load_balancer_id = "${oci_load_balancer.free_load_balancer.id}"
262+
name = "test_rule_set_name"
263+
}
264+
265+
resource "oci_load_balancer_certificate" "load_balancer_certificate" {
266+
load_balancer_id = "${oci_load_balancer.free_load_balancer.id}"
267+
ca_certificate = "-----BEGIN CERTIFICATE-----\nMIIC9jCCAd4CCQD2rPUVJETHGzANBgkqhkiG9w0BAQsFADA9MQswCQYDVQQGEwJV\nUzELMAkGA1UECAwCV0ExEDAOBgNVBAcMB1NlYXR0bGUxDzANBgNVBAoMBk9yYWNs\nZTAeFw0xOTAxMTcyMjU4MDVaFw0yMTAxMTYyMjU4MDVaMD0xCzAJBgNVBAYTAlVT\nMQswCQYDVQQIDAJXQTEQMA4GA1UEBwwHU2VhdHRsZTEPMA0GA1UECgwGT3JhY2xl\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA30+wt7OlUB/YpmWbTRkx\nnLG0lKWiV+oupNKj8luXmC5jvOFTUejt1pQhpA47nCqywlOAfk2N8hJWTyJZUmKU\n+DWVV2So2B/obYxpiiyWF2tcF/cYi1kBYeAIu5JkVFwDe4ITK/oQUFEhIn3Qg/oC\nMQ2985/MTdCXONgnbmePU64GrJwfvOeJcQB3VIL1BBfISj4pPw5708qTRv5MJBOO\njLKRM68KXC5us4879IrSA77NQr1KwjGnQlykyCgGvvgwgrUTd5c/dH8EKrZVcFi6\nytM66P/1CTpk1YpbI4gqiG0HBbuXG4JRIjyzW4GT4JXeSjgvrkIYL8k/M4Az1WEc\n2wIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQAuI53m8Va6EafDi6GQdQrzNNQFCAVQ\nxIABAB0uaSYCs3H+pqTktHzOrOluSUEogXRl0UU5/OuvxAz4idA4cfBdId4i7AcY\nqZsBjA/xqH/rxR3pcgfaGyxQzrUsJFf0ZwnzqYJs7fUvuatHJYi/cRBxrKR2+4Oj\nlUbb9TSmezlzHK5CaD5XzN+lZqbsSvN3OQbOryJCbtjZVQFGZ1SmL6OLrwpbBKuP\nn2ob+gaP57YSzO3zk1NDXMlQPHRsdSOqocyKx8y+7J0g6MqPvBzIe+wI3QW85MQY\nj1/IHmj84LNGp7pHCyiYx/oI+00gRch04H2pJv0TP3sAQ37gplBwDrUo\n-----END CERTIFICATE-----"
268+
certificate_name = "certificate1"
269+
private_key = "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEA30+wt7OlUB/YpmWbTRkxnLG0lKWiV+oupNKj8luXmC5jvOFT\nUejt1pQhpA47nCqywlOAfk2N8hJWTyJZUmKU+DWVV2So2B/obYxpiiyWF2tcF/cY\n\ni1kBYeAIu5JkVFwDe4ITK/oQUFEhIn3Qg/oCMQ2985/MTdCXONgnbmePU64GrJwf\nvOeJcQB3VIL1BBfISj4pPw5708qTRv5MJBOOjLKRM68KXC5us4879IrSA77NQr1K\nwjGnQlykyCgGvvgwgrUTd5c/dH8EKrZVcFi6ytM66P/1CTpk1YpbI4gqiG0HBbuX\nG4JRIjyzW4GT4JXeSjgvrkIYL8k/M4Az1WEc2wIDAQABAoIBAGQznukfG/uS/qTT\njNcQifl0p8HXfLwUIa/lsJkMTj6D+k8DkF59tVMGjv3NQSQ26JVX4J1L8XiAj+fc\nUtYr1Ap4CLX5PeYUkzesvKK6lPKXQvCh+Ip2eq9PVrvL2WcdDpb5695cy7suXD7c\n05aUtS0LrINH3eXAxkpEe5UHtQFni5YLrCLEXd+SSA3OKdCB+23HRELc1iCTvqjK\n5AtR916uHTBhtREHRMvWIdu4InRUsedlJhaJOLJ8G8r64JUtfm3wLUK1U8HFOsd0\nLAx9ZURU6cXl4osTWiy1vigGaM8Xuish2HkOLNYZADDUiDBB3SshmW5IDAJ5XTn5\nqVrszRECgYEA79j1y+WLTyV7yz7XkWk3OqoQXG4b2JfKItJI1M95UwllzQ8U/krM\n+QZjP3NTtB9i1YoHyaEfic103hV9Fkgz8jvKS5ocLGJulpN4CgqbHN6v9EJ3dqTk\no6X8mpx2eP2E0ngRekFyC/OCp0Zhe2KR9PXhijMa5eB2LTeCMIS/tzkCgYEA7lmk\nIdVjcpfqY7UFJ2R8zqPJHOne2+llrl9vzo6N5kx4DzAg7MP6XO9MekOvfmD1X1Lm\nFckXWFEF+0TlN5YvCTR/+OmVufYM3xp4GBT8RZdLFbyI4+xpAAeSC4SeM0ZkC9Jt\nrKqCS24+Kqy/+qSqtkxiPLQrXSdCSfCUlmn0ALMCgYBB7SLy3q+CG82BOk7Km18g\n8un4XhOtX1uiYqa+SCETH/wpd0HP/AOHV6gkIrEZS59BDuXBGFaw7BZ5jPKLE2Gj\n7adXTI797Dh1jydpqyyjrNo0i6iGpiBqkw9x+Bvged7ucy5qql6MxmxdSk01Owzf\nhk5uTEnScfZJy34vk+2WkQKBgBXx5uy+iuN4HTqE5i6UT/FunwusdLpmqNf/LXol\nIed8TumHEuD5wklgNvhi1vuZzb2zEkAbPa0B+L0DwN73UulUDhxK1WBDyTeZZklB\nVWDK5zzfGPNzRs+b4tRwp2gtKPT1sOde45QyWELxmNNo6dbS/ZB9Pijbfnz0S5n1\ns2OFAoGBAJUohI1+d2hKlkSUzpCorQarDe8lFVEbGMu0kX0JNDI7QU+H8vDp9NOl\nGqLm3sCVBYypT8sWfchgZpcVaLRLQCQtWy4+CbMN6DT3j/uBWeDpayU5Gvqt0/no\nvwqbG6b0NEYLRPLEdsS/c8TV9mMlvb0EW+GXfmkpTrTNt3hyXniu\n-----END RSA PRIVATE KEY-----"
270+
public_certificate = "-----BEGIN CERTIFICATE-----\nMIIC9jCCAd4CCQD2rPUVJETHGzANBgkqhkiG9w0BAQsFADA9MQswCQYDVQQGEwJV\nUzELMAkGA1UECAwCV0ExEDAOBgNVBAcMB1NlYXR0bGUxDzANBgNVBAoMBk9yYWNs\nZTAeFw0xOTAxMTcyMjU4MDVaFw0yMTAxMTYyMjU4MDVaMD0xCzAJBgNVBAYTAlVT\nMQswCQYDVQQIDAJXQTEQMA4GA1UEBwwHU2VhdHRsZTEPMA0GA1UECgwGT3JhY2xl\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA30+wt7OlUB/YpmWbTRkx\nnLG0lKWiV+oupNKj8luXmC5jvOFTUejt1pQhpA47nCqywlOAfk2N8hJWTyJZUmKU\n+DWVV2So2B/obYxpiiyWF2tcF/cYi1kBYeAIu5JkVFwDe4ITK/oQUFEhIn3Qg/oC\nMQ2985/MTdCXONgnbmePU64GrJwfvOeJcQB3VIL1BBfISj4pPw5708qTRv5MJBOO\njLKRM68KXC5us4879IrSA77NQr1KwjGnQlykyCgGvvgwgrUTd5c/dH8EKrZVcFi6\nytM66P/1CTpk1YpbI4gqiG0HBbuXG4JRIjyzW4GT4JXeSjgvrkIYL8k/M4Az1WEc\n2wIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQAuI53m8Va6EafDi6GQdQrzNNQFCAVQ\nxIABAB0uaSYCs3H+pqTktHzOrOluSUEogXRl0UU5/OuvxAz4idA4cfBdId4i7AcY\nqZsBjA/xqH/rxR3pcgfaGyxQzrUsJFf0ZwnzqYJs7fUvuatHJYi/cRBxrKR2+4Oj\nlUbb9TSmezlzHK5CaD5XzN+lZqbsSvN3OQbOryJCbtjZVQFGZ1SmL6OLrwpbBKuP\nn2ob+gaP57YSzO3zk1NDXMlQPHRsdSOqocyKx8y+7J0g6MqPvBzIe+wI3QW85MQY\nj1/IHmj84LNGp7pHCyiYx/oI+00gRch04H2pJv0TP3sAQ37gplBwDrUo\n-----END CERTIFICATE-----"
271+
272+
lifecycle {
273+
create_before_destroy = true
274+
}
275+
}
276+
277+
resource "oci_load_balancer_listener" "load_balancer_listener1" {
278+
load_balancer_id = "${oci_load_balancer.free_load_balancer.id}"
279+
name = "https"
280+
default_backend_set_name = "${oci_load_balancer_backend_set.free_load_balancer_backend_set.name}"
281+
port = 443
282+
protocol = "HTTP"
283+
284+
ssl_configuration {
285+
certificate_name = "${oci_load_balancer_certificate.load_balancer_certificate.certificate_name}"
286+
verify_peer_certificate = false
287+
}
288+
}
289+
290+
output "lb_public_ip" {
291+
value = ["${oci_load_balancer.free_load_balancer.ip_address_details}"]
292+
}
293+
294+
data "oci_core_vnic_attachments" "app_vnics" {
295+
compartment_id = "${var.compartment_ocid}"
296+
availability_domain = "${data.oci_identity_availability_domain.ad.name}"
297+
instance_id = "${oci_core_instance.free_instance0.id}"
298+
}
299+
300+
data "oci_core_vnic" "app_vnic" {
301+
vnic_id = "${lookup(data.oci_core_vnic_attachments.app_vnics.vnic_attachments[0], "vnic_id")}"
302+
}
303+
304+
data "oci_core_images" "test_images" {
305+
#Required
306+
compartment_id = "${var.compartment_ocid}"
307+
308+
#Optional
309+
shape = "VM.Standard.E2.1.Micro"
310+
}
311+
312+
output "app" {
313+
value = "http://${data.oci_core_vnic.app_vnic.public_ip_address}"
314+
}
315+
316+
data "oci_database_autonomous_databases" "test_autonomous_databases" {
317+
#Required
318+
compartment_id = "${var.compartment_ocid}"
319+
320+
#Optional
321+
db_workload = "OLTP"
322+
is_free_tier = "true"
323+
}
324+
325+
resource "oci_database_autonomous_database" "test_autonomous_database" {
326+
#Required
327+
admin_password = "Testalwaysfree1"
328+
compartment_id = "${var.compartment_ocid}"
329+
cpu_core_count = "1"
330+
data_storage_size_in_tbs = "1"
331+
db_name = "testadb"
332+
333+
#Optional
334+
db_workload = "OLTP"
335+
display_name = "test_autonomous_database"
336+
337+
freeform_tags = {
338+
"Department" = "Finance"
339+
}
340+
341+
is_auto_scaling_enabled = "false"
342+
license_model = "LICENSE_INCLUDED"
343+
is_free_tier = "true"
344+
}

examples/compute/image/image.tf

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ variable "private_key_path" {}
1515
variable "region" {}
1616
variable "compartment_ocid" {}
1717
variable "ssh_public_key" {}
18+
variable "shape" {}
1819

1920
variable "instance_image_ocid" {
2021
type = "map"
@@ -68,6 +69,12 @@ resource "oci_core_image" "custom_image" {
6869
}
6970
}
7071

72+
resource "oci_core_shape_management" "compatible_shape" {
73+
compartment_id = "${var.compartment_ocid}"
74+
image_id = "${oci_core_image.custom_image.id}"
75+
shape_name = "${var.shape}"
76+
}
77+
7178
resource "oci_core_vcn" "test_vcn" {
7279
cidr_block = "10.1.0.0/16"
7380
compartment_id = "${var.compartment_ocid}"

0 commit comments

Comments
 (0)