Skip to content

Conversation

buxell
Copy link

@buxell buxell commented Jun 12, 2025

SUMMARY

Adds new modules for AWS Elemental MediaLive to enable infrastructure-as-code management of MediaLive resources. These modules support automation of MediaLive configurations including Elemental Anywhere (bring-your-own-device) setups.

The following modules are included in this PR:

  • medialive_sdi_source
  • medialive_node
  • medialive_network
  • medialive_input
  • medialive_cluster
  • medialive_channel
  • medialive_channel_placement_group
ISSUE TYPE
  • New Module Pull Request
COMPONENT NAME

aws.medialive

ADDITIONAL INFORMATION

These modules expand the AWS collection's coverage to include MediaLive services, particularly useful for organizations managing broadcast and streaming workflows through Ansible automation.

Testing completed:

  • Integration tests added for each module
  • Tested with Python 3.x
  • Documentation includes examples for all modules
  • Change logs updated
  • Module arguments documented with type hints and descriptions
  • Return values documented for all modules

Contributors:

Copy link

github-actions bot commented Jun 12, 2025

Docs Build 📝

Thank you for contribution!✨

The docsite for this PR is available for download as an artifact from this run:
https://github.com/ansible-collections/community.aws/actions/runs/17055085495

You can compare to the docs for the main branch here:
https://ansible-collections.github.io/community.aws/branch/main

File changes:

  • A collections/community/aws/medialive_channel_module.html
  • A collections/community/aws/medialive_channel_placement_group_info_module.html
  • A collections/community/aws/medialive_channel_placement_group_module.html
  • A collections/community/aws/medialive_cluster_info_module.html
  • A collections/community/aws/medialive_cluster_module.html
  • A collections/community/aws/medialive_input_info_module.html
  • A collections/community/aws/medialive_input_module.html
  • A collections/community/aws/medialive_network_info_module.html
  • A collections/community/aws/medialive_network_module.html
  • A collections/community/aws/medialive_node_info_module.html
  • A collections/community/aws/medialive_node_module.html
  • A collections/community/aws/medialive_node_registration_module.html
  • A collections/community/aws/medialive_sdi_source_info_module.html
  • A collections/community/aws/medialive_sdi_source_module.html
  • M collections/community/aws/index.html
  • M collections/community/aws/lightsail_static_ip_module.html
  • M collections/community/aws/mq_broker_module.html
  • M collections/index_module.html
Click to see the diff comparison.

NOTE: only file modifications are shown here. New and deleted files are excluded.
See the file list and check the published docs to see those files.

diff --git a/home/runner/work/community.aws/community.aws/docsbuild/base/collections/community/aws/index.html b/home/runner/work/community.aws/community.aws/docsbuild/head/collections/community/aws/index.html
index 75011d0..c9f2a56 100644
--- a/home/runner/work/community.aws/community.aws/docsbuild/base/collections/community/aws/index.html
+++ b/home/runner/work/community.aws/community.aws/docsbuild/head/collections/community/aws/index.html
@@ -266,6 +266,20 @@
 <li><p><a class="reference internal" href="lightsail_module.html#ansible-collections-community-aws-lightsail-module"><span class="std std-ref">lightsail module</span></a> – Manage instances in AWS Lightsail</p></li>
 <li><p><a class="reference internal" href="lightsail_snapshot_module.html#ansible-collections-community-aws-lightsail-snapshot-module"><span class="std std-ref">lightsail_snapshot module</span></a> – Creates snapshots of AWS Lightsail instances</p></li>
 <li><p><a class="reference internal" href="lightsail_static_ip_module.html#ansible-collections-community-aws-lightsail-static-ip-module"><span class="std std-ref">lightsail_static_ip module</span></a> – Manage static IP addresses in AWS Lightsail</p></li>
+<li><p><a class="reference internal" href="medialive_channel_module.html#ansible-collections-community-aws-medialive-channel-module"><span class="std std-ref">medialive_channel module</span></a> –</p></li>
+<li><p><a class="reference internal" href="medialive_channel_placement_group_module.html#ansible-collections-community-aws-medialive-channel-placement-group-module"><span class="std std-ref">medialive_channel_placement_group module</span></a> – Manage AWS MediaLive Channel Placement Groups</p></li>
+<li><p><a class="reference internal" href="medialive_channel_placement_group_info_module.html#ansible-collections-community-aws-medialive-channel-placement-group-info-module"><span class="std std-ref">medialive_channel_placement_group_info module</span></a> – Get information about an AWS MediaLive Channel Placement Group</p></li>
+<li><p><a class="reference internal" href="medialive_cluster_module.html#ansible-collections-community-aws-medialive-cluster-module"><span class="std std-ref">medialive_cluster module</span></a> – Manage AWS MediaLive Anywhere clusters</p></li>
+<li><p><a class="reference internal" href="medialive_cluster_info_module.html#ansible-collections-community-aws-medialive-cluster-info-module"><span class="std std-ref">medialive_cluster_info module</span></a> – Gather MediaLive Anywhere cluster info</p></li>
+<li><p><a class="reference internal" href="medialive_input_module.html#ansible-collections-community-aws-medialive-input-module"><span class="std std-ref">medialive_input module</span></a> – Manage AWS MediaLive Anywhere inputs</p></li>
+<li><p><a class="reference internal" href="medialive_input_info_module.html#ansible-collections-community-aws-medialive-input-info-module"><span class="std std-ref">medialive_input_info module</span></a> – Gather MediaLive Anywhere input info</p></li>
+<li><p><a class="reference internal" href="medialive_network_module.html#ansible-collections-community-aws-medialive-network-module"><span class="std std-ref">medialive_network module</span></a> – Manage AWS MediaLive Anywhere networks</p></li>
+<li><p><a class="reference internal" href="medialive_network_info_module.html#ansible-collections-community-aws-medialive-network-info-module"><span class="std std-ref">medialive_network_info module</span></a> – Gather MediaLive Anywhere network info</p></li>
+<li><p><a class="reference internal" href="medialive_node_module.html#ansible-collections-community-aws-medialive-node-module"><span class="std std-ref">medialive_node module</span></a> – Manage AWS MediaLive Anywhere nodes</p></li>
+<li><p><a class="reference internal" href="medialive_node_info_module.html#ansible-collections-community-aws-medialive-node-info-module"><span class="std std-ref">medialive_node_info module</span></a> – Gather AWS MediaLive Anywhere node info</p></li>
+<li><p><a class="reference internal" href="medialive_node_registration_module.html#ansible-collections-community-aws-medialive-node-registration-module"><span class="std std-ref">medialive_node_registration module</span></a> – Manage AWS MediaLive Anywhere nodes</p></li>
+<li><p><a class="reference internal" href="medialive_sdi_source_module.html#ansible-collections-community-aws-medialive-sdi-source-module"><span class="std std-ref">medialive_sdi_source module</span></a> – Manage AWS MediaLive Anywhere SDI sources</p></li>
+<li><p><a class="reference internal" href="medialive_sdi_source_info_module.html#ansible-collections-community-aws-medialive-sdi-source-info-module"><span class="std std-ref">medialive_sdi_source_info module</span></a> – Gather AWS MediaLive Anywhere SDI source info</p></li>
 <li><p><a class="reference internal" href="mq_broker_module.html#ansible-collections-community-aws-mq-broker-module"><span class="std std-ref">mq_broker module</span></a> – MQ broker management</p></li>
 <li><p><a class="reference internal" href="mq_broker_config_module.html#ansible-collections-community-aws-mq-broker-config-module"><span class="std std-ref">mq_broker_config module</span></a> – Update Amazon MQ broker configuration</p></li>
 <li><p><a class="reference internal" href="mq_broker_info_module.html#ansible-collections-community-aws-mq-broker-info-module"><span class="std std-ref">mq_broker_info module</span></a> – Retrieve MQ Broker details</p></li>
diff --git a/home/runner/work/community.aws/community.aws/docsbuild/base/collections/community/aws/lightsail_static_ip_module.html b/home/runner/work/community.aws/community.aws/docsbuild/head/collections/community/aws/lightsail_static_ip_module.html
index 1924db9..c793840 100644
--- a/home/runner/work/community.aws/community.aws/docsbuild/base/collections/community/aws/lightsail_static_ip_module.html
+++ b/home/runner/work/community.aws/community.aws/docsbuild/head/collections/community/aws/lightsail_static_ip_module.html
@@ -22,7 +22,7 @@
       <script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
     <script src="../../../_static/js/theme.js"></script>
     <link rel="search" title="Search" href="../../../search.html" />
-    <link rel="next" title="community.aws.mq_broker module – MQ broker management" href="mq_broker_module.html" />
+    <link rel="next" title="community.aws.medialive_channel module" href="medialive_channel_module.html" />
     <link rel="prev" title="community.aws.lightsail_snapshot module – Creates snapshots of AWS Lightsail instances" href="lightsail_snapshot_module.html" /><!-- extra head elements for Ansible beyond RTD Sphinx Theme -->
 
 
@@ -385,7 +385,7 @@ see <a class="reference internal" href="#ansible-collections-community-aws-light
 
 <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
         <a href="lightsail_snapshot_module.html" class="btn btn-neutral float-left" title="community.aws.lightsail_snapshot module – Creates snapshots of AWS Lightsail instances" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
-        <a href="mq_broker_module.html" class="btn btn-neutral float-right" title="community.aws.mq_broker module – MQ broker management" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+        <a href="medialive_channel_module.html" class="btn btn-neutral float-right" title="community.aws.medialive_channel module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
   <hr/>
diff --git a/home/runner/work/community.aws/community.aws/docsbuild/base/collections/community/aws/mq_broker_module.html b/home/runner/work/community.aws/community.aws/docsbuild/head/collections/community/aws/mq_broker_module.html
index 49f3f3c..b8e3f0b 100644
--- a/home/runner/work/community.aws/community.aws/docsbuild/base/collections/community/aws/mq_broker_module.html
+++ b/home/runner/work/community.aws/community.aws/docsbuild/head/collections/community/aws/mq_broker_module.html
@@ -23,7 +23,7 @@
     <script src="../../../_static/js/theme.js"></script>
     <link rel="search" title="Search" href="../../../search.html" />
     <link rel="next" title="community.aws.mq_broker_config module – Update Amazon MQ broker configuration" href="mq_broker_config_module.html" />
-    <link rel="prev" title="community.aws.lightsail_static_ip module – Manage static IP addresses in AWS Lightsail" href="lightsail_static_ip_module.html" /><!-- extra head elements for Ansible beyond RTD Sphinx Theme -->
+    <link rel="prev" title="community.aws.medialive_sdi_source_info module – Gather AWS MediaLive Anywhere SDI source info" href="medialive_sdi_source_info_module.html" /><!-- extra head elements for Ansible beyond RTD Sphinx Theme -->
 
 
 
@@ -653,7 +653,7 @@ see <a class="reference internal" href="#ansible-collections-community-aws-mq-br
           
 
 <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
-        <a href="lightsail_static_ip_module.html" class="btn btn-neutral float-left" title="community.aws.lightsail_static_ip module – Manage static IP addresses in AWS Lightsail" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+        <a href="medialive_sdi_source_info_module.html" class="btn btn-neutral float-left" title="community.aws.medialive_sdi_source_info module – Gather AWS MediaLive Anywhere SDI source info" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
         <a href="mq_broker_config_module.html" class="btn btn-neutral float-right" title="community.aws.mq_broker_config module – Update Amazon MQ broker configuration" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
diff --git a/home/runner/work/community.aws/community.aws/docsbuild/base/collections/index_module.html b/home/runner/work/community.aws/community.aws/docsbuild/head/collections/index_module.html
index 4c73fae..48cb16c 100644
--- a/home/runner/work/community.aws/community.aws/docsbuild/base/collections/index_module.html
+++ b/home/runner/work/community.aws/community.aws/docsbuild/head/collections/index_module.html
@@ -209,6 +209,20 @@
 <li><p><a class="reference internal" href="community/aws/lightsail_module.html#ansible-collections-community-aws-lightsail-module"><span class="std std-ref">community.aws.lightsail</span></a> – Manage instances in AWS Lightsail</p></li>
 <li><p><a class="reference internal" href="community/aws/lightsail_snapshot_module.html#ansible-collections-community-aws-lightsail-snapshot-module"><span class="std std-ref">community.aws.lightsail_snapshot</span></a> – Creates snapshots of AWS Lightsail instances</p></li>
 <li><p><a class="reference internal" href="community/aws/lightsail_static_ip_module.html#ansible-collections-community-aws-lightsail-static-ip-module"><span class="std std-ref">community.aws.lightsail_static_ip</span></a> – Manage static IP addresses in AWS Lightsail</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_channel_module.html#ansible-collections-community-aws-medialive-channel-module"><span class="std std-ref">community.aws.medialive_channel</span></a> –</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_channel_placement_group_module.html#ansible-collections-community-aws-medialive-channel-placement-group-module"><span class="std std-ref">community.aws.medialive_channel_placement_group</span></a> – Manage AWS MediaLive Channel Placement Groups</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_channel_placement_group_info_module.html#ansible-collections-community-aws-medialive-channel-placement-group-info-module"><span class="std std-ref">community.aws.medialive_channel_placement_group_info</span></a> – Get information about an AWS MediaLive Channel Placement Group</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_cluster_module.html#ansible-collections-community-aws-medialive-cluster-module"><span class="std std-ref">community.aws.medialive_cluster</span></a> – Manage AWS MediaLive Anywhere clusters</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_cluster_info_module.html#ansible-collections-community-aws-medialive-cluster-info-module"><span class="std std-ref">community.aws.medialive_cluster_info</span></a> – Gather MediaLive Anywhere cluster info</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_input_module.html#ansible-collections-community-aws-medialive-input-module"><span class="std std-ref">community.aws.medialive_input</span></a> – Manage AWS MediaLive Anywhere inputs</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_input_info_module.html#ansible-collections-community-aws-medialive-input-info-module"><span class="std std-ref">community.aws.medialive_input_info</span></a> – Gather MediaLive Anywhere input info</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_network_module.html#ansible-collections-community-aws-medialive-network-module"><span class="std std-ref">community.aws.medialive_network</span></a> – Manage AWS MediaLive Anywhere networks</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_network_info_module.html#ansible-collections-community-aws-medialive-network-info-module"><span class="std std-ref">community.aws.medialive_network_info</span></a> – Gather MediaLive Anywhere network info</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_node_module.html#ansible-collections-community-aws-medialive-node-module"><span class="std std-ref">community.aws.medialive_node</span></a> – Manage AWS MediaLive Anywhere nodes</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_node_info_module.html#ansible-collections-community-aws-medialive-node-info-module"><span class="std std-ref">community.aws.medialive_node_info</span></a> – Gather AWS MediaLive Anywhere node info</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_node_registration_module.html#ansible-collections-community-aws-medialive-node-registration-module"><span class="std std-ref">community.aws.medialive_node_registration</span></a> – Manage AWS MediaLive Anywhere nodes</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_sdi_source_module.html#ansible-collections-community-aws-medialive-sdi-source-module"><span class="std std-ref">community.aws.medialive_sdi_source</span></a> – Manage AWS MediaLive Anywhere SDI sources</p></li>
+<li><p><a class="reference internal" href="community/aws/medialive_sdi_source_info_module.html#ansible-collections-community-aws-medialive-sdi-source-info-module"><span class="std std-ref">community.aws.medialive_sdi_source_info</span></a> – Gather AWS MediaLive Anywhere SDI source info</p></li>
 <li><p><a class="reference internal" href="community/aws/mq_broker_module.html#ansible-collections-community-aws-mq-broker-module"><span class="std std-ref">community.aws.mq_broker</span></a> – MQ broker management</p></li>
 <li><p><a class="reference internal" href="community/aws/mq_broker_config_module.html#ansible-collections-community-aws-mq-broker-config-module"><span class="std std-ref">community.aws.mq_broker_config</span></a> – Update Amazon MQ broker configuration</p></li>
 <li><p><a class="reference internal" href="community/aws/mq_broker_info_module.html#ansible-collections-community-aws-mq-broker-info-module"><span class="std std-ref">community.aws.mq_broker_info</span></a> – Retrieve MQ Broker details</p></li>

Copy link
Contributor

Build failed.
https://ansible.softwarefactory-project.io/zuul/buildset/3cf1e84dd356459dad7d8d68729c7b99

ansible-galaxy-importer FAILURE in 3m 37s (non-voting)
✔️ build-ansible-collection SUCCESS in 11m 05s
✔️ ansible-test-splitter SUCCESS in 4m 20s
integration-community.aws-1 FAILURE in 5m 57s
integration-community.aws-2 FAILURE in 6m 16s
integration-community.aws-3 FAILURE in 5m 17s
integration-community.aws-4 FAILURE in 9m 57s
integration-community.aws-5 FAILURE in 5m 20s
integration-community.aws-6 FAILURE in 9m 13s
Skipped 16 jobs

Copy link
Contributor

Build failed.
https://ansible.softwarefactory-project.io/zuul/buildset/5d4284ef96974fb4bf0b4701893391ee

ansible-galaxy-importer FAILURE in 3m 51s (non-voting)
✔️ build-ansible-collection SUCCESS in 11m 16s
✔️ ansible-test-splitter SUCCESS in 4m 29s
integration-community.aws-1 FAILURE in 6m 02s
integration-community.aws-2 FAILURE in 7m 03s
integration-community.aws-3 FAILURE in 11m 45s
integration-community.aws-4 FAILURE in 6m 07s
integration-community.aws-5 FAILURE in 11m 45s
integration-community.aws-6 FAILURE in 5m 16s
Skipped 16 jobs

Copy link
Contributor

Build failed.
https://ansible.softwarefactory-project.io/zuul/buildset/0bfb042121644652a5641b7a915141ef

✔️ ansible-galaxy-importer SUCCESS in 4m 35s (non-voting)
✔️ build-ansible-collection SUCCESS in 11m 07s
✔️ ansible-test-splitter SUCCESS in 4m 17s
integration-community.aws-1 FAILURE in 6m 10s
integration-community.aws-2 FAILURE in 6m 18s
integration-community.aws-3 FAILURE in 5m 20s
integration-community.aws-4 FAILURE in 6m 12s
integration-community.aws-5 FAILURE in 5m 20s
integration-community.aws-6 FAILURE in 5m 11s
Skipped 16 jobs

Copy link
Contributor

Build failed.
https://ansible.softwarefactory-project.io/zuul/buildset/85e98565244e494fada601170ae2a408

ansible-galaxy-importer FAILURE in 3m 40s (non-voting)
✔️ build-ansible-collection SUCCESS in 10m 54s
✔️ ansible-test-splitter SUCCESS in 4m 17s
integration-community.aws-1 FAILURE in 6m 46s
integration-community.aws-2 FAILURE in 7m 37s
integration-community.aws-3 FAILURE in 5m 33s
integration-community.aws-4 FAILURE in 6m 02s
integration-community.aws-5 FAILURE in 6m 38s
integration-community.aws-6 FAILURE in 5m 17s
Skipped 16 jobs

@buxell
Copy link
Author

buxell commented Jul 14, 2025

I'm seeing two issues with this PR:

  1. Documentation build failure - unclear from logs what's causing this, and I notice similar failures in other recent PRs.
  2. Integration test failures in CI - I've confirmed these tests pass locally using an IAM role with the required MediaLive permissions. Looking for guidance on how to update the CI environment's IAM role to include these permissions, if that is needed.

I've also asked for guidance in the #ansible-aws channel in Libera to help move this forward.

@gundalow
Copy link
Contributor

@buxell If you rebase your PR, then the Documentation build failures should be fixed.

The forum post you created is the best place to get help with the IAM permissions

@buxell buxell force-pushed the github-integration-emla branch from b4233e0 to b360ae5 Compare July 18, 2025 17:37
Copy link
Contributor

Build failed.
https://ansible.softwarefactory-project.io/zuul/buildset/f5842799f2604598af1334798624848c

✔️ ansible-galaxy-importer SUCCESS in 4m 56s (non-voting)
✔️ build-ansible-collection SUCCESS in 11m 10s
✔️ ansible-test-splitter SUCCESS in 4m 15s
integration-community.aws-1 FAILURE in 8m 07s
integration-community.aws-2 FAILURE in 8m 21s
integration-community.aws-3 FAILURE in 7m 21s
integration-community.aws-4 FAILURE in 8m 29s
integration-community.aws-5 FAILURE in 6m 39s
integration-community.aws-6 FAILURE in 6m 35s
Skipped 16 jobs

Adds new modules for AWS Elemental MediaLive management:
- medialive_sdi_source: Manage SDI source configurations
- medialive_node: Handle node operations
- medialive_network: Configure network settings
- medialive_input: Manage input configurations
- medialive_cluster: Control cluster operations
- medialive_channel_placement_group: Manage channel placement groups

This enhancement enables comprehensive management of MediaLive resources
through Ansible automation, supporting bring-your-own-device Elemental
Anywhere systems.

Co-authored-by: Sergey Papyan <spapyan@amazon.com>
Co-authored-by: David Teach <dteach@amazon.com>
Co-authored-by: Brenton Buxell <buxell@amazon.com>
@buxell buxell force-pushed the github-integration-emla branch from b360ae5 to 4628e9a Compare July 18, 2025 21:56
Copy link
Contributor

Build failed.
https://ansible.softwarefactory-project.io/zuul/buildset/a6d58f8050244040b2be56879168a1f0

ansible-galaxy-importer FAILURE in 3m 35s (non-voting)
✔️ build-ansible-collection SUCCESS in 11m 00s
✔️ ansible-test-splitter SUCCESS in 4m 12s
integration-community.aws-1 FAILURE in 6m 12s
integration-community.aws-2 FAILURE in 12m 43s
integration-community.aws-3 FAILURE in 5m 28s
integration-community.aws-4 FAILURE in 15m 43s
integration-community.aws-5 FAILURE in 5m 07s
integration-community.aws-6 FAILURE in 11m 56s
Skipped 16 jobs

Copy link
Contributor

Build failed.
https://ansible.softwarefactory-project.io/zuul/buildset/6142b3edcf7a4cd98c477380bc9934dc

✔️ ansible-galaxy-importer SUCCESS in 4m 05s (non-voting)
✔️ build-ansible-collection SUCCESS in 10m 55s
✔️ ansible-test-splitter SUCCESS in 4m 16s
integration-community.aws-1 FAILURE in 13m 33s
integration-community.aws-2 FAILURE in 13m 31s
integration-community.aws-3 FAILURE in 5m 28s
integration-community.aws-4 FAILURE in 6m 27s
integration-community.aws-5 FAILURE in 5m 20s
integration-community.aws-6 FAILURE in 5m 29s
Skipped 16 jobs

Copy link
Contributor

Build failed.
https://ansible.softwarefactory-project.io/zuul/buildset/fa9d09e95e6e46c3952ed14b1b672deb

ansible-galaxy-importer FAILURE in 4m 15s (non-voting)
✔️ build-ansible-collection SUCCESS in 11m 33s
✔️ ansible-test-splitter SUCCESS in 4m 30s
integration-community.aws-1 FAILURE in 6m 07s
integration-community.aws-2 FAILURE in 6m 16s
integration-community.aws-3 FAILURE in 5m 53s
integration-community.aws-4 FAILURE in 7m 28s
integration-community.aws-5 FAILURE in 5m 35s
integration-community.aws-6 FAILURE in 6m 35s
Skipped 16 jobs

@buxell
Copy link
Author

buxell commented Jul 29, 2025

I have created a companion PR in the aws.terminator repository that adds the required MediaLive IAM permissions needed for these integration tests to pass. Once that PR is merged, the CI failures here should be resolved.

mattclay/aws-terminator#315

This PR should now be ready for review.

Copy link
Contributor

@alinabuzachis alinabuzachis left a comment

Choose a reason for hiding this comment

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

@buxell Thank you for your impressive contribution. Would it make sense to you to split this PR into several ones to make the review process easier?

@@ -0,0 +1,3 @@
minor_changes:
Copy link
Contributor

Choose a reason for hiding this comment

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

For new modules you not need changelog fragments, so, please remove these.

Copy link

Choose a reason for hiding this comment

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

Removed

options:
cdi_input_specification:
description:
- Specification of CDI inputs for this channel
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- Specification of CDI inputs for this channel
- Specification of CDI inputs for this channel.

Copy link

Choose a reason for hiding this comment

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

Fixed

suboptions:
resolution:
description:
- Maximum CDI input resolution
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- Maximum CDI input resolution
- Maximum CDI input resolution.

Copy link

Choose a reason for hiding this comment

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

Fixed

suboptions:
password_param:
description:
- key used to extract the password from EC2 Parameter store
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- key used to extract the password from EC2 Parameter store
- Key used to extract the password from EC2 Parameter store.

Copy link

Choose a reason for hiding this comment

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

Fixed

type: str
stream_name:
description:
- Stream name for RTMP destinations (URLs of type rtmp://)
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- Stream name for RTMP destinations (URLs of type rtmp://)
- Stream name for RTMP destinations (URLs of type rtmp://).

Copy link

Choose a reason for hiding this comment

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

Fixed

suboptions:
password_param:
description:
- key used to extract the password from EC2 Parameter store
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- key used to extract the password from EC2 Parameter store
- Key used to extract the password from EC2 Parameter store.

Copy link

Choose a reason for hiding this comment

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

Fixed

- 'DVBDASH_7_CLEAN_FEED'
feature_activations:
description:
- Feature Activations
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- Feature Activations
- Feature Activations.

Copy link

Choose a reason for hiding this comment

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

Fixed

suboptions:
black_frame_msec:
description:
- Documentation update needed
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- Documentation update needed
- Documentation update needed.

Copy link

Choose a reason for hiding this comment

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

Fixed

class MediaLiveWaiterFactory(BaseWaiterFactory):
'''Custom waiter factory for MediaLive channel placement group resources'''

@property
Copy link
Contributor

Choose a reason for hiding this comment

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

Copy link

Choose a reason for hiding this comment

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

Got rid of custom waiters in favor of official ones

)


def do_update_channel(self, params):
Copy link
Contributor

Choose a reason for hiding this comment

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

Would it make sense to move some of the shared logic to a plugins/modules_utils/medialive.py file?

Copy link

Choose a reason for hiding this comment

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

I believe there isn't enough shared logic to make it worth it

Copy link
Contributor

Build failed.
https://ansible.softwarefactory-project.io/zuul/buildset/ac1f3b9a9dda48cf8485f4a684db8167

ansible-galaxy-importer FAILURE in 3m 41s (non-voting)
✔️ build-ansible-collection SUCCESS in 11m 06s
✔️ ansible-test-splitter SUCCESS in 4m 25s
integration-community.aws-1 RETRY_LIMIT in 3m 19s
integration-community.aws-2 RETRY_LIMIT in 3m 17s
integration-community.aws-3 RETRY_LIMIT in 3m 19s
integration-community.aws-4 RETRY_LIMIT in 4m 16s
integration-community.aws-5 RETRY_LIMIT in 3m 19s
integration-community.aws-6 RETRY_LIMIT in 3m 59s
Skipped 16 jobs

@r363x
Copy link

r363x commented Aug 19, 2025

@buxell Thank you for your impressive contribution. Would it make sense to you to split this PR into several ones to make the review process easier?

Hi @alinabuzachis. I am one of the contributors and I've taken over the shepherding of this PR from @buxell.
To answer your question, we would prefer not to split the PR unless you think it is necessary, as:

  • there is clear separation between the modules BUT
  • many of the modules depend on other modules (from this PR) for their integration tests

@r363x
Copy link

r363x commented Aug 19, 2025

On a different note - could you possibly take a look at this PR as well, @alinabuzachis? I believe I've seen you review older PRs on mattclay/aws-terminator, and this one takes care of adding the necessary IAM permissions for the integration tests here to succeed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants