GitLab CI+GitLab Runner+k8s排错汇总
在 Java 项目中打 tag,通常是指为版本或代码的特定状态打上标记,以方便追踪和管理。如果当前代码库没有任何 tag,或者还没有进行过打 tag 的操作,则会返回一个空字符串。将构建目录 /home/gitlab-runner/builds/MAUJwQAF/0/root清空,重新执行 pipeline,成功。gitlab-runner 拉取不成功,缓存?因为代码仓库的名字跟原来一样,会不会
一、
此作业已卡住,因为您未分配任何具有这些标签的可用runner: k8s-runner
运行了runner之后发现,卡住了,检查发现项目也就是代码中没有tag
处理:
在 Java 项目中打 tag,通常是指为版本或代码的特定状态打上标记,以方便追踪和管理。如果项目中没有标注 tag,可以按照以下步骤添加。
- 首先,您需要确认您的 Java 项目使用了版本控制系统(如 Git、SVN 等)对源代码进行管理。
- 打开命令行终端(Windows 系统中为 cmd),切换到您的 Java 项目目录下。
- 运行以下命令,为当前代码库打上一个新的 tag:
git tag
其中 是你自己定义的 tag 名称。 - 如果需要将 tag 推送到远程 Git 仓库,运行以下命令:
git push origin
其中 是你自己定义的 tag 名称。这将会把当前 tag 推送到名为 “origin” 的 Git 远程仓库。
这样,就为 Java 项目打上了一个新的 tag,并可以通过版本控制系统方便地管理项目的不同版本或状态。
在 Java 项目中,如果您使用的是 Git 或其他类似的版本控制系统,可以通过以下命令查看当前 tag 名称:
git describe --tags
该命令将返回当前代码库最新的 tag 名称。如果当前代码库没有任何 tag,或者还没有进行过打 tag 的操作,则会返回一个空字符串。
另外,如果您只想查看当前代码库中所有的 tag 列表,可以运行以下命令:
git tag
该命令将列出当前代码库中所有的 tag 名称,并按照字母顺序排序。
二、解决gitlab-runner拉取代码失败
解决
清理runner 构建目录
gitlab-runner 拉取不成功,缓存?? 因为代码仓库的名字跟原来一样,会不会 runner 构建目录里旧文件影响的??
将构建目录 /home/gitlab-runner/builds/MAUJwQAF/0/root清空,重新执行 pipeline,成功
三、代码中要准备的文件
.gitlab-ci.yml
Dockerfile
deployment.yaml
四,一些权限和文件目录创建
给runner用户赋予一些权限
如docker,mkdir, maven
五,
创建runner上,job可能会找不到runner。解决方式是:
选择这个按钮
Run untagged jobs
Indicates whether this runner can pick jobs without tags
runner和job匹配的规则是,runner的tag和项目的tag要相同。因为你的项目里可能没有标注tag,那么就要选择这个按钮。
六、Error: Cannot perform an interactive login from a non TTY device
增加全局变量或者是明文输入 镜像仓库的账户和密码
如:
定义全局环境变量(Instance-level environment variables)
GitLab CI/CD environment variables / Instance-level CI/CD environment variables | GitLab
问题描述
我们定义“全局环境变量”,以在各个项目中使用(而不是仅仅定义项目级环境变量或者组级别环境变量)。
解决方案
首先,保证 GitLab >= 13.1 版本。
然后,在 Admin Area’s Settings / CI/CD / Variables 中,点击 Add variable 设置;
更多推荐
所有评论(0)