我正在为VSTS中的K8构建管道。我在NodeJS中编写了一组使用kubernetes-client的测试,以检查是否已正确部署了所有内容。
对于部署本身,我们创建了两个服务连接。我想访问与这些连接相关联的kube配置文件,以根据部署群集配置执行测试代码。
如果我们部署到staging env使用staging kubernetes配置,如果我们部署到prod使用另一个,那么长话短说。我可以提交这些配置,但这不是正确的方法。
我还尝试使用Rest端点_apis/distributedtask/serviceendpoints
,但我只能访问元数据而不是配置本身。
我也尝试在我的测试脚本中导入vsts任务库,但我无法进行身份验证。
const tl = require('vsts-task-lib/task');
let kubeconfig = tl.getEndpointAuthorizationParameter(endpointName, 'kubeconfig', false);
解决方法可能是创建一个自定义VSTS任务读取服务连接值并将其传递给输出,但我想这也不是正确的方法。
此致
答案 0 :(得分:0)
您可以将配置文件放入存储库或其他服务器(例如FTP),然后在构建/发布期间检索内容。
您还可以将其存储在服务端点中并通过自定义构建/发布任务(tl.getEndpointAuthorizationParameter(kubernetesEndpoint, 'kubeconfig', false);
)检索配置内容,您可以参考source code of Kubernetes task自定义构建/发布任务。
哪种方式更好是基于您的要求(例如简单,安全)。