
    ³fo                     d    d Z ddlZddlZddlmZ dZ	 dZ	 dZ	 dZ	 dZ		 dZ
	 dZ	 deeef   fdZy)	a?  
Feature flags are used as a way to easily toggle configuration
**at build time**. They are provided to accommodate feature deprecation and
downstream configuration changes.

Currently used upstream values for feature flags are set in
``cloudinit/features.py``. Overrides to these values should be
patched directly (e.g., via quilt patch) by downstreams.

Each flag should include a short comment regarding the reason for
the flag and intended lifetime.

Tests are required for new feature flags, and tests must verify
all valid states of a flag, not just the default state.
    N)DictTFz24.1returnc                      t         j                  d   j                  j                         D  ci c]6  } t	        j
                  d|       r| t        t         j                  d   |       8 c} S c c} w )z@Return a dict of applicable features/overrides and their values.zcloudinit.featuresz^[_A-Z0-9]+$)sysmodules__dict__keysrematchgetattr)ks    4/usr/lib/python3/dist-packages/cloudinit/features.pyget_featuresr   x   sa     12;;@@B88OQ' 	
73;;34a88  s   ;A,)__doc__r
   r   typingr   ERROR_ON_USER_DATA_FAILURE+ALLOW_EC2_MIRRORS_ON_NON_AWS_INSTANCE_TYPESEXPIRE_APPLIES_TO_HASHED_USERSNETPLAN_CONFIG_ROOT_READ_ONLY%NOCLOUD_SEED_URL_APPEND_FORWARD_SLASHAPT_DEB822_SOURCE_LIST_FILEDEPRECATION_INFO_BOUNDARYstrboolr        r   <module>r      s    
 
 ! 	 /4 +$ "&  !%  )- % #  # :d39o r   