我知道编辑这个网站吗?

Github 操作

GitHub通过Github Actions支持云端工作流程自动化。此功能对于自动化构建、部署和continuous integration的其他方面非常有用。

服务

SciJava项目以多种方式使用Github Actions:

  • 执行 SciJava 项目的构建。 Github Actions 将 SNAPSHOT 构建部署到 SciJava Maven repository,以响应到每个代码仓库的 main 分支。因此,任何依赖于给定组件的 LATEST 版本的下游项目都将与上次成功的 Github 构建匹配,即 main 上的最新代码。
  • 运行每个项目的相关unit tests。Github Actions 有助于及早发现代码库中引入的新错误。
  • 执行第 SciJava 项目中的第releases。 Github Actions 将发布版本部署到适当的 Maven 存储库 - 通常是 SciJava Maven 存储库或Maven Central via the Central Publisher Portal
  • 保持javadoc网站更新。
  • 保留其他网络资源的更新。

Maven工件的自动部署

将您的库房部署到 Maven 仓库储备配置其他开发人员使用。它也是contribution requirement for the Fiji project

##要求

##指示

  • 为了向存储库添加Github CI支持,需要以下秘密:A) 用于部署到Maven存储库;B) 在部署到Maven Central的情况下,用于工件的GPG签名。
  • 如果机密已添加到您的组织,并且您具有对 GitHub 上存储库的用户访问权限,则可以使用 github-actionify.sh script-f 标志来执行所需的相关操作。
  • 如果您有未提交的更改,github-actionify 脚本将返回 [ERROR] Dirty working copy。如果出现此错误,请使用 git status 检查存储库的状态,然后重新运行 github-actionify -f
  • 如果您需要帮助,请在开发类别中询问on the Image.sc Forum,或在 Image.sc Zulip 上的SciJava stream中询问。

    测试不能无头运行的东西

如果您的测试需要显示(即:它们在运行 headless 时未通过),您将在构建过程中收到错误,例如: No X11 DISPLAY variable was set, but this program performed an operation which requires it. Error: myTest Time elapsed: 0.097 s «< ERROR! 您可以使用Xvfb修复此问题,如下所示。 在您的存储库中有一个文件.github/workflows/build.yml。 在这个文件中应该有一些行: - name: Set up CI environment run: .github/setup.sh - name: Execute the build run: .github/build.sh
如果您按照如下所示修改显示并更改这些行,则需要的测试也应该可以工作。 - name: Set up CI environment run: .github/setup.sh - name: Install xvfb run: sudo apt-get install xvfb - name: Execute the build using xfvb run: xvfb-run –auto-servernum .github/build.sh 当然,您应该仅将其作为最后的手段,因为最好的单元测试首先不需要显示。