forked from platformio/platformio-core
Custom project "***_dir" options declared in “platformio” section of “platformio.ini” have higher priority than Environment variables
This commit is contained in:
@ -10,10 +10,11 @@ PlatformIO 4.0
|
||||
* **PlatformIO-based Project**
|
||||
|
||||
- Implemented unified project workspace storage (`workspace_dir <http://docs.platformio.org/page/projectconf/section_platformio.html#workspace-dir>`__ -> ``.pio``) for PlatformIO Build System, Library Dependency Finder, and other internal services (`issue #1778 <https://github.com/platformio/platformio-core/issues/1778>`_)
|
||||
- Moved ``.pioenvs`` build directory to workspace storage ``.pio/build``
|
||||
- Share common (global) options between build environments using ``[env]`` section in `"platformio.ini" (Project Configuration File) <https://docs.platformio.org/page/projectconf.html>`__ (`issue #1643 <https://github.com/platformio/platformio-core/issues/1643>`_)
|
||||
- Include external configuration files in `"platformio.ini" (Project Configuration File) <https://docs.platformio.org/page/projectconf.html>`__ with `extra_configs <http://docs.platformio.org/page/projectconf/section_platformio.html#extra-configs>`__ option (`issue #1590 <https://github.com/platformio/platformio-core/issues/1590>`_)
|
||||
- Override default `"platformio.ini" (Project Configuration File) <https://docs.platformio.org/page/projectconf.html>`__ with a custom using ``-c, --project-conf`` option for `platformio run <http://docs.platformio.org/page/userguide/cmd_run.html>`__, `platformio debug <http://docs.platformio.org/page/userguide/cmd_debug.html>`__, or `platformio test <http://docs.platformio.org/page/userguide/cmd_test.html>`__ commands (`issue #1913 <https://github.com/platformio/platformio-core/issues/1913>`_)
|
||||
- Custom project ``***_dir`` options declared in "platformio" section of `"platformio.ini" (Project Configuration File) <https://docs.platformio.org/page/projectconf.html>`__ have higher priority than `Environment variables <http://docs.platformio.org/page/envvars.html>`__
|
||||
- Moved ``.pioenvs`` build directory to workspace storage ``.pio/build``
|
||||
|
||||
* **Infrastructure**
|
||||
|
||||
|
@ -44,15 +44,18 @@ def find_project_dir_above(path):
|
||||
|
||||
def get_project_optional_dir(name, default=None):
|
||||
paths = None
|
||||
|
||||
# check for system environment variable
|
||||
var_name = "PLATFORMIO_%s" % name.upper()
|
||||
if var_name in os.environ:
|
||||
paths = os.getenv(var_name)
|
||||
else:
|
||||
config = ProjectConfig.get_instance(
|
||||
join(get_project_dir(), "platformio.ini"))
|
||||
if (config.has_section("platformio")
|
||||
and config.has_option("platformio", name)):
|
||||
paths = config.get("platformio", name)
|
||||
|
||||
config = ProjectConfig.get_instance(
|
||||
join(get_project_dir(), "platformio.ini"))
|
||||
if (config.has_section("platformio")
|
||||
and config.has_option("platformio", name)):
|
||||
paths = config.get("platformio", name)
|
||||
|
||||
if not paths:
|
||||
return default
|
||||
|
||||
|
Reference in New Issue
Block a user