构建自定义Python Guix包时如何禁用单元测试?
解决Guix构建自定义Python包时禁用单元测试的问题
问题背景
基于dirsearch制作自定义Guix包时,构建阶段自动运行单元测试导致失败,即便尝试配置禁用测试,构建流程仍会执行测试环节。
正确禁用测试的两种方法
在Guix的包定义中,有两种可靠方式彻底跳过单元测试:
方法1:直接禁用测试阶段
在包的arguments参数里添加#:tests? #f,示例代码:
(package (name "python-dirsearch") ;; 其余包定义内容(版本、源码、依赖等) (arguments (list #:tests? #f ; 直接关闭测试阶段 #:phases (modify-phases %standard-phases ;; 你的其他阶段自定义配置 ))))
方法2:从标准阶段中删除check环节
如果需要更灵活地调整构建阶段,可以直接移除check阶段:
(package (name "python-dirsearch") ;; 其余包定义内容 (arguments (list #:phases (modify-phases %standard-phases (delete 'check) ; 删除测试阶段 ;; 你的其他阶段自定义配置 ))))
补充说明
之前的配置可能仅修改了check阶段的执行逻辑,未彻底跳过该阶段。上述两种方法都能完全阻止Guix运行单元测试,解决因测试失败导致的构建中断问题。
内容的提问来源于stack exchange,提问作者Nutritioustim
相关产品推荐
相关产品推荐

