Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Api 检查Github回购是否使用Probot中的模板创建_Api_Github_Octokit_Probot - Fatal编程技术网

Api 检查Github回购是否使用Probot中的模板创建

Api 检查Github回购是否使用Probot中的模板创建,api,github,octokit,probot,Api,Github,Octokit,Probot,我有一个Github机器人(Probot),我用它来处理命名约定等方面的自动化 我也有很多团队,我们使用它们来控制可见性,我想知道当从特定模板创建回购协议时,是否可以使用Probot来分配特定团队的访问权限 然而,我分析了上下文对象,并在其中搜索模板repo名称,但似乎找不到确定repo从何处创建的可靠方法。也许我错过了什么,或者这根本不可能?见所附代码 const templateTeamAssignment = async (context) => { const { github

我有一个Github机器人(Probot),我用它来处理命名约定等方面的自动化

我也有很多团队,我们使用它们来控制可见性,我想知道当从特定模板创建回购协议时,是否可以使用Probot来分配特定团队的访问权限

然而,我分析了上下文对象,并在其中搜索模板repo名称,但似乎找不到确定repo从何处创建的可靠方法。也许我错过了什么,或者这根本不可能?见所附代码

const templateTeamAssignment = async (context) => {
  const { github, payload } = context;
  const repo = payload.repository.name;

  console.log("context", context);
};

module.exports = templateTeamAssignment;

有什么想法吗?

事件负载不包括您要查找的
模板存储库
属性。但是您可以通过使用RESTAPI调用或GraphQL查询检索存储库的信息来检索信息。例如,试试这个

const{template\u repository}=wait context.github.repos.get(context.repo())

如果
template\u repository
未设置,则表示该存储库不是使用模板存储库创建的。

事件负载不包括您要查找的
template\u repository
属性。但是您可以通过使用RESTAPI调用或GraphQL查询检索存储库的信息来检索信息。例如,试试这个

const{template\u repository}=wait context.github.repos.get(context.repo())

如果
template\u repository
未设置,则表示该存储库不是使用模板存储库创建的。

不幸的是,我认为目前不可能这样做。我确实设法弄明白了
baptiste预览
需要作为标题提供,以便在结果中显示
is\u模板
template\u存储库
属性。它们也只能在
listForOrg()
函数中看到,因此我必须循环搜索结果以找到单个回购信息

const templateTeamAssignment = async (context) => {
  const { github, payload } = context;
  const repo = payload.repository.name;

  console.log("context", context);

  console.log("stackOverflow", await context.github.repos.get(context.repo()));
  console.log(
    "stackOverflow",
    await context.github.repos.listForOrg({
      org: payload.organization.login,
      headers: {
        accept: "application/vnd.github.baptiste-preview+json",
      },
    })
  );
};

当我实现这一点时,我能够看到
is_template
属性,但看不到
template_repository
,这让我认为它还不够稳定,无法用于生产,API文档上的警告证实了这一点。想知道目前是否有人成功获得了
模板库
属性?

不幸的是,我认为目前不可能做到这一点。我确实设法弄明白了
baptiste预览
需要作为标题提供,以便在结果中显示
is\u模板
template\u存储库
属性。它们也只能在
listForOrg()
函数中看到,因此我必须循环搜索结果以找到单个回购信息

const templateTeamAssignment = async (context) => {
  const { github, payload } = context;
  const repo = payload.repository.name;

  console.log("context", context);

  console.log("stackOverflow", await context.github.repos.get(context.repo()));
  console.log(
    "stackOverflow",
    await context.github.repos.listForOrg({
      org: payload.organization.login,
      headers: {
        accept: "application/vnd.github.baptiste-preview+json",
      },
    })
  );
};

当我实现这一点时,我能够看到
is_template
属性,但看不到
template_repository
,这让我认为它还不够稳定,无法用于生产,API文档上的警告证实了这一点。想知道目前是否有人成功获得了
模板库
属性?

不幸的是@Gregor没有做到这一点。它确实对
baptiste预览版
有所启发,我需要将其作为标题提供,以显示
is\u模板
template\u存储库
属性,如您所述。它们也仅在
listForOrg
功能中可见。当我实现这一点时,我能够看到
is_template
属性,但看不到
template_repository
,这让我认为它还不够稳定,无法用于生产,API文档上的警告证实了这一点。现在,除非你有其他想法,否则我将不得不放弃。预演将一个接一个地进行,它们应该相当稳定。我建议联系GitHub的支持,他们将能够提供最好的帮助。感谢@Gregor,如果我能成功地解决iTunes问题,我会尝试一下,并在这里报告@Gregor没有解决问题。它确实对
baptiste预览版
有所启发,我需要将其作为标题提供,以显示
is\u模板
template\u存储库
属性,如您所述。它们也仅在
listForOrg
功能中可见。当我实现这一点时,我能够看到
is_template
属性,但看不到
template_repository
,这让我认为它还不够稳定,无法用于生产,API文档上的警告证实了这一点。现在,除非你有其他想法,否则我将不得不放弃。预演将一个接一个地进行,它们应该相当稳定。我建议联系GitHub的支持,他们将能够提供最好的帮助。谢谢@Gregor,如果我能解决这个问题,我会尝试一下,并在这里报告