我们有一个工具可以为公司中的所有团队提供ci / cd工作流。作为工具链配置的一部分,我们还将自动创建openshift项目。 我正在尝试为个人团队的部署过程找到最佳的自动化培训策略
这是我们目前正在做的事情
{% include some-folder/some-file-2.html %}
{% include some-folder/some-file-3.html %}
{% include some-folder/some-file-4.html %}
现在,我们为帐户testuser检索api令牌 oc describe sa testuser(获取testuser的预定义令牌) oc描述秘密testuser-token-gd9sl(获取会话令牌)
通过describe secret命令,我们可以检索api令牌。我们将这些api令牌提供给各个团队。
Create a project (eg: testproject)
Create a service account(oc create sa testuser)
Add user to admin role for the project (oc policy add-role-to-user admin system:serviceaccount:testproject:testuser)
这种方法正确吗?有退货吗?有更好的方法吗?谁能建议
答案 0 :(得分:0)
这是我的建议,它可以更好地实现自动对象处理(我希望如此)。
创建新的project
时应执行上述过程(创建sa
和project
),然后可以通过project template
-Modifying the Template for New Projects使用该任务
例如,您可以在模板中包含serviceaccount yaml
定义。
答案 1 :(得分:0)
我们几乎以相同的方式进行操作。 在Jenkins管道中,我们通过模板yaml文件创建一个项目。 这包括项目元数据和注释,以管理员身份关联的命名用户(请求者的LDAP登录名)和一些预定义的拉取机密。 使用MFA的Keycloak保护登录Openshift的安全。之后,管理员帐户自己可以根据需要编辑成员资格并添加服务帐户。
我们也没有修改默认项目模板。