Как вернуть провайдеру TemplateVariableInfo информацию, полученную из файла ctx.version_file? - PullRequest
0 голосов
/ 21 января 2020

Я хотел бы создать пользовательские переменные Make из содержимого моего файла "volatile-status.txt" в Bazel. Этот файл содержит такие строки, как SEM_VERSION_TSDB 0.0.1. Исходя из этой строки в качестве примера, я хотел бы сделать {SEM_VERSION_TSDB} моей переменной Make и 0.0.1 ее значением, таким образом возвращая что-то вроде:

return [
        platform_common.TemplateVariableInfo({
            "SEM_VERSION_TSDB": "0.0.1",
        }),
    ]

В качестве примера, использование этого будет в файле BUILD, например:

myrule(
  name = "push_my_artifact",
  tag = "TSDB-{SEM_VERSION_TSDB}",
)

Где "тег" будет преобразован в TSDB-0.0.1 в рамках правила.

Хотя я могу использовать cxt.actions.run... для анализа этого файл, все эти действия, кажется, просто выводят другой объект файла. Я очень запутался, как передать любой разобранный текст этому провайдеру. Можно ли преобразовать этот объект выходного файла в dict (), чтобы я мог передать его возвращенному провайдеру platform_common.TemplateVariableInfo()? Как еще это можно сделать?

...