From 3ffd239a9dc17fd2ebb95c8a423705bb3f67e537 Mon Sep 17 00:00:00 2001 From: "j.spijker@ultimaker.com" Date: Fri, 17 Jun 2022 18:07:15 +0200 Subject: [PATCH] Add a PycharmRunEnv Generator This will generate a Pycharm run target and use the conan paths Contributes to CURA-9365 --- generators/PyCharmRunEnv.py | 46 +++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 generators/PyCharmRunEnv.py diff --git a/generators/PyCharmRunEnv.py b/generators/PyCharmRunEnv.py new file mode 100644 index 0000000..18624b2 --- /dev/null +++ b/generators/PyCharmRunEnv.py @@ -0,0 +1,46 @@ +from pathlib import Path + +from jinja2 import Template + +from conan.tools.env import VirtualRunEnv +from conans.model import Generator + + +class PyCharmRunEnv(Generator): + run_xml = Template(r""" + + + + """) + + @property + def filename(self): + return str(Path(self.conanfile.source_folder).joinpath(".run", f"{self.conanfile.name}.run.xml")) + + @property + def content(self): + run_env = VirtualRunEnv(self.conanfile) + env = run_env.environment() + envvars = env.vars(self.conanfile, scope = "run") + return self.run_xml.render(name = self.conanfile.name, envvars = envvars, + entrypoint = self.conanfile.conan_data["runinfo"][self.conanfile._conan_data_version]["entrypoint"])