conan-io/hooks

Handle configurations of hooks

Open

#32 创建于 2019年1月31日

在 GitHub 查看
 (9 评论) (0 反应) (0 负责人)Python (45 fork)auto 404
help wanted

仓库指标

Star
 (34 star)
PR 合并指标
 (PR 指标待抓取)

描述

As soon as hooks start to proliferate there will be more and more environment variables to configure them, I think we should consider that risk and think about alternatives, there could be a better approach. It is time for brainstorming:

  • Do nothing, hooks will start to introduce env variables (there are already some of them), I think it could be a mess in the long term

  • Use a json file to handle the configuration of all the hooks (shareable with a conan config install), the HookManager could pass those variables in every function call:

    hooks_config.json

    {
        "hook_name_1": {
            "key1": "value",
            "key2": "value"
        },
        "hook_name_2": {
            "...": "..."
        }
    }
    

    hooks/hook_name_1.py

    ...
    def pre_export(..., config):
        assert config == {"key1": "value", "key2": "value"}
        ...
    
    def post_package(..., config):
        ...
    
  • add them to conan.conf file inside the cache

  • ...more ideas?

贡献者指南