我们使用Jenkins作为我们iOS团队的CI服务器,具有以下设置:
OSX上的主服务器,没有运行任何作业
OSX上的2个从站运行我们的集成作业+ UI测试
目前,应用程序的所有签名身份和配置文件都被上传到每个从属设备,这使得管理过程繁琐,并且向集群添加新节点更加痛苦.
为了解决这个问题,我们研究了如何在开发人员配置文件中使用凭证插件,并将配置文件作为所有iOS作业的第一个构建步骤导入,但是面临主要问题:
导入开发人员配置文件似乎是第一次工作(至少用于创建钥匙串条目),但是即使开发人员配置文件包含目标所需的所有配置文件,作业也会因"无匹配的配置文件"错误而失败.
在同一作业上的第二次运行总是失败,并且"Keychain has exist"错误
我们尝试了一些解决第二个问题的方法,添加一个shell构建步骤,删除特定的钥匙串,但仍然面临第一个错误.如果我们在slave上手动安装配置文件,则构建会通过,但这会破坏使用凭据插件的目的.
你们有什么感想?