对于我的https://github.com/bkimminich/juice-shop项目,我使用Sourceforge(https://sourceforge.net/p/juice-shop/files/github_webhook
)提供的webhook在GitHub触发Release
事件时在那里创建一个版本。这个webhook选择附加到该版本的所有文件(在GitHub上)并将它们上传到Sourceforge。到目前为止,非常好。
我现在的问题是,我在CI / CD过程中将更多文件附加到发行版 ,即在Tavis-CI和Appveyor上构建的预打包分发存档。这些不会成为Sourceforge,,因为它们在最初执行webhook时尚不存在。在更改(即附加更多文件)上没有自动重新触发webhook到GitHub版本,它似乎。
此问题的解决方法是手动重新触发上一次webhook调用,然后调用所有文件,包括稍后添加的文件,并将它们上传到Sourceforge。
但这是一个手动过程,所以它打破了我的自动化链中的最后一步。有没有办法正确自动化?
答案 0 :(得分:0)
这是GitHub支持团队的正式答案,明确建议选择第一个选项:
在您拥有其中的所有文件之前,不要发布该版本。相反,创建预发布或草稿发布,然后触发 Travis / Appveyor构建您需要的文件,然后将文件添加到 发布,最后发布发布。 webhook将是 发布时发布的所有文件都被触发 将出席。
使用其他文件更新发布后,使用API获取这些文件并将其上传到SourceForge。我不确定 SourceForge提供了在其结束时执行此操作所必需的API,因此 你需要向他们征求意见。
使用其他文件更新发行版后,取消发布该发行版并再次发布。这应该触发webhook 再次,您可以通过API执行此步骤。