'How to find instances that DONT have a tag using Boto3

I'm trying to find instances that DONT have a certain tag.

For instance I want all instances that don't have the Foo tag. I also want instances that don't have the Foo value equal to Bar.

This is what I'm doing now:

import boto3


def aws_get_instances_by_name(name):
    """Get EC2 instances by name"""
    ec2 = boto3.resource('ec2')

    instance_iterator = ec2.instances.filter(
        Filters=[
            {
                'Name': 'tag:Name',
                'Values': [
                    name,
                ]
            },
            {
                'Name': 'tag:Foo',
                'Values': [

                ]
            },
        ]
    )

    return instance_iterator

This is returning nothing.

What is the correct way?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source