二逼的方式解决 gitlab-runner 拉取代码需要登录的问题
前言
公司使用gitlab-runner作为CICD的工具,之前都是把仓库创建成public的权限,自动化拉取代码、编译、打包、上传稳稳当当一把梭,毫无违和感,突然一天一个同事创建了一个internal权限的仓库,然后 clone GG 了!?!
解决办法
大家肯定想的是,配置一个ssh key免密登录不就好了,然而公司的gitlab只能用http的形式,ssh key免密登录搁浅。
所以我们只能使用记住密码的形式
// 配置全局用户
git config --global user.name "auto-cicd"
git config --global user.email "auto-cicd@company.com"
// 配置存储密码
git config --global credential.helper store
// 使用用户名密码登录一次仓库,使其记住密码
git clone http://username:password@gitlab.com/auto-cicd/cicd-test.git
大功告成......想太多了~
新的问题
gitlab-runner安装的时候根据官网的步骤一把梭下来,创建了一个gitlab-runner的用户,而当前执行命令的不是gitlab-runner用户,所以clone照样GG。
而且官网创建用户的时候,并没有设置密码,本来想用gitlab-runner用户登录后去执行,然而我并不会怎么登录...
最终解决
只能使大招了,既然我不知道怎么用gitlab-runner执行,gitlab-runner自己知道啊,所以在gitlab上创建一个测试项目,开启自动化,把它的自动化脚本配置成上面的代码即可。
执行一次后就保存密码了,之后如果修改密码,在执行一次即可。
分类:
git
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫