buildstream should inmediatelly fail if ostree < v2017.8 is installed
Summary
Builds fail with a strange error if the ostree version is not new enough
Steps to reproduce
Try to build anything with an older ostree (even if it doesn't use the plugin at all)
What is the current bug behavior?
~/gnome-build-meta$ bst build --track-all sdk/gtk+-3.bst
[--:--:--][][] START Build
[--:--:--][][] START Loading elements
[00:00:03][][] SUCCESS Loading elements
[--:--:--][][] START Resolving elements
[00:00:01][][] SUCCESS Resolving elements
[--:--:--][][] START Initializing remote caches
[00:00:00][][] SUCCESS Initializing remote caches
[--:--:--][][] START Resolving cached state
[--:--:--][][] BUG 'Repo' object has no attribute 'reload_config'
Traceback (most recent call last):
File "/home/niels/.local/bin/bst", line 11, in <module>
sys.exit(cli())
File "/home/niels/.local/lib/python3.5/site-packages/click/core.py", line 764, in __call__
return self.main(*args, **kwargs)
File "/home/niels/.local/lib/python3.5/site-packages/buildstream/_frontend/cli.py", line 162, in override_main
standalone_mode=standalone_mode, **extra)
File "/home/niels/.local/lib/python3.5/site-packages/click/core.py", line 717, in main
rv = self.invoke(ctx)
File "/home/niels/.local/lib/python3.5/site-packages/click/core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/niels/.local/lib/python3.5/site-packages/click/core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/niels/.local/lib/python3.5/site-packages/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/home/niels/.local/lib/python3.5/site-packages/click/decorators.py", line 27, in new_func
return f(get_current_context().obj, *args, **kwargs)
File "/home/niels/.local/lib/python3.5/site-packages/buildstream/_frontend/cli.py", line 330, in build
build_all=all_)
File "/home/niels/.local/lib/python3.5/site-packages/buildstream/_stream.py", line 184, in build
dynamic_plan=True)
File "/home/niels/.local/lib/python3.5/site-packages/buildstream/_stream.py", line 931, in _load
self._pipeline.resolve_elements(elements)
File "/home/niels/.local/lib/python3.5/site-packages/buildstream/_pipeline.py", line 139, in resolve_elements
element._update_state()
File "/home/niels/.local/lib/python3.5/site-packages/buildstream/element.py", line 1041, in _update_state
self.__update_source_state()
File "/home/niels/.local/lib/python3.5/site-packages/buildstream/element.py", line 1909, in __update_source_state
source._update_state()
File "/home/niels/.local/lib/python3.5/site-packages/buildstream/source.py", line 577, in _update_state
self.__consistency = self.get_consistency()
File "/home/niels/.local/lib/python3.5/site-packages/buildstream/plugins/sources/ostree.py", line 169, in get_consistency
self.ensure()
File "/home/niels/.local/lib/python3.5/site-packages/buildstream/plugins/sources/ostree.py", line 181, in ensure
self.repo = _ostree.ensure(self.mirror, True)
File "/home/niels/.local/lib/python3.5/site-packages/buildstream/_ostree.py", line 66, in ensure
repo.reload_config()
AttributeError: 'Repo' object has no attribute 'reload_config'
What is the expected correct behavior?
$ ~/gnome-build-meta$ bst build --track-all sdk/gtk+-3.bst
Minimum required version for ostree plugin is v2017.8, please upgrade
Other relevant information
- BuildStream version affected:
1.2.3