3 \¼meˆ ã@sRdZddlZddlZddlmZdZdZdZdZdZ dZ ee e fdœdd„Z dS) 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)ÚDictTF)ÚreturncCsdd„tjdjjƒDƒS)z@Return a dict of applicable features/overrides and their values.cSs*i|]"}tjd|ƒrttjd|ƒ|“qS)z ^[_A-Z0-9]+$zcloudinit.features)ÚreÚmatchÚgetattrÚsysÚmodules)Ú.0Úk©r ú/usr/lib/python3.6/features.pyú ]sz get_features..zcloudinit.features)rrÚ__dict__Úkeysr r r r Ú get_features[sr)Ú__doc__rrZtypingrZERROR_ON_USER_DATA_FAILUREZ+ALLOW_EC2_MIRRORS_ON_NON_AWS_INSTANCE_TYPESZEXPIRE_APPLIES_TO_HASHED_USERSZNETPLAN_CONFIG_ROOT_READ_ONLYZ%NOCLOUD_SEED_URL_APPEND_FORWARD_SLASHZAPT_DEB822_SOURCE_LIST_FILEÚstrÚboolrr r r r Ús