Skip to content

Commit 60ab0af

Browse files
Terraform Team Automationjotruon
authored andcommitted
Added - Support for OCI Digital Media Services
1 parent 4323b27 commit 60ab0af

File tree

83 files changed

+11992
-0
lines changed

Some content is hidden

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

83 files changed

+11992
-0
lines changed

examples/media_services/common.tf

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
// Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
2+
// Licensed under the Mozilla Public License v2.0
3+
4+
5+
variable "tenancy_ocid" {}
6+
7+
variable "user_ocid" {}
8+
9+
variable "fingerprint" {}
10+
11+
variable "private_key_path" {}
12+
13+
variable "region" {}
14+
15+
variable "compartment_id" {}
16+
17+
provider "oci" {
18+
tenancy_ocid = var.tenancy_ocid
19+
user_ocid = var.user_ocid
20+
fingerprint = var.fingerprint
21+
private_key_path = var.private_key_path
22+
region = var.region
23+
}
24+
25+
variable "media_asset_state" {
26+
default = "ACTIVE"
27+
}
28+
29+
variable "media_asset_type" {
30+
default = "AUDIO"
31+
}
32+
33+
variable "defined_tags_value" {
34+
default = "value"
35+
}
36+
37+
variable "display_name" {
38+
default = "displayName"
39+
}
40+
41+
variable "freeform_tags" {
42+
default = { "bar-key" = "value" }
43+
}
44+
45+
variable "id" {
46+
default = "id"
47+
}
48+
49+
variable "active_state" {
50+
default = "ACTIVE"
51+
}
52+
53+
variable "accepted_state" {
54+
default = "ACCEPTED"
55+
}
56+
57+
resource "oci_identity_tag_namespace" "tag-namespace1" {
58+
compartment_id = var.tenancy_ocid
59+
description = "example tag namespace"
60+
name = "examples-tag-namespace-all"
61+
is_retired = false
62+
}
63+
64+
resource "oci_identity_tag" "tag1" {
65+
description = "example tag"
66+
name = "example-tag"
67+
tag_namespace_id = oci_identity_tag_namespace.tag-namespace1.id
68+
is_cost_tracking = false
69+
is_retired = false
70+
}
71+
72+
variable "kms_vault_id" {}
73+
74+
data "oci_kms_vault" "test_vault" {
75+
#Required
76+
vault_id = var.kms_vault_id
77+
}
78+
79+
data "oci_kms_keys" "test_keys_dependency_RSA" {
80+
#Required
81+
compartment_id = var.tenancy_ocid
82+
management_endpoint = data.oci_kms_vault.test_vault.management_endpoint
83+
algorithm = "RSA"
84+
85+
filter {
86+
name = "state"
87+
values = ["ENABLED", "UPDATING"]
88+
}
89+
}
90+
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Overview
2+
This is a Terraform configuration that creates the Media service on Oracle Cloud Infrastructure.
3+
4+
The Terraform code is used to create a Resource Manager stack, that creates the required resources and configures the application on the created resources.
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
// Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
2+
// Licensed under the Mozilla Public License v2.0
3+
4+
5+
variable "media_asset_bucket" {
6+
default = "bucket"
7+
}
8+
9+
variable "media_asset_media_asset_tags_type" {
10+
default = "USER"
11+
}
12+
13+
variable "media_asset_media_asset_tags_value" {
14+
default = "value"
15+
}
16+
17+
variable "media_asset_metadata_metadata" {
18+
default = "{\"some\":\"json\"}"
19+
}
20+
21+
variable "media_asset_namespace" {
22+
default = "namespace"
23+
}
24+
25+
variable "media_asset_object" {
26+
default = "object"
27+
}
28+
29+
variable "media_asset_object_etag" {
30+
default = "objectEtag"
31+
}
32+
33+
variable "media_asset_segment_range_end_index" {
34+
default = 10
35+
}
36+
37+
variable "media_asset_segment_range_start_index" {
38+
default = 10
39+
}
40+
41+
variable "media_asset_source_media_workflow_version" {
42+
default = 10
43+
}
44+
45+
resource "oci_media_services_media_asset" "test_media_asset" {
46+
#Required
47+
compartment_id = var.compartment_id
48+
type = var.media_asset_type
49+
50+
#Optional
51+
bucket = var.media_asset_bucket
52+
defined_tags = map("${oci_identity_tag_namespace.tag-namespace1.name}.${oci_identity_tag.tag1.name}", "${var.defined_tags_value}")
53+
display_name = var.display_name
54+
freeform_tags = var.freeform_tags
55+
media_asset_tags {
56+
#Required
57+
value = var.media_asset_media_asset_tags_value
58+
59+
#Optional
60+
type = var.media_asset_media_asset_tags_type
61+
}
62+
media_workflow_job_id = oci_media_services_media_workflow_job.test_media_workflow_job.id
63+
metadata {
64+
#Required
65+
metadata = var.media_asset_metadata_metadata
66+
}
67+
namespace = var.media_asset_namespace
68+
object = var.media_asset_object
69+
object_etag = var.media_asset_object_etag
70+
segment_range_end_index = var.media_asset_segment_range_end_index
71+
segment_range_start_index = var.media_asset_segment_range_start_index
72+
source_media_workflow_id = oci_media_services_media_workflow.test_media_workflow.id
73+
source_media_workflow_version = var.media_asset_source_media_workflow_version
74+
}
75+
76+
data "oci_media_services_media_assets" "test_media_assets" {
77+
78+
#Optional
79+
bucket = var.media_asset_bucket
80+
compartment_id = var.compartment_id
81+
display_name = var.display_name
82+
media_workflow_job_id = oci_media_services_media_workflow_job.test_media_workflow_job.id
83+
object = var.media_asset_object
84+
source_media_workflow_id = oci_media_services_media_workflow.test_media_workflow.id
85+
source_media_workflow_version = var.media_asset_source_media_workflow_version
86+
state = var.media_asset_state
87+
type = var.media_asset_type
88+
}
89+
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
// Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
2+
// Licensed under the Mozilla Public License v2.0
3+
4+
5+
variable "media_asset_distribution_channel_attachment_channel_id" {
6+
default = "//"
7+
}
8+
9+
data "oci_media_services_media_asset_distribution_channel_attachment" "test_media_asset_distribution_channel_attachment" {
10+
#Required
11+
media_asset_id = oci_media_services_media_asset.test_media_asset.id
12+
distribution_channel_id = var.media_asset_distribution_channel_attachment_channel_id
13+
}
14+
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
// Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
2+
// Licensed under the Mozilla Public License v2.0
3+
4+
5+
variable "media_workflow_media_workflow_configuration_ids" {
6+
default = []
7+
}
8+
9+
variable "media_workflow_parameters" {
10+
default = "{\"inputs\":{\"namespace\":\"namespace\"}}"
11+
}
12+
13+
variable "media_workflow_tasks_enable_parameter_reference" {}
14+
15+
variable "media_workflow_tasks_key" {
16+
default = "move"
17+
}
18+
19+
variable "media_workflow_tasks_parameters" {
20+
default = "{\"taskParameters\":[{\"bucketName\":\"inputBucket\",\"namespaceName\":\"namespaceName\",\"objectName\":\"$${/videos/inputObject}\",\"storageType\":\"objectStorage\",\"target\":\"video.mp4\"}]}"
21+
}
22+
23+
variable "media_workflow_tasks_prerequisites" {
24+
default = []
25+
}
26+
27+
variable "media_workflow_tasks_type" {
28+
default = "getFiles"
29+
}
30+
31+
variable "media_workflow_tasks_version" {
32+
default = 1
33+
}
34+
35+
resource "oci_media_services_media_workflow" "test_media_workflow" {
36+
#Required
37+
compartment_id = var.compartment_id
38+
display_name = var.display_name
39+
40+
#Optional
41+
defined_tags = map("${oci_identity_tag_namespace.tag-namespace1.name}.${oci_identity_tag.tag1.name}", "${var.defined_tags_value}")
42+
freeform_tags = var.freeform_tags
43+
media_workflow_configuration_ids = var.media_workflow_media_workflow_configuration_ids
44+
parameters = var.media_workflow_parameters
45+
tasks {
46+
#Required
47+
key = var.media_workflow_tasks_key
48+
parameters = var.media_workflow_tasks_parameters
49+
type = var.media_workflow_tasks_type
50+
version = var.media_workflow_tasks_version
51+
52+
#Optional
53+
enable_parameter_reference = var.media_workflow_tasks_enable_parameter_reference
54+
prerequisites = var.media_workflow_tasks_prerequisites
55+
}
56+
}
57+
58+
data "oci_media_services_media_workflows" "test_media_workflows" {
59+
60+
#Optional
61+
compartment_id = var.compartment_id
62+
display_name = var.display_name
63+
id = var.id
64+
state = var.active_state
65+
}
66+
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
2+
// Licensed under the Mozilla Public License v2.0
3+
4+
5+
variable "media_workflow_configuration_parameters" {
6+
default = "{\"storage\":{\"inputbucket\":\"myinputbucket\",\"outputbucket\":\"myoutputBucket\"}}"
7+
}
8+
9+
resource "oci_media_services_media_workflow_configuration" "test_media_workflow_configuration" {
10+
#Required
11+
compartment_id = var.compartment_id
12+
display_name = var.display_name
13+
parameters = var.media_workflow_configuration_parameters
14+
15+
#Optional
16+
defined_tags = map("${oci_identity_tag_namespace.tag-namespace1.name}.${oci_identity_tag.tag1.name}", "${var.defined_tags_value}")
17+
freeform_tags = var.freeform_tags
18+
}
19+
20+
data "oci_media_services_media_workflow_configurations" "test_media_workflow_configurations" {
21+
22+
#Optional
23+
compartment_id = var.compartment_id
24+
display_name = var.display_name
25+
id = var.id
26+
state = var.active_state
27+
}
28+
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
// Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
2+
// Licensed under the Mozilla Public License v2.0
3+
4+
5+
variable "media_workflow_job_media_workflow_configuration_ids" {
6+
default = []
7+
}
8+
9+
variable "media_workflow_job_parameters" {
10+
default = "{\"videos\":{\"inputObject\":\"inputObject.mp4\",\"outputObject\":\"outputObject.mp4\"}}"
11+
}
12+
13+
variable "media_workflow_job_workflow_identifier_type" {
14+
default = "ID"
15+
}
16+
17+
resource "oci_media_services_media_workflow_job" "test_media_workflow_job" {
18+
#Required
19+
compartment_id = var.compartment_id
20+
workflow_identifier_type = var.media_workflow_job_workflow_identifier_type
21+
22+
#Optional
23+
defined_tags = map("${oci_identity_tag_namespace.tag-namespace1.name}.${oci_identity_tag.tag1.name}", "${var.defined_tags_value}")
24+
display_name = var.display_name
25+
freeform_tags = var.freeform_tags
26+
media_workflow_configuration_ids = [oci_media_services_media_workflow_configuration.test_media_workflow_configuration.id]
27+
media_workflow_id = oci_media_services_media_workflow.test_media_workflow.id
28+
media_workflow_name = oci_media_services_media_workflow.test_media_workflow.display_name
29+
parameters = var.media_workflow_job_parameters
30+
}
31+
32+
data "oci_media_services_media_workflow_jobs" "test_media_workflow_jobs" {
33+
34+
#Optional
35+
compartment_id = var.compartment_id
36+
display_name = var.display_name
37+
id = var.id
38+
media_workflow_id = oci_media_services_media_workflow.test_media_workflow.id
39+
state = var.accepted_state
40+
}
41+
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
// Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
2+
// Licensed under the Mozilla Public License v2.0
3+
4+
5+
variable "media_workflow_job_fact_key" {
6+
default = "key"
7+
}
8+
9+
variable "media_workflow_job_fact_type" {
10+
default = "runnableJob"
11+
}
12+
13+
data "oci_media_services_media_workflow_job_facts" "test_media_workflow_job_facts" {
14+
#Required
15+
media_workflow_job_id = oci_media_services_media_workflow_job.test_media_workflow_job.id
16+
17+
#Optional
18+
key = var.media_workflow_job_fact_key
19+
type = var.media_workflow_job_fact_type
20+
}
21+
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
// Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
2+
// Licensed under the Mozilla Public License v2.0
3+
4+
5+
variable "media_workflow_task_declaration_is_current" {
6+
default = false
7+
}
8+
9+
variable "media_workflow_task_declaration_name" {
10+
default = "name"
11+
}
12+
13+
variable "media_workflow_task_declaration_version" {
14+
default = 10
15+
}
16+
17+
data "oci_media_services_media_workflow_task_declaration" "test_media_workflow_task_declaration" {
18+
19+
#Optional
20+
compartment_id = var.compartment_id
21+
is_current = var.media_workflow_task_declaration_is_current
22+
name = var.media_workflow_task_declaration_name
23+
version = var.media_workflow_task_declaration_version
24+
}
25+

0 commit comments

Comments
 (0)