Skip to content

Commit bd736bb

Browse files
authored
Releasing version 4.21.0
Releasing version 4.21.0
2 parents 21be553 + b5e7130 commit bd736bb

File tree

237 files changed

+10376
-472
lines changed

Some content is hidden

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

237 files changed

+10376
-472
lines changed

CHANGELOG.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,19 @@
1+
## 4.21.0 (Unreleased)
2+
3+
### Added
4+
- Support for Container Image Signing
5+
- Support for Scheduled Compute Instance Suspension
6+
- Support for KMS Cross Region Replication
7+
- Support for Casper - Enhancing PARs
8+
- Support for ExaCC | Software Images
9+
- Support for Cross-region asynchronous volume replication
10+
- Support for Compute DVH E3 shape added
11+
- Support for Container Engine Image Signing and Deploy Authorization
12+
- Support for `routing_policy` added to `virtual_circuit` resource
13+
14+
### Notes
15+
- The OCI Terraform provider no longer automatically retries operations after receiving an HTTP 404 error. If your Terraform configurations expect automatic retries in this scenario, you should update them accordingly.
16+
117
## 4.20.0 (March 31, 2021)
218

319
### Added
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"description":"${description}","imageDigest":"${digest}","kmsKeyId":"${kms_key_id}","kmsKeyVersionId":"${kms_key_version_id}","metadata":"${metadata}","region":"${region}","repositoryName":"${repository_name}","signingAlgorithm":"${signing_algorithm}"}
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
// Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
2+
// Licensed under the Mozilla Public License v2.0
3+
4+
variable "tenancy_ocid" {}
5+
variable "user_ocid" {}
6+
variable "fingerprint" {}
7+
variable "private_key_path" {}
8+
variable "region" {}
9+
variable "compartment_ocid" {}
10+
11+
provider "oci" {
12+
tenancy_ocid = var.tenancy_ocid
13+
user_ocid = var.user_ocid
14+
fingerprint = var.fingerprint
15+
private_key_path = var.private_key_path
16+
region = var.region
17+
}
18+
19+
variable "container_image_signature_compartment_id_in_subtree" {}
20+
21+
// specify the container image to upload to
22+
variable "container_image_id" {}
23+
24+
// specify the management endpoint for the key
25+
variable "crypto_endpoint" {}
26+
27+
// specify the kms key to sign the message
28+
variable "kms_rsa_key_id" {}
29+
30+
// specify the kms key version to sign the message
31+
variable "kms_rsa_key_version_id" {}
32+
33+
// the algorithm to sign with the key
34+
variable "kms_signing_algorithm" {}
35+
36+
// user inputted description to include in the signature
37+
variable "description" {}
38+
39+
// user defined a json string to include in the signature (eg. use escape character for the key/value string)
40+
// ex. "{\\\"buildNumber\\\":\\\"123\\\"}"
41+
variable "metadata" {}
42+
43+
data "oci_artifacts_container_image" "test_container_image" {
44+
image_id = var.container_image_id
45+
}
46+
47+
output "oci_test_container_image" {
48+
value = data.oci_artifacts_container_image.test_container_image.repository_name
49+
}
50+
51+
locals {
52+
message = templatefile("./artifacts_container_image_signature_message_json.tmpl", {
53+
"description" = var.description
54+
"digest" = data.oci_artifacts_container_image.test_container_image.digest
55+
"kms_key_id" = var.kms_rsa_key_id
56+
"kms_key_version_id" = var.kms_rsa_key_version_id
57+
"metadata" = var.metadata
58+
"region" = var.region
59+
"repository_name" = data.oci_artifacts_container_image.test_container_image.repository_name
60+
"signing_algorithm" = var.kms_signing_algorithm
61+
})
62+
}
63+
64+
resource "oci_kms_sign" "test_sign" {
65+
crypto_endpoint = var.crypto_endpoint
66+
key_id = var.kms_rsa_key_id
67+
message = base64encode(local.message)
68+
signing_algorithm = var.kms_signing_algorithm
69+
70+
key_version_id = var.kms_rsa_key_version_id
71+
message_type = "RAW"
72+
}
73+
74+
resource "oci_artifacts_container_image_signature" "test_container_image_signature" {
75+
#Required
76+
compartment_id = var.compartment_ocid
77+
image_id = var.container_image_id
78+
kms_key_id = var.kms_rsa_key_id
79+
kms_key_version_id = var.kms_rsa_key_version_id
80+
message = base64encode(local.message)
81+
signature = oci_kms_sign.test_sign.signature
82+
signing_algorithm = var.kms_signing_algorithm
83+
}
84+
85+
data "oci_artifacts_container_image_signatures" "test_container_image_signatures" {
86+
#Required
87+
compartment_id = var.compartment_ocid
88+
89+
#Optional
90+
compartment_id_in_subtree = var.container_image_signature_compartment_id_in_subtree
91+
image_id = var.container_image_id
92+
kms_key_id = var.kms_rsa_key_id
93+
}

examples/autoscaling/compute.tf

Lines changed: 41 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,19 @@ resource "oci_core_instance_pool" "TFInstancePoolForScheduledPolicy" {
8282
}
8383
}
8484

85+
resource "oci_core_instance_pool" "TFInstancePoolForScheduledPolicyResourceAction" {
86+
compartment_id = var.compartment_ocid
87+
instance_configuration_id = oci_core_instance_configuration.TFInstanceConfiguration.id
88+
size = 1
89+
state = "RUNNING"
90+
display_name = "TFInstancePoolResourceAction"
91+
92+
placement_configurations {
93+
availability_domain = data.oci_identity_availability_domain.AD.name
94+
primary_subnet_id = oci_core_subnet.ExampleSubnet.id
95+
}
96+
}
97+
8598
resource "oci_autoscaling_auto_scaling_configuration" "TFAutoScalingConfiguration" {
8699
compartment_id = var.compartment_ocid
87100
cool_down_in_seconds = "300"
@@ -90,7 +103,7 @@ resource "oci_autoscaling_auto_scaling_configuration" "TFAutoScalingConfiguratio
90103

91104
policies {
92105
capacity {
93-
initial = "4"
106+
initial = "2"
94107
max = "4"
95108
min = "2"
96109
}
@@ -111,7 +124,7 @@ resource "oci_autoscaling_auto_scaling_configuration" "TFAutoScalingConfiguratio
111124

112125
threshold {
113126
operator = "GT"
114-
value = "1"
127+
value = "90"
115128
}
116129
}
117130
}
@@ -170,3 +183,29 @@ resource "oci_autoscaling_auto_scaling_configuration" "TFAutoScalingConfiguratio
170183
}
171184
}
172185

186+
resource "oci_autoscaling_auto_scaling_configuration" "TFAutoScalingConfigurationScheduledPolicyResourceAction" {
187+
compartment_id = var.compartment_ocid
188+
cool_down_in_seconds = "300"
189+
display_name = "TFAutoScalingConfigurationScheduledPolicyResourceAction"
190+
is_enabled = "true"
191+
192+
policies {
193+
resource_action {
194+
action = "STOP"
195+
action_type = "power"
196+
}
197+
display_name = "TFScheduledPolicyResourceAction"
198+
policy_type = "scheduled"
199+
200+
execution_schedule {
201+
expression = "0 15 10 ? * *"
202+
timezone = "UTC"
203+
type = "cron"
204+
}
205+
}
206+
207+
auto_scaling_resources {
208+
id = oci_core_instance_pool.TFInstancePoolForScheduledPolicyResourceAction.id
209+
type = "instancePool"
210+
}
211+
}

examples/autoscaling/datasources.tf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ data "oci_autoscaling_auto_scaling_configuration" "TFAutoScalingConfigurationSch
4949
auto_scaling_configuration_id = oci_autoscaling_auto_scaling_configuration.TFAutoScalingConfigurationScheduledPolicy.id
5050
}
5151

52+
data "oci_autoscaling_auto_scaling_configuration" "TFAutoScalingConfigurationScheduledPolicyResourceActionDatasource" {
53+
auto_scaling_configuration_id = oci_autoscaling_auto_scaling_configuration.TFAutoScalingConfigurationScheduledPolicyResourceAction.id
54+
}
55+
5256
data "oci_autoscaling_auto_scaling_configurations" "TFAutoScalingConfigurationDatasources" {
5357
compartment_id = var.compartment_ocid
5458
display_name = "TFAutoScalingConfiguration"

examples/container_engine/main.tf

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,10 @@ variable "node_pool_ssh_public_key" {
2525

2626
}
2727

28+
variable "kms_vault_id" {
29+
30+
}
31+
2832
provider "oci" {
2933
region = var.region
3034
tenancy_ocid = var.tenancy_ocid
@@ -43,6 +47,23 @@ data "oci_identity_availability_domain" "ad2" {
4347
ad_number = 2
4448
}
4549

50+
data "oci_kms_vault" "test_vault" {
51+
#Required
52+
vault_id = var.kms_vault_id
53+
}
54+
55+
data "oci_kms_keys" "test_keys_dependency_RSA" {
56+
#Required
57+
compartment_id = var.tenancy_ocid
58+
management_endpoint = data.oci_kms_vault.test_vault.management_endpoint
59+
algorithm = "RSA"
60+
61+
filter {
62+
name = "state"
63+
values = ["ENABLED", "UPDATING"]
64+
}
65+
}
66+
4667
resource "oci_core_vcn" "test_vcn" {
4768
cidr_block = "10.0.0.0/16"
4869
compartment_id = var.compartment_ocid
@@ -126,6 +147,14 @@ resource "oci_containerengine_cluster" "test_cluster" {
126147
name = "tfTestCluster"
127148
vcn_id = oci_core_vcn.test_vcn.id
128149

150+
#Optional
151+
image_policy_config {
152+
is_policy_enabled = "true"
153+
key_details {
154+
kms_key_id = data.oci_kms_keys.test_keys_dependency_RSA.keys[0].id
155+
}
156+
}
157+
129158
#Optional
130159
options {
131160
service_lb_subnet_ids = [oci_core_subnet.clusterSubnet_1.id, oci_core_subnet.clusterSubnet_2.id]

examples/kms/data_sources.tf

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,21 @@ data "oci_core_volumes" "test_volumes" {
4343
}
4444
}
4545

46+
// Get replication status of a vault.
47+
// Currently only support virtual private vault.
48+
/*data "oci_kms_replication_status" "test_replication_status" {
49+
# Required
50+
management_endpoint = data.oci_kms_vault.test_vault.management_endpoint
51+
replication_id = data.oci_kms_vault.test_vault.replica_details[0].replication_id
52+
}*/
53+
54+
// List replicas of a vault.
55+
// Currently only support virtual private vault.
56+
/*data "oci_kms_vault_replicas" "test_vault_replicas" {
57+
# Required
58+
vault_id = data.oci_kms_vault.test_vault.id
59+
}*/
60+
4661
//bucket object details where key was backed up
4762
/*data "oci_objectstorage_object" "key_backup_object" {
4863
#Required

examples/kms/variables.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,18 @@ variable "private_key_path" {
1616
variable "region" {
1717
}
1818

19+
variable "destination_region" {
20+
}
21+
1922
variable "compartment_id" {
2023
}
2124

2225
variable "vault_id" {
2326
}
2427

28+
variable "key_id" {
29+
}
30+
2531
variable "key_display_name" {
2632
default = "Key C"
2733
}

examples/kms/vault.tf

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,12 @@ resource "oci_kms_vault" "private-vault-kms" {
3333
//restore_trigger = var.vault_restore_trigger
3434
}
3535

36+
// Use oci_kms_vault_replication to create, update and delete a replica of a vault.
37+
// Currently only support virtual private vault.
38+
39+
/*resource "oci_kms_vault_replication" "test_replica" {
40+
# Required
41+
vault_id = data.oci_kms_vault.test_vault.id
42+
replica_region = var.destination_region
43+
}*/
44+

examples/object_storage/preauthrequest.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ resource "oci_objectstorage_preauthrequest" "bucket_par" {
99
namespace = data.oci_objectstorage_namespace.ns.namespace
1010
bucket = oci_objectstorage_bucket.bucket1.name
1111
name = "parOnBucket"
12-
access_type = "AnyObjectWrite" //Other configurations accepted are ObjectWrite, ObjectReadWrite
12+
access_type = "AnyObjectWrite" //Other configurations accepted are ObjectWrite, ObjectRead, ObjectReadWrite, AnyObjectRead, AnyObjectReadWrite,
1313
time_expires = "2021-12-10T23:00:00Z"
1414
}
1515

@@ -18,7 +18,7 @@ resource "oci_objectstorage_preauthrequest" "object_par" {
1818
bucket = oci_objectstorage_bucket.bucket1.name
1919
object = oci_objectstorage_object.object1.object
2020
name = "objectPar"
21-
access_type = "ObjectRead" // ObjectRead, ObjectWrite, ObjectReadWrite, AnyObjectWrite
21+
access_type = "ObjectRead"
2222
time_expires = "2021-12-29T23:00:00Z"
2323
}
2424

0 commit comments

Comments
 (0)