GitHub is a popular repository for hosting software projects, both due to ease of use and the seamless integration with its testing environment. Native GitHub Actions make it easy for software developers to validate new commits and have confidence that new code does not introduce major bugs. The freely available test environments are limited to only a few popular setups but can be extended with custom Action Runners. Our team had access to a Kubernetes cluster with GPU accelerators, so we explored the feasibility of automatically deploying GPU-providing runners there. All available Kubernetes-based setups, however, require cluster-admin level privileges. To address this problem, we developed a simple custom setup that operates in a completely unprivileged manner. In this paper we provide a summary description of the setup and our experience using it in the context of two Knight lab projects on the Prototype National Research Platform system.
翻译:GitHub是一个流行的软件项目托管仓库,其易用性和与测试环境的无缝集成使其广受欢迎。原生GitHub Actions使软件开发人员能够轻松验证新提交,确保新代码不会引入重大错误。免费提供的测试环境仅限于少数常见配置,但可通过自定义Action运行器进行扩展。我们的团队可访问一个配备GPU加速器的Kubernetes集群,因此我们探索了在此自动部署提供GPU的运行器的可行性。然而,所有现有的基于Kubernetes的配置都需要集群管理员级别的权限。为解决这一问题,我们开发了一种完全以非特权方式运行的简单自定义配置。本文总结了该配置的概要描述,以及我们在原型国家研究平台系统上的两个Knight实验室项目中使用的经验。