def delete_channel()

in source/customresources/custom-resource-py/lib/medialive.py [0:0]


def delete_channel(ChannelId):
    medialive.stop_channel(
        ChannelId = ChannelId
    )
    response = medialive.delete_channel(
        ChannelId = ChannelId
    )
    InputId = response['InputAttachments'][0]['InputId']
    # wait for channel delete so that the input state is detached:
    while True:
        input = medialive.describe_input(
            InputId=InputId
        )
        if input['State'] == 'DETACHED':
            break
        else:
            time.sleep(3)
    # check for Security Group and delete
    input = medialive.describe_input(
        InputId=InputId
    )
    # delete input
    medialive.delete_input(
        InputId = InputId
    )
    time.sleep(3)
    if input['SecurityGroups']:
        sg = input['SecurityGroups'][0]
        medialive.delete_input_security_group(
            InputSecurityGroupId=sg
        )
    return