我正在按照 docker Github 操作 的示例来创建我自己的操作。我想将操作保留在我的组织中的私有存储库中,然后从同一组织下的另一个存储库中重复使用它。
文档指出 “当操作位于私有存储库中时,该操作只能在同一存储库中的工作流程中使用”但是,据我了解,它不涵盖此类操作在组织上下文中的行为方式 - 仅在独立的回购上下文中。我是否必须将其公开并投放到市场上,才能在我自己的私人组织中重复使用它?
有人有设置此类操作的经验吗?
扩展@MujtabaMehdi的答案:复制实际上可以作为操作本身的一部分来完成:
-
uses: actions/checkout@v3
with:
repository: your-org/your-action
path: your-action
-
uses: ./your-action
(这会污染当前文件夹。我最初尝试将操作签出到
/tmp/your-action
,但是uses
只接受以./
开头的路径。您仍然可以使用./../your-action
将其放在父目录中,但是 checkout
也不想在那里写任何东西-.-.)
Github 引入了一个新的存储库共享选项,称为内部。 通过内部存储库,可以跨存储库共享操作。 请注意,只有某些类型的组织帐户有权使用此可见性选项。
https://dev.to/n3wt0n/finally-custom-github-actions-in-internal-repos-4l91
我最近向 GitHub 市场发布了一个自定义操作, 您有两个选择:
uses: ./
如果这能解决您的问题,请告诉我,谢谢