def env_unset(context):
    """Unset $ENVs.

    Context is a dictionary or dictionary-like. context is mandatory.

    context['env']['unset'] must exist. It's a list.
    List items are the names of the $ENV values to unset.

    For example, say input context is:
        key1: value1
        key2: value2
        key3: value3
        env:
            unset:
                MYVAR1
                MYVAR2

    This will result in the following $ENVs being unset:
    $MYVAR1
    $MYVAR2
    """
    unset = context['env'].get('unset', None)

    exists = False
    if unset:
        logger.debug("started")

        for env_var_name in unset:
            logger.debug(f"unsetting ${env_var_name}")
            try:
                del os.environ[env_var_name]
            except KeyError:
                # If user is trying to get rid of the $ENV, if it doesn't
                # exist, no real point in throwing up an error that the thing
                # you're trying to be rid off isn't there anyway.
                logger.debug(
                    f"${env_var_name} doesn't exist anyway. As you were.")

        logger.info(f"unset {len(unset)} $ENVs.")
        exists = True

        logger.debug("done")
    return exists