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 Google Transcoder API #10932

Merged
merged 6 commits into from
Oct 15, 2024

Conversation

bschaatsbergen
Copy link
Contributor

@bschaatsbergen bschaatsbergen commented Jun 10, 2024

Closes #18328

If this PR is for Terraform, I acknowledge that I have:

  • Searched through the issue tracker for an open issue that this either resolves or contributes to, commented on it to claim it, and written "fixes {url}" or "part of {url}" in this PR description. If there were no relevant open issues, I opened one and commented that I would like to work on it (not necessary for very small changes).
  • Generated Terraform, and ran make test and make lint to ensure it passes unit and linter tests.
  • Ensured that all new fields I added that can be set by a user appear in at least one example (for generated resources) or third_party test (for handwritten resources or update tests).
  • Ran relevant acceptance tests (If the acceptance tests do not yet pass or you are unable to run them, please let your reviewer know).
  • Read the Release Notes Guide before writing my release note below.

Release Note Template for Downstream PRs (will be copied)

`google_transcoder_job`
`google_transcoder_job_template`

Tests:

 $ make testacc TEST=./google/services/transcoder TESTARGS='-run=TestAccTranscoderJob'
TF_ACC=1 TF_SCHEMA_PANIC_ON_ERROR=1 go test ./google/services/transcoder -v -run=TestAccTranscoderJob -timeout 240m -ldflags="-X=github.com/hashicorp/terraform-provider-google/version.ProviderVersion=acc"
=== RUN   TestAccTranscoderJob_transcoderJobBasicExample
=== PAUSE TestAccTranscoderJob_transcoderJobBasicExample
=== RUN   TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample
=== PAUSE TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample
=== RUN   TestAccTranscoderJobTemplate_transcoderJobTemplateOverlaysExample
=== PAUSE TestAccTranscoderJobTemplate_transcoderJobTemplateOverlaysExample
=== RUN   TestAccTranscoderJobTemplate_transcoderJobTemplateEncryptionsExample
=== PAUSE TestAccTranscoderJobTemplate_transcoderJobTemplateEncryptionsExample
=== RUN   TestAccTranscoderJobTemplate_transcoderJobTemplatePubsubExample
=== PAUSE TestAccTranscoderJobTemplate_transcoderJobTemplatePubsubExample
=== CONT  TestAccTranscoderJob_transcoderJobBasicExample
=== CONT  TestAccTranscoderJobTemplate_transcoderJobTemplateEncryptionsExample
=== CONT  TestAccTranscoderJobTemplate_transcoderJobTemplateOverlaysExample
=== CONT  TestAccTranscoderJobTemplate_transcoderJobTemplatePubsubExample
=== CONT  TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample
--- PASS: TestAccTranscoderJobTemplate_transcoderJobTemplateOverlaysExample (12.78s)
--- PASS: TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample (12.94s)
--- PASS: TestAccTranscoderJobTemplate_transcoderJobTemplateEncryptionsExample (24.99s)
--- PASS: TestAccTranscoderJob_transcoderJobBasicExample (30.70s)
--- PASS: TestAccTranscoderJobTemplate_transcoderJobTemplatePubsubExample (34.65s)
PASS
ok      github.com/hashicorp/terraform-provider-google/google/services/transcoder       36.049s

@modular-magician modular-magician added the awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests label Jun 10, 2024
@BBBmau
Copy link
Collaborator

BBBmau commented Jul 18, 2024

Hi @bschaatsbergen ! Been looking for solutions in regards to the TeamCity Services Diff Check. Something must not be getting ran properly due to the missing provider_dcl_resources.go file. I'll look more into it and get back to you on it.

I've also ran both tests and got the following results:
TestAccTranscoderJob_transcoderJobBasicExample

└─(15:02:23 on main ✹ ✭)──> envchain GCLOUD make testacc TEST=./google/services/transcoder TESTARGS='-run TestAccTranscoderJob_transcoderJobBasicExample'
TF_ACC=1 TF_SCHEMA_PANIC_ON_ERROR=1 go test ./google/services/transcoder -v -run TestAccTranscoderJob_transcoderJobBasicExample -timeout 240m -ldflags="-X=github.com/hashicorp/terraform-provider-google/version.ProviderVersion=acc"
=== RUN   TestAccTranscoderJob_transcoderJobBasicExample
=== PAUSE TestAccTranscoderJob_transcoderJobBasicExample
=== CONT  TestAccTranscoderJob_transcoderJobBasicExample
    vcr_utils.go:152: Step 1/2 error: Error running pre-apply refresh: exit status 1
        
        Error: Missing required argument
        
          on terraform_plugin_test.tf line 12, in resource "google_transcoder_job_template" "default":
          12: resource "google_transcoder_job_template" "default" {
        
        The argument "job_template_id" is required, but no definition was found.
--- FAIL: TestAccTranscoderJob_transcoderJobBasicExample (1.45s)

TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample:

└─(16:42:15 on main ✹ ✭)──> envchain GCLOUD make testacc TEST=./google/services/transcoder TESTARGS='-run TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample'
TF_ACC=1 TF_SCHEMA_PANIC_ON_ERROR=1 go test ./google/services/transcoder -v -run TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample -timeout 240m -ldflags="-X=github.com/hashicorp/terraform-provider-google/version.ProviderVersion=acc"
=== RUN   TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample
=== PAUSE TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample
=== CONT  TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample
    vcr_utils.go:152: Step 1/2 error: Error running pre-apply refresh: exit status 1
        
        Error: Missing required argument
        
          on terraform_plugin_test.tf line 2, in resource "google_transcoder_job_template" "default":
           2: resource "google_transcoder_job_template" "default" {
        
        The argument "job_template_id" is required, but no definition was found.
--- FAIL: TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample (1.44s)
FAIL
FAIL    github.com/hashicorp/terraform-provider-google/google/services/transcoder       2.818s
FAIL
make: *** [testacc] Error 1

Since this is a new service you'll also need to open a separate PR that adds the service into the infra file for ci triggers. An example of this can be seen here: https://github.com/GoogleCloudPlatform/magic-modules/pull/9386/files

@modular-magician modular-magician added awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests and removed awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests labels Jul 26, 2024
@modular-magician
Copy link
Collaborator

Hi there, I'm the Modular magician. I've detected the following information about your changes:

Diff report

Your PR generated some diffs in downstreams - here they are.

google provider: Diff ( 17 files changed, 16207 insertions(+), 2 deletions(-))
google-beta provider: Diff ( 15 files changed, 16197 insertions(+), 2 deletions(-))
terraform-google-conversion: Diff ( 2 files changed, 5162 insertions(+))
Open in Cloud Shell: Diff ( 8 files changed, 376 insertions(+))

Missing test report

Your PR includes resource fields which are not covered by any test.

Resource: google_transcoder_job (1 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_transcoder_job" "primary" {
  batch_mode_priority = # value needed
  config {
    ad_breaks {
      start_time_offset = # value needed
    }
    edit_list {
      end_time_offset   = # value needed
      inputs            = # value needed
      key               = # value needed
      start_time_offset = # value needed
    }
    elementary_streams {
      audio_stream {
        bitrate_bps    = # value needed
        channel_count  = # value needed
        channel_layout = # value needed
        codec          = # value needed
        display_name   = # value needed
        language_code  = # value needed
        mapping {
          atom_key       = # value needed
          gain_db        = # value needed
          input_channel  = # value needed
          input_key      = # value needed
          input_track    = # value needed
          output_channel = # value needed
        }
        sample_rate_hertz = # value needed
      }
      key = # value needed
      text_stream {
        codec         = # value needed
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key    = # value needed
          input_key   = # value needed
          input_track = # value needed
        }
      }
      video_stream {
        h264 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        h265 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        vp9 {
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          width_pixels                   = # value needed
        }
      }
    }
    encryptions {
      id = # value needed
      mpeg_cenc {
        scheme = # value needed
      }
      sample_aes {
        scheme = # value needed
      }
      secret_manager_key_source {
        secret_version = # value needed
      }
    }
    inputs {
      key = # value needed
      preprocessing_config {
        audio {
          lufs = # value needed
        }
        color {
          brightness = # value needed
          contrast   = # value needed
          saturation = # value needed
        }
        crop {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
        deblock {
          enabled  = # value needed
          strength = # value needed
        }
        deinterlace {
          bwdif {
            deinterlace_all_frames = # value needed
            mode                   = # value needed
            parity                 = # value needed
          }
          yadif {
            deinterlace_all_frames      = # value needed
            disable_spatial_interlacing = # value needed
            mode                        = # value needed
            parity                      = # value needed
          }
        }
        denoise {
          strength = # value needed
          tune     = # value needed
        }
        pad {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
      }
      uri = # value needed
    }
    manifests {
      dash {
        segment_reference_scheme = # value needed
      }
      file_name   = # value needed
      mux_streams = # value needed
      type        = # value needed
    }
    mux_streams {
      container          = # value needed
      elementary_streams = # value needed
      encryption_id      = # value needed
      file_name          = # value needed
      fmp4 {
        codec_tag = # value needed
      }
      key = # value needed
      segment_settings {
        individual_segments = # value needed
        segment_duration    = # value needed
      }
    }
    output {
      uri = # value needed
    }
    overlays {
      animations {
        animation_end {
          start_time_offset = # value needed
        }
        animation_fade {
          end_time_offset   = # value needed
          fade_type         = # value needed
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
        animation_static {
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
      }
      image {
        alpha = # value needed
        resolution {
          x = # value needed
          y = # value needed
        }
        uri = # value needed
      }
    }
    pubsub_destination {
      topic = # value needed
    }
    sprite_sheets {
      column_count         = # value needed
      end_time_offset      = # value needed
      file_prefix          = # value needed
      format               = # value needed
      interval             = # value needed
      quality              = # value needed
      row_count            = # value needed
      sprite_height_pixels = # value needed
      sprite_width_pixels  = # value needed
      start_time_offset    = # value needed
      total_count          = # value needed
    }
  }
  error {
    code    = # value needed
    message = # value needed
  }
  input_uri                 = # value needed
  mode                      = # value needed
  optimization              = # value needed
  output_uri                = # value needed
  ttl_after_completion_days = # value needed
}

Resource: google_transcoder_job_template (2 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_transcoder_job_template" "primary" {
  config {
    ad_breaks {
      start_time_offset = # value needed
    }
    edit_list {
      end_time_offset = # value needed
    }
    elementary_streams {
      audio_stream {
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key       = # value needed
          gain_db        = # value needed
          input_channel  = # value needed
          input_key      = # value needed
          input_track    = # value needed
          output_channel = # value needed
        }
      }
      text_stream {
        codec         = # value needed
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key    = # value needed
          input_key   = # value needed
          input_track = # value needed
        }
      }
      video_stream {
        h264 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          enable_two_pass                = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_frame_count                = # value needed
          tune                           = # value needed
        }
        h265 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        vp9 {
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          width_pixels                   = # value needed
        }
      }
    }
    encryptions {
      id = # value needed
      mpeg_cenc {
        scheme = # value needed
      }
      sample_aes {
        scheme = # value needed
      }
      secret_manager_key_source {
        secret_version = # value needed
      }
    }
    inputs {
      preprocessing_config {
        audio {
          lufs = # value needed
        }
        color {
          brightness = # value needed
          contrast   = # value needed
          saturation = # value needed
        }
        crop {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
        deblock {
          enabled  = # value needed
          strength = # value needed
        }
        deinterlace {
          bwdif {
            deinterlace_all_frames = # value needed
            mode                   = # value needed
            parity                 = # value needed
          }
          yadif {
            deinterlace_all_frames      = # value needed
            disable_spatial_interlacing = # value needed
            mode                        = # value needed
            parity                      = # value needed
          }
        }
        denoise {
          strength = # value needed
          tune     = # value needed
        }
        pad {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
      }
      uri = # value needed
    }
    manifests {
      dash {
        segment_reference_scheme = # value needed
      }
      file_name   = # value needed
      mux_streams = # value needed
      type        = # value needed
    }
    mux_streams {
      encryption_id = # value needed
      fmp4 {
        codec_tag = # value needed
      }
      segment_settings {
        individual_segments = # value needed
        segment_duration    = # value needed
      }
    }
    output {
      uri = # value needed
    }
    overlays {
      animations {
        animation_end {
          start_time_offset = # value needed
        }
        animation_fade {
          end_time_offset   = # value needed
          fade_type         = # value needed
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
        animation_static {
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
      }
      image {
        alpha = # value needed
        resolution {
          x = # value needed
          y = # value needed
        }
        uri = # value needed
      }
    }
    pubsub_destination {
      topic = # value needed
    }
    sprite_sheets {
      column_count         = # value needed
      end_time_offset      = # value needed
      file_prefix          = # value needed
      format               = # value needed
      interval             = # value needed
      quality              = # value needed
      row_count            = # value needed
      sprite_height_pixels = # value needed
      sprite_width_pixels  = # value needed
      start_time_offset    = # value needed
      total_count          = # value needed
    }
  }
  job_template_id = # value needed
}

@BBBmau
Copy link
Collaborator

BBBmau commented Jul 26, 2024

for context this commit c5d59a3 removed autogen_async: true since i noticed that both resources don't have operations. Ideally we would include autogen_async: true when operations are expected. This allowed us to have a successful VCR build.

@modular-magician
Copy link
Collaborator

Tests analytics

Total tests: 3879
Passed tests: 3474
Skipped tests: 385
Affected tests: 20

Click here to see the affected service packages

All service packages are affected

Action taken

Found 20 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit. Click here to see the affected tests
  • TestAccAppEngineFlexibleAppVersion_appEngineFlexibleAppVersionExample
  • TestAccAppEngineFlexibleAppVersion_update
  • TestAccAppEngineStandardAppVersion_update
  • TestAccBigqueryConnectionConnection_bigqueryConnectionKmsExample
  • TestAccCloudRunService_cloudRunServiceSqlExample
  • TestAccCloudRunV2Job_cloudrunv2JobSqlExample
  • TestAccCloudRunV2Service_cloudrunv2ServiceSqlExample
  • TestAccDataLossPreventionDiscoveryConfig_Update
  • TestAccDataSourceArtifactRegistryDockerImage
  • TestAccDatabaseMigrationServiceConnectionProfile_databaseMigrationServiceConnectionProfileCloudsqlExample
  • TestAccDatabaseMigrationServiceConnectionProfile_databaseMigrationServiceConnectionProfilePostgresExample
  • TestAccIapAppEngineServiceIamBindingGenerated
  • TestAccIapAppEngineServiceIamBindingGenerated_withCondition
  • TestAccIapAppEngineServiceIamMemberGenerated
  • TestAccIapAppEngineServiceIamMemberGenerated_withCondition
  • TestAccIapAppEngineServiceIamPolicyGenerated
  • TestAccIapAppEngineServiceIamPolicyGenerated_withCondition
  • TestAccNetworkServicesLbRouteExtension_update
  • TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample
  • TestAccTranscoderJob_transcoderJobBasicExample

Get to know how VCR tests work

@modular-magician
Copy link
Collaborator

$\textcolor{green}{\textsf{Tests passed during RECORDING mode:}}$
TestAccBigqueryConnectionConnection_bigqueryConnectionKmsExample[Debug log]
TestAccCloudRunService_cloudRunServiceSqlExample[Debug log]
TestAccCloudRunV2Job_cloudrunv2JobSqlExample[Debug log]
TestAccCloudRunV2Service_cloudrunv2ServiceSqlExample[Debug log]
TestAccDataLossPreventionDiscoveryConfig_Update[Debug log]
TestAccDatabaseMigrationServiceConnectionProfile_databaseMigrationServiceConnectionProfileCloudsqlExample[Debug log]
TestAccDatabaseMigrationServiceConnectionProfile_databaseMigrationServiceConnectionProfilePostgresExample[Debug log]

$\textcolor{green}{\textsf{No issues found for passed tests after REPLAYING rerun.}}$


$\textcolor{red}{\textsf{Tests failed during RECORDING mode:}}$
TestAccAppEngineFlexibleAppVersion_appEngineFlexibleAppVersionExample[Error message] [Debug log]
TestAccAppEngineFlexibleAppVersion_update[Error message] [Debug log]
TestAccAppEngineStandardAppVersion_update[Error message] [Debug log]
TestAccDataSourceArtifactRegistryDockerImage[Error message] [Debug log]
TestAccIapAppEngineServiceIamBindingGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamBindingGenerated_withCondition[Error message] [Debug log]
TestAccIapAppEngineServiceIamMemberGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamMemberGenerated_withCondition[Error message] [Debug log]
TestAccIapAppEngineServiceIamPolicyGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamPolicyGenerated_withCondition[Error message] [Debug log]
TestAccNetworkServicesLbRouteExtension_update[Error message] [Debug log]
TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample[Error message] [Debug log]
TestAccTranscoderJob_transcoderJobBasicExample[Error message] [Debug log]

$\textcolor{red}{\textsf{Errors occurred during RECORDING mode. Please fix them to complete your PR.}}$

View the build log or the debug log for each test

@modular-magician modular-magician added awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests and removed awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests labels Jul 26, 2024
@modular-magician
Copy link
Collaborator

Hi there, I'm the Modular magician. I've detected the following information about your changes:

Diff report

Your PR generated some diffs in downstreams - here they are.

google provider: Diff ( 17 files changed, 16209 insertions(+), 2 deletions(-))
google-beta provider: Diff ( 15 files changed, 16199 insertions(+), 2 deletions(-))
terraform-google-conversion: Diff ( 2 files changed, 5162 insertions(+))
Open in Cloud Shell: Diff ( 8 files changed, 377 insertions(+))

Missing test report

Your PR includes resource fields which are not covered by any test.

Resource: google_transcoder_job (1 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_transcoder_job" "primary" {
  batch_mode_priority = # value needed
  config {
    ad_breaks {
      start_time_offset = # value needed
    }
    edit_list {
      end_time_offset   = # value needed
      inputs            = # value needed
      key               = # value needed
      start_time_offset = # value needed
    }
    elementary_streams {
      audio_stream {
        bitrate_bps    = # value needed
        channel_count  = # value needed
        channel_layout = # value needed
        codec          = # value needed
        display_name   = # value needed
        language_code  = # value needed
        mapping {
          atom_key       = # value needed
          gain_db        = # value needed
          input_channel  = # value needed
          input_key      = # value needed
          input_track    = # value needed
          output_channel = # value needed
        }
        sample_rate_hertz = # value needed
      }
      key = # value needed
      text_stream {
        codec         = # value needed
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key    = # value needed
          input_key   = # value needed
          input_track = # value needed
        }
      }
      video_stream {
        h264 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        h265 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        vp9 {
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          width_pixels                   = # value needed
        }
      }
    }
    encryptions {
      id = # value needed
      mpeg_cenc {
        scheme = # value needed
      }
      sample_aes {
        scheme = # value needed
      }
      secret_manager_key_source {
        secret_version = # value needed
      }
    }
    inputs {
      key = # value needed
      preprocessing_config {
        audio {
          lufs = # value needed
        }
        color {
          brightness = # value needed
          contrast   = # value needed
          saturation = # value needed
        }
        crop {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
        deblock {
          enabled  = # value needed
          strength = # value needed
        }
        deinterlace {
          bwdif {
            deinterlace_all_frames = # value needed
            mode                   = # value needed
            parity                 = # value needed
          }
          yadif {
            deinterlace_all_frames      = # value needed
            disable_spatial_interlacing = # value needed
            mode                        = # value needed
            parity                      = # value needed
          }
        }
        denoise {
          strength = # value needed
          tune     = # value needed
        }
        pad {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
      }
      uri = # value needed
    }
    manifests {
      dash {
        segment_reference_scheme = # value needed
      }
      file_name   = # value needed
      mux_streams = # value needed
      type        = # value needed
    }
    mux_streams {
      container          = # value needed
      elementary_streams = # value needed
      encryption_id      = # value needed
      file_name          = # value needed
      fmp4 {
        codec_tag = # value needed
      }
      key = # value needed
      segment_settings {
        individual_segments = # value needed
        segment_duration    = # value needed
      }
    }
    output {
      uri = # value needed
    }
    overlays {
      animations {
        animation_end {
          start_time_offset = # value needed
        }
        animation_fade {
          end_time_offset   = # value needed
          fade_type         = # value needed
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
        animation_static {
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
      }
      image {
        alpha = # value needed
        resolution {
          x = # value needed
          y = # value needed
        }
        uri = # value needed
      }
    }
    pubsub_destination {
      topic = # value needed
    }
    sprite_sheets {
      column_count         = # value needed
      end_time_offset      = # value needed
      file_prefix          = # value needed
      format               = # value needed
      interval             = # value needed
      quality              = # value needed
      row_count            = # value needed
      sprite_height_pixels = # value needed
      sprite_width_pixels  = # value needed
      start_time_offset    = # value needed
      total_count          = # value needed
    }
  }
  error {
    code    = # value needed
    message = # value needed
  }
  input_uri                 = # value needed
  mode                      = # value needed
  optimization              = # value needed
  output_uri                = # value needed
  ttl_after_completion_days = # value needed
}

Resource: google_transcoder_job_template (2 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_transcoder_job_template" "primary" {
  config {
    ad_breaks {
      start_time_offset = # value needed
    }
    edit_list {
      end_time_offset = # value needed
    }
    elementary_streams {
      audio_stream {
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key       = # value needed
          gain_db        = # value needed
          input_channel  = # value needed
          input_key      = # value needed
          input_track    = # value needed
          output_channel = # value needed
        }
      }
      text_stream {
        codec         = # value needed
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key    = # value needed
          input_key   = # value needed
          input_track = # value needed
        }
      }
      video_stream {
        h264 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          enable_two_pass                = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_frame_count                = # value needed
          tune                           = # value needed
        }
        h265 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        vp9 {
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          width_pixels                   = # value needed
        }
      }
    }
    encryptions {
      id = # value needed
      mpeg_cenc {
        scheme = # value needed
      }
      sample_aes {
        scheme = # value needed
      }
      secret_manager_key_source {
        secret_version = # value needed
      }
    }
    inputs {
      preprocessing_config {
        audio {
          lufs = # value needed
        }
        color {
          brightness = # value needed
          contrast   = # value needed
          saturation = # value needed
        }
        crop {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
        deblock {
          enabled  = # value needed
          strength = # value needed
        }
        deinterlace {
          bwdif {
            deinterlace_all_frames = # value needed
            mode                   = # value needed
            parity                 = # value needed
          }
          yadif {
            deinterlace_all_frames      = # value needed
            disable_spatial_interlacing = # value needed
            mode                        = # value needed
            parity                      = # value needed
          }
        }
        denoise {
          strength = # value needed
          tune     = # value needed
        }
        pad {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
      }
      uri = # value needed
    }
    manifests {
      dash {
        segment_reference_scheme = # value needed
      }
      file_name   = # value needed
      mux_streams = # value needed
      type        = # value needed
    }
    mux_streams {
      encryption_id = # value needed
      fmp4 {
        codec_tag = # value needed
      }
      segment_settings {
        individual_segments = # value needed
        segment_duration    = # value needed
      }
    }
    output {
      uri = # value needed
    }
    overlays {
      animations {
        animation_end {
          start_time_offset = # value needed
        }
        animation_fade {
          end_time_offset   = # value needed
          fade_type         = # value needed
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
        animation_static {
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
      }
      image {
        alpha = # value needed
        resolution {
          x = # value needed
          y = # value needed
        }
        uri = # value needed
      }
    }
    pubsub_destination {
      topic = # value needed
    }
    sprite_sheets {
      column_count         = # value needed
      end_time_offset      = # value needed
      file_prefix          = # value needed
      format               = # value needed
      interval             = # value needed
      quality              = # value needed
      row_count            = # value needed
      sprite_height_pixels = # value needed
      sprite_width_pixels  = # value needed
      start_time_offset    = # value needed
      total_count          = # value needed
    }
  }
}

@modular-magician
Copy link
Collaborator

Tests analytics

Total tests: 3881
Passed tests: 3477
Skipped tests: 385
Affected tests: 19

Click here to see the affected service packages

All service packages are affected

Action taken

Found 19 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit. Click here to see the affected tests
  • TestAccAppEngineFlexibleAppVersion_appEngineFlexibleAppVersionExample
  • TestAccAppEngineFlexibleAppVersion_update
  • TestAccAppEngineStandardAppVersion_update
  • TestAccComputeRouterBgpPeer_routerPeerRouterAppliance
  • TestAccComputeRouterNat_AutoNetworkTier
  • TestAccComputeRouterNat_withPrivateNatAndEmptyAction
  • TestAccComputeRouterNat_withPrivateNatAndEmptyActionActiveRanges
  • TestAccComputeRouterNat_withPrivateNatAndRules
  • TestAccComputeRouterPeer_routerApplianceInstance
  • TestAccDataSourceArtifactRegistryDockerImage
  • TestAccIapAppEngineServiceIamBindingGenerated
  • TestAccIapAppEngineServiceIamBindingGenerated_withCondition
  • TestAccIapAppEngineServiceIamMemberGenerated
  • TestAccIapAppEngineServiceIamMemberGenerated_withCondition
  • TestAccIapAppEngineServiceIamPolicyGenerated
  • TestAccIapAppEngineServiceIamPolicyGenerated_withCondition
  • TestAccNetworkServicesLbRouteExtension_update
  • TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample
  • TestAccTranscoderJob_transcoderJobBasicExample

Get to know how VCR tests work

@modular-magician
Copy link
Collaborator

$\textcolor{green}{\textsf{Tests passed during RECORDING mode:}}$
TestAccComputeRouterBgpPeer_routerPeerRouterAppliance[Debug log]
TestAccComputeRouterNat_AutoNetworkTier[Debug log]
TestAccComputeRouterNat_withPrivateNatAndEmptyAction[Debug log]
TestAccComputeRouterNat_withPrivateNatAndEmptyActionActiveRanges[Debug log]
TestAccComputeRouterNat_withPrivateNatAndRules[Debug log]
TestAccComputeRouterPeer_routerApplianceInstance[Debug log]

$\textcolor{green}{\textsf{No issues found for passed tests after REPLAYING rerun.}}$


$\textcolor{red}{\textsf{Tests failed during RECORDING mode:}}$
TestAccAppEngineFlexibleAppVersion_appEngineFlexibleAppVersionExample[Error message] [Debug log]
TestAccAppEngineFlexibleAppVersion_update[Error message] [Debug log]
TestAccAppEngineStandardAppVersion_update[Error message] [Debug log]
TestAccDataSourceArtifactRegistryDockerImage[Error message] [Debug log]
TestAccIapAppEngineServiceIamBindingGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamBindingGenerated_withCondition[Error message] [Debug log]
TestAccIapAppEngineServiceIamMemberGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamMemberGenerated_withCondition[Error message] [Debug log]
TestAccIapAppEngineServiceIamPolicyGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamPolicyGenerated_withCondition[Error message] [Debug log]
TestAccNetworkServicesLbRouteExtension_update[Error message] [Debug log]
TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample[Error message] [Debug log]
TestAccTranscoderJob_transcoderJobBasicExample[Error message] [Debug log]

$\textcolor{red}{\textsf{Errors occurred during RECORDING mode. Please fix them to complete your PR.}}$

View the build log or the debug log for each test

@BBBmau
Copy link
Collaborator

BBBmau commented Jul 29, 2024

/gcbrun

@modular-magician modular-magician added the awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests label Jul 29, 2024
@modular-magician
Copy link
Collaborator

Hi there, I'm the Modular magician. I've detected the following information about your changes:

Diff report

Your PR generated some diffs in downstreams - here they are.

google provider: Diff ( 17 files changed, 16209 insertions(+), 2 deletions(-))
google-beta provider: Diff ( 15 files changed, 16199 insertions(+), 2 deletions(-))
terraform-google-conversion: Diff ( 2 files changed, 5162 insertions(+))
Open in Cloud Shell: Diff ( 8 files changed, 377 insertions(+))

Missing test report

Your PR includes resource fields which are not covered by any test.

Resource: google_transcoder_job (1 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_transcoder_job" "primary" {
  batch_mode_priority = # value needed
  config {
    ad_breaks {
      start_time_offset = # value needed
    }
    edit_list {
      end_time_offset   = # value needed
      inputs            = # value needed
      key               = # value needed
      start_time_offset = # value needed
    }
    elementary_streams {
      audio_stream {
        bitrate_bps    = # value needed
        channel_count  = # value needed
        channel_layout = # value needed
        codec          = # value needed
        display_name   = # value needed
        language_code  = # value needed
        mapping {
          atom_key       = # value needed
          gain_db        = # value needed
          input_channel  = # value needed
          input_key      = # value needed
          input_track    = # value needed
          output_channel = # value needed
        }
        sample_rate_hertz = # value needed
      }
      key = # value needed
      text_stream {
        codec         = # value needed
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key    = # value needed
          input_key   = # value needed
          input_track = # value needed
        }
      }
      video_stream {
        h264 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        h265 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        vp9 {
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          width_pixels                   = # value needed
        }
      }
    }
    encryptions {
      id = # value needed
      mpeg_cenc {
        scheme = # value needed
      }
      sample_aes {
        scheme = # value needed
      }
      secret_manager_key_source {
        secret_version = # value needed
      }
    }
    inputs {
      key = # value needed
      preprocessing_config {
        audio {
          lufs = # value needed
        }
        color {
          brightness = # value needed
          contrast   = # value needed
          saturation = # value needed
        }
        crop {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
        deblock {
          enabled  = # value needed
          strength = # value needed
        }
        deinterlace {
          bwdif {
            deinterlace_all_frames = # value needed
            mode                   = # value needed
            parity                 = # value needed
          }
          yadif {
            deinterlace_all_frames      = # value needed
            disable_spatial_interlacing = # value needed
            mode                        = # value needed
            parity                      = # value needed
          }
        }
        denoise {
          strength = # value needed
          tune     = # value needed
        }
        pad {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
      }
      uri = # value needed
    }
    manifests {
      dash {
        segment_reference_scheme = # value needed
      }
      file_name   = # value needed
      mux_streams = # value needed
      type        = # value needed
    }
    mux_streams {
      container          = # value needed
      elementary_streams = # value needed
      encryption_id      = # value needed
      file_name          = # value needed
      fmp4 {
        codec_tag = # value needed
      }
      key = # value needed
      segment_settings {
        individual_segments = # value needed
        segment_duration    = # value needed
      }
    }
    output {
      uri = # value needed
    }
    overlays {
      animations {
        animation_end {
          start_time_offset = # value needed
        }
        animation_fade {
          end_time_offset   = # value needed
          fade_type         = # value needed
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
        animation_static {
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
      }
      image {
        alpha = # value needed
        resolution {
          x = # value needed
          y = # value needed
        }
        uri = # value needed
      }
    }
    pubsub_destination {
      topic = # value needed
    }
    sprite_sheets {
      column_count         = # value needed
      end_time_offset      = # value needed
      file_prefix          = # value needed
      format               = # value needed
      interval             = # value needed
      quality              = # value needed
      row_count            = # value needed
      sprite_height_pixels = # value needed
      sprite_width_pixels  = # value needed
      start_time_offset    = # value needed
      total_count          = # value needed
    }
  }
  error {
    code    = # value needed
    message = # value needed
  }
  input_uri                 = # value needed
  mode                      = # value needed
  optimization              = # value needed
  output_uri                = # value needed
  ttl_after_completion_days = # value needed
}

Resource: google_transcoder_job_template (2 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_transcoder_job_template" "primary" {
  config {
    ad_breaks {
      start_time_offset = # value needed
    }
    edit_list {
      end_time_offset = # value needed
    }
    elementary_streams {
      audio_stream {
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key       = # value needed
          gain_db        = # value needed
          input_channel  = # value needed
          input_key      = # value needed
          input_track    = # value needed
          output_channel = # value needed
        }
      }
      text_stream {
        codec         = # value needed
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key    = # value needed
          input_key   = # value needed
          input_track = # value needed
        }
      }
      video_stream {
        h264 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          enable_two_pass                = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_frame_count                = # value needed
          tune                           = # value needed
        }
        h265 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        vp9 {
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          width_pixels                   = # value needed
        }
      }
    }
    encryptions {
      id = # value needed
      mpeg_cenc {
        scheme = # value needed
      }
      sample_aes {
        scheme = # value needed
      }
      secret_manager_key_source {
        secret_version = # value needed
      }
    }
    inputs {
      preprocessing_config {
        audio {
          lufs = # value needed
        }
        color {
          brightness = # value needed
          contrast   = # value needed
          saturation = # value needed
        }
        crop {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
        deblock {
          enabled  = # value needed
          strength = # value needed
        }
        deinterlace {
          bwdif {
            deinterlace_all_frames = # value needed
            mode                   = # value needed
            parity                 = # value needed
          }
          yadif {
            deinterlace_all_frames      = # value needed
            disable_spatial_interlacing = # value needed
            mode                        = # value needed
            parity                      = # value needed
          }
        }
        denoise {
          strength = # value needed
          tune     = # value needed
        }
        pad {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
      }
      uri = # value needed
    }
    manifests {
      dash {
        segment_reference_scheme = # value needed
      }
      file_name   = # value needed
      mux_streams = # value needed
      type        = # value needed
    }
    mux_streams {
      encryption_id = # value needed
      fmp4 {
        codec_tag = # value needed
      }
      segment_settings {
        individual_segments = # value needed
        segment_duration    = # value needed
      }
    }
    output {
      uri = # value needed
    }
    overlays {
      animations {
        animation_end {
          start_time_offset = # value needed
        }
        animation_fade {
          end_time_offset   = # value needed
          fade_type         = # value needed
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
        animation_static {
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
      }
      image {
        alpha = # value needed
        resolution {
          x = # value needed
          y = # value needed
        }
        uri = # value needed
      }
    }
    pubsub_destination {
      topic = # value needed
    }
    sprite_sheets {
      column_count         = # value needed
      end_time_offset      = # value needed
      file_prefix          = # value needed
      format               = # value needed
      interval             = # value needed
      quality              = # value needed
      row_count            = # value needed
      sprite_height_pixels = # value needed
      sprite_width_pixels  = # value needed
      start_time_offset    = # value needed
      total_count          = # value needed
    }
  }
}

@modular-magician modular-magician removed the awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests label Jul 29, 2024
@modular-magician
Copy link
Collaborator

Hi there, I'm the Modular magician. I've detected the following information about your changes:

Diff report

Your PR generated some diffs in downstreams - here they are.

google provider: Diff ( 17 files changed, 16209 insertions(+), 2 deletions(-))
google-beta provider: Diff ( 15 files changed, 16199 insertions(+), 2 deletions(-))
terraform-google-conversion: Diff ( 2 files changed, 5162 insertions(+))
Open in Cloud Shell: Diff ( 8 files changed, 377 insertions(+))

Missing test report

Your PR includes resource fields which are not covered by any test.

Resource: google_transcoder_job (1 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_transcoder_job" "primary" {
  batch_mode_priority = # value needed
  config {
    ad_breaks {
      start_time_offset = # value needed
    }
    edit_list {
      end_time_offset   = # value needed
      inputs            = # value needed
      key               = # value needed
      start_time_offset = # value needed
    }
    elementary_streams {
      audio_stream {
        bitrate_bps    = # value needed
        channel_count  = # value needed
        channel_layout = # value needed
        codec          = # value needed
        display_name   = # value needed
        language_code  = # value needed
        mapping {
          atom_key       = # value needed
          gain_db        = # value needed
          input_channel  = # value needed
          input_key      = # value needed
          input_track    = # value needed
          output_channel = # value needed
        }
        sample_rate_hertz = # value needed
      }
      key = # value needed
      text_stream {
        codec         = # value needed
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key    = # value needed
          input_key   = # value needed
          input_track = # value needed
        }
      }
      video_stream {
        h264 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        h265 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        vp9 {
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          width_pixels                   = # value needed
        }
      }
    }
    encryptions {
      id = # value needed
      mpeg_cenc {
        scheme = # value needed
      }
      sample_aes {
        scheme = # value needed
      }
      secret_manager_key_source {
        secret_version = # value needed
      }
    }
    inputs {
      key = # value needed
      preprocessing_config {
        audio {
          lufs = # value needed
        }
        color {
          brightness = # value needed
          contrast   = # value needed
          saturation = # value needed
        }
        crop {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
        deblock {
          enabled  = # value needed
          strength = # value needed
        }
        deinterlace {
          bwdif {
            deinterlace_all_frames = # value needed
            mode                   = # value needed
            parity                 = # value needed
          }
          yadif {
            deinterlace_all_frames      = # value needed
            disable_spatial_interlacing = # value needed
            mode                        = # value needed
            parity                      = # value needed
          }
        }
        denoise {
          strength = # value needed
          tune     = # value needed
        }
        pad {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
      }
      uri = # value needed
    }
    manifests {
      dash {
        segment_reference_scheme = # value needed
      }
      file_name   = # value needed
      mux_streams = # value needed
      type        = # value needed
    }
    mux_streams {
      container          = # value needed
      elementary_streams = # value needed
      encryption_id      = # value needed
      file_name          = # value needed
      fmp4 {
        codec_tag = # value needed
      }
      key = # value needed
      segment_settings {
        individual_segments = # value needed
        segment_duration    = # value needed
      }
    }
    output {
      uri = # value needed
    }
    overlays {
      animations {
        animation_end {
          start_time_offset = # value needed
        }
        animation_fade {
          end_time_offset   = # value needed
          fade_type         = # value needed
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
        animation_static {
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
      }
      image {
        alpha = # value needed
        resolution {
          x = # value needed
          y = # value needed
        }
        uri = # value needed
      }
    }
    pubsub_destination {
      topic = # value needed
    }
    sprite_sheets {
      column_count         = # value needed
      end_time_offset      = # value needed
      file_prefix          = # value needed
      format               = # value needed
      interval             = # value needed
      quality              = # value needed
      row_count            = # value needed
      sprite_height_pixels = # value needed
      sprite_width_pixels  = # value needed
      start_time_offset    = # value needed
      total_count          = # value needed
    }
  }
  error {
    code    = # value needed
    message = # value needed
  }
  input_uri                 = # value needed
  mode                      = # value needed
  optimization              = # value needed
  output_uri                = # value needed
  ttl_after_completion_days = # value needed
}

Resource: google_transcoder_job_template (2 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_transcoder_job_template" "primary" {
  config {
    ad_breaks {
      start_time_offset = # value needed
    }
    edit_list {
      end_time_offset = # value needed
    }
    elementary_streams {
      audio_stream {
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key       = # value needed
          gain_db        = # value needed
          input_channel  = # value needed
          input_key      = # value needed
          input_track    = # value needed
          output_channel = # value needed
        }
      }
      text_stream {
        codec         = # value needed
        display_name  = # value needed
        language_code = # value needed
        mapping {
          atom_key    = # value needed
          input_key   = # value needed
          input_track = # value needed
        }
      }
      video_stream {
        h264 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          enable_two_pass                = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_frame_count                = # value needed
          tune                           = # value needed
        }
        h265 {
          allow_open_gop                 = # value needed
          aq_strength                    = # value needed
          b_frame_count                  = # value needed
          b_pyramid                      = # value needed
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          enable_two_pass                = # value needed
          entropy_coder                  = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          preset                         = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          tune                           = # value needed
          vbv_fullness_bits              = # value needed
          vbv_size_bits                  = # value needed
          width_pixels                   = # value needed
        }
        vp9 {
          bitrate_bps                    = # value needed
          crf_level                      = # value needed
          frame_rate                     = # value needed
          frame_rate_conversion_strategy = # value needed
          gop_duration                   = # value needed
          gop_frame_count                = # value needed
          height_pixels                  = # value needed
          pixel_format                   = # value needed
          profile                        = # value needed
          rate_control_mode              = # value needed
          width_pixels                   = # value needed
        }
      }
    }
    encryptions {
      id = # value needed
      mpeg_cenc {
        scheme = # value needed
      }
      sample_aes {
        scheme = # value needed
      }
      secret_manager_key_source {
        secret_version = # value needed
      }
    }
    inputs {
      preprocessing_config {
        audio {
          lufs = # value needed
        }
        color {
          brightness = # value needed
          contrast   = # value needed
          saturation = # value needed
        }
        crop {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
        deblock {
          enabled  = # value needed
          strength = # value needed
        }
        deinterlace {
          bwdif {
            deinterlace_all_frames = # value needed
            mode                   = # value needed
            parity                 = # value needed
          }
          yadif {
            deinterlace_all_frames      = # value needed
            disable_spatial_interlacing = # value needed
            mode                        = # value needed
            parity                      = # value needed
          }
        }
        denoise {
          strength = # value needed
          tune     = # value needed
        }
        pad {
          bottom_pixels = # value needed
          left_pixels   = # value needed
          right_pixels  = # value needed
          top_pixels    = # value needed
        }
      }
      uri = # value needed
    }
    manifests {
      dash {
        segment_reference_scheme = # value needed
      }
      file_name   = # value needed
      mux_streams = # value needed
      type        = # value needed
    }
    mux_streams {
      encryption_id = # value needed
      fmp4 {
        codec_tag = # value needed
      }
      segment_settings {
        individual_segments = # value needed
        segment_duration    = # value needed
      }
    }
    output {
      uri = # value needed
    }
    overlays {
      animations {
        animation_end {
          start_time_offset = # value needed
        }
        animation_fade {
          end_time_offset   = # value needed
          fade_type         = # value needed
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
        animation_static {
          start_time_offset = # value needed
          xy {
            x = # value needed
            y = # value needed
          }
        }
      }
      image {
        alpha = # value needed
        resolution {
          x = # value needed
          y = # value needed
        }
        uri = # value needed
      }
    }
    pubsub_destination {
      topic = # value needed
    }
    sprite_sheets {
      column_count         = # value needed
      end_time_offset      = # value needed
      file_prefix          = # value needed
      format               = # value needed
      interval             = # value needed
      quality              = # value needed
      row_count            = # value needed
      sprite_height_pixels = # value needed
      sprite_width_pixels  = # value needed
      start_time_offset    = # value needed
      total_count          = # value needed
    }
  }
}

@modular-magician
Copy link
Collaborator

Tests analytics

Total tests: 3881
Passed tests: 3483
Skipped tests: 385
Affected tests: 13

Click here to see the affected service packages

All service packages are affected

Action taken

Found 13 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit. Click here to see the affected tests
  • TestAccAppEngineFlexibleAppVersion_appEngineFlexibleAppVersionExample
  • TestAccAppEngineFlexibleAppVersion_update
  • TestAccAppEngineStandardAppVersion_update
  • TestAccDataSourceArtifactRegistryDockerImage
  • TestAccIapAppEngineServiceIamBindingGenerated
  • TestAccIapAppEngineServiceIamBindingGenerated_withCondition
  • TestAccIapAppEngineServiceIamMemberGenerated
  • TestAccIapAppEngineServiceIamMemberGenerated_withCondition
  • TestAccIapAppEngineServiceIamPolicyGenerated
  • TestAccIapAppEngineServiceIamPolicyGenerated_withCondition
  • TestAccNetworkServicesLbRouteExtension_update
  • TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample
  • TestAccTranscoderJob_transcoderJobBasicExample

Get to know how VCR tests work

1 similar comment
@modular-magician
Copy link
Collaborator

Tests analytics

Total tests: 3881
Passed tests: 3483
Skipped tests: 385
Affected tests: 13

Click here to see the affected service packages

All service packages are affected

Action taken

Found 13 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit. Click here to see the affected tests
  • TestAccAppEngineFlexibleAppVersion_appEngineFlexibleAppVersionExample
  • TestAccAppEngineFlexibleAppVersion_update
  • TestAccAppEngineStandardAppVersion_update
  • TestAccDataSourceArtifactRegistryDockerImage
  • TestAccIapAppEngineServiceIamBindingGenerated
  • TestAccIapAppEngineServiceIamBindingGenerated_withCondition
  • TestAccIapAppEngineServiceIamMemberGenerated
  • TestAccIapAppEngineServiceIamMemberGenerated_withCondition
  • TestAccIapAppEngineServiceIamPolicyGenerated
  • TestAccIapAppEngineServiceIamPolicyGenerated_withCondition
  • TestAccNetworkServicesLbRouteExtension_update
  • TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample
  • TestAccTranscoderJob_transcoderJobBasicExample

Get to know how VCR tests work

@modular-magician
Copy link
Collaborator

$\textcolor{red}{\textsf{Tests failed during RECORDING mode:}}$
TestAccAppEngineFlexibleAppVersion_appEngineFlexibleAppVersionExample[Error message] [Debug log]
TestAccAppEngineFlexibleAppVersion_update[Error message] [Debug log]
TestAccAppEngineStandardAppVersion_update[Error message] [Debug log]
TestAccDataSourceArtifactRegistryDockerImage[Error message] [Debug log]
TestAccIapAppEngineServiceIamBindingGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamBindingGenerated_withCondition[Error message] [Debug log]
TestAccIapAppEngineServiceIamMemberGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamMemberGenerated_withCondition[Error message] [Debug log]
TestAccIapAppEngineServiceIamPolicyGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamPolicyGenerated_withCondition[Error message] [Debug log]
TestAccNetworkServicesLbRouteExtension_update[Error message] [Debug log]
TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample[Error message] [Debug log]
TestAccTranscoderJob_transcoderJobBasicExample[Error message] [Debug log]

$\textcolor{red}{\textsf{Errors occurred during RECORDING mode. Please fix them to complete your PR.}}$

View the build log or the debug log for each test

@modular-magician
Copy link
Collaborator

$\textcolor{red}{\textsf{Tests failed during RECORDING mode:}}$
TestAccAppEngineFlexibleAppVersion_appEngineFlexibleAppVersionExample[Error message] [Debug log]
TestAccAppEngineFlexibleAppVersion_update[Error message] [Debug log]
TestAccAppEngineStandardAppVersion_update[Error message] [Debug log]
TestAccDataSourceArtifactRegistryDockerImage[Error message] [Debug log]
TestAccIapAppEngineServiceIamBindingGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamBindingGenerated_withCondition[Error message] [Debug log]
TestAccIapAppEngineServiceIamMemberGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamMemberGenerated_withCondition[Error message] [Debug log]
TestAccIapAppEngineServiceIamPolicyGenerated[Error message] [Debug log]
TestAccIapAppEngineServiceIamPolicyGenerated_withCondition[Error message] [Debug log]
TestAccNetworkServicesLbRouteExtension_update[Error message] [Debug log]
TestAccTranscoderJobTemplate_transcoderJobTemplateBasicExample[Error message] [Debug log]
TestAccTranscoderJob_transcoderJobBasicExample[Error message] [Debug log]

$\textcolor{red}{\textsf{Errors occurred during RECORDING mode. Please fix them to complete your PR.}}$

View the build log or the debug log for each test

@SarahFrench
Copy link
Collaborator

The API should be enabled in the test projects now - /gcbrun

@modular-magician modular-magician added awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests and removed awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests labels Jul 30, 2024
@modular-magician modular-magician added awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests and removed awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests labels Oct 14, 2024
@modular-magician
Copy link
Collaborator

🟢 Tests passed during RECORDING mode:
TestAccOracleDatabaseCloudExadataInfrastructure_oracledatabaseCloudExadataInfrastructureBasicExample[Debug log]
TestAccOracleDatabaseCloudExadataInfrastructure_oracledatabaseCloudExadataInfrastructureFullExample[Debug log]
TestAccVertexAIFeatureOnlineStoreFeatureview_vertexAiFeatureonlinestoreFeatureviewCrossProjectExample[Debug log]

🟢 No issues found for passed tests after REPLAYING rerun.


🟢 All tests passed!

View the build log or the debug log for each test

@modular-magician
Copy link
Collaborator

Hi there, I'm the Modular magician. I've detected the following information about your changes:

Diff report

Your PR generated some diffs in downstreams - here they are.

google provider: Diff ( 19 files changed, 9731 insertions(+), 2 deletions(-))
google-beta provider: Diff ( 17 files changed, 9932 insertions(+), 2 deletions(-))
terraform-google-conversion: Diff ( 2 files changed, 2389 insertions(+))
Open in Cloud Shell: Diff ( 32 files changed, 1735 insertions(+))

Missing test report

Your PR includes resource fields which are not covered by any test.

Resource: google_transcoder_job (5 total tests)
Please add an acceptance test which includes these fields. The test should include the following:

resource "google_transcoder_job" "primary" {
  config {
    overlays {
      animations {
        animation_end {
          start_time_offset = # value needed
        }
      }
    }
  }
}

@modular-magician modular-magician added awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests and removed awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests labels Oct 14, 2024
@modular-magician
Copy link
Collaborator

Hi there, I'm the Modular magician. I've detected the following information about your changes:

Diff report

Your PR generated some diffs in downstreams - here they are.

google provider: Diff ( 19 files changed, 9653 insertions(+), 2 deletions(-))
google-beta provider: Diff ( 17 files changed, 9854 insertions(+), 2 deletions(-))
terraform-google-conversion: Diff ( 2 files changed, 2359 insertions(+))
Open in Cloud Shell: Diff ( 32 files changed, 1735 insertions(+))

@modular-magician
Copy link
Collaborator

Tests analytics

Total tests: 4172
Passed tests: 3751
Skipped tests: 418
Affected tests: 3

Click here to see the affected service packages

All service packages are affected

Action taken

Found 3 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit. Click here to see the affected tests
  • TestAccTranscoderJob_transcoderJobManifestsExample
  • TestAccTranscoderJob_transcoderJobOverlaysExample
  • TestAccTranscoderJob_transcoderJobPubsubExample

Get to know how VCR tests work

@modular-magician
Copy link
Collaborator

🔴 Tests failed during RECORDING mode:
TestAccTranscoderJob_transcoderJobManifestsExample[Error message] [Debug log]
TestAccTranscoderJob_transcoderJobOverlaysExample[Error message] [Debug log]
TestAccTranscoderJob_transcoderJobPubsubExample[Error message] [Debug log]

🔴 Errors occurred during RECORDING mode. Please fix them to complete your PR.

View the build log or the debug log for each test

@modular-magician
Copy link
Collaborator

Tests analytics

Total tests: 4172
Passed tests: 3750
Skipped tests: 418
Affected tests: 4

Click here to see the affected service packages

All service packages are affected

Action taken

Found 4 affected test(s) by replaying old test recordings. Starting RECORDING based on the most recent commit. Click here to see the affected tests
  • TestAccBackupDRBackupVault_fullUpdate
  • TestAccTranscoderJob_transcoderJobManifestsExample
  • TestAccTranscoderJob_transcoderJobOverlaysExample
  • TestAccTranscoderJob_transcoderJobPubsubExample

Get to know how VCR tests work

@modular-magician
Copy link
Collaborator

🟢 Tests passed during RECORDING mode:
TestAccBackupDRBackupVault_fullUpdate[Debug log]

🟢 No issues found for passed tests after REPLAYING rerun.


🔴 Tests failed during RECORDING mode:
TestAccTranscoderJob_transcoderJobManifestsExample[Error message] [Debug log]
TestAccTranscoderJob_transcoderJobOverlaysExample[Error message] [Debug log]
TestAccTranscoderJob_transcoderJobPubsubExample[Error message] [Debug log]

🔴 Errors occurred during RECORDING mode. Please fix them to complete your PR.

View the build log or the debug log for each test

@modular-magician modular-magician added awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests and removed awaiting-approval Pull requests that needs reviewer's approval to run presubmit tests labels Oct 15, 2024
@modular-magician
Copy link
Collaborator

Hi there, I'm the Modular magician. I've detected the following information about your changes:

Diff report

Your PR generated some diffs in downstreams - here they are.

google provider: Diff ( 19 files changed, 9739 insertions(+), 2 deletions(-))
google-beta provider: Diff ( 17 files changed, 9940 insertions(+), 2 deletions(-))
terraform-google-conversion: Diff ( 2 files changed, 2392 insertions(+))
Open in Cloud Shell: Diff ( 32 files changed, 1735 insertions(+))

@modular-magician
Copy link
Collaborator

Tests analytics

Total tests: 4174
Passed tests: 3756
Skipped tests: 418
Affected tests: 0

Click here to see the affected service packages

All service packages are affected

🟢 All tests passed!

View the build log

Copy link
Collaborator

@BBBmau BBBmau left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@melinath We'll want to include the Transcoder service team to continue support for this service in terraform. This PR has covered all possible fields based on the current documentation provided.

@BBBmau BBBmau merged commit c951027 into GoogleCloudPlatform:main Oct 15, 2024
14 checks passed
gontech pushed a commit to gontech/magic-modules that referenced this pull request Oct 16, 2024
varshatumburu pushed a commit to varshatumburu/magic-modules that referenced this pull request Oct 19, 2024
BBBmau added a commit to BBBmau/magic-modules that referenced this pull request Oct 23, 2024
Co-authored-by: Cameron Thornton <[email protected]>
Co-authored-by: BBBmau <[email protected]>
BBBmau added a commit to BBBmau/magic-modules that referenced this pull request Oct 24, 2024
Co-authored-by: Cameron Thornton <[email protected]>
Co-authored-by: BBBmau <[email protected]>
BBBmau added a commit to BBBmau/magic-modules that referenced this pull request Nov 5, 2024
Co-authored-by: Cameron Thornton <[email protected]>
Co-authored-by: BBBmau <[email protected]>
akshat-jindal-nit pushed a commit to akshat-jindal-nit/magic-modules that referenced this pull request Nov 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Google Provider Support for Transcoder API
5 participants