jenkins - 如何在推送到用户的主分支之前在 github 或 jenkins 上设置密码
问题描述
Jenkins 的配置方式是,每次运行命令 git push origin master 时,都会将自动部署设置到生产环境。git 上的每个用户都可以推送到 master 我想知道如何限制对生产环境的访问,例如如何配置 git 或 jenkins 在继续部署到生产环境之前要求输入密码?
解决方案
您不能要求额外的密码才能推送到 GitHub 上的特定分支。Git 除了为 HTTPS 或普通 SSH 身份验证(在 GitHub 上意味着只是一个公钥)为 SSH 提供单个用户名和密码外,无法提供任何东西。
如果您想限制人们自动部署,有一些选项。首先,您可以使用 GitHub 的受保护分支功能来限制直接推送,master
并要求人们使用拉取请求在此处合并。然后,您可以提出审查要求(使用 CODEOWNERS 或其他方式),要求 CI 作业通过,并实施其他检查。
另一种选择是使用某种外部部署机制,而不是使用直接推送到 master,然后您可以使用该服务来施加您喜欢的任何限制。
推荐阅读
- python - 使用循环创建同一图像的多个实例,我可以独立移动图像的每个实例吗?
- python - 如何使用 Python 通过 API Gateway 在 AWS lambda 中获取 HTTP POST 数据
- javascript - 图片加载后何时触发滚动
- encryption - 谷歌驱动 OAuth2:TokenResponse 文件的加密使用?
- r - 使用 R 中的插入符号识别 PLSDA 模型中的重要变量:系数是否标准化?
- java - 如何正确设置 api 调用以搜索用户货币指定的货币
- excel-formula - Excel公式中的多个IF OR条件
- javascript - 异步/等待示例不起作用。我究竟做错了什么
- sql - COUNT() 函数不适用于 oracle 中的 ID?检查了网站上的所有主题,没有人适合我
- android - 片段的状态没有被保留