这项工作被卡住了,因为该项目没有在线分配任何跑步者。转到跑步者页面

This job is stuck, because the project doesn't have any runners online assigned to it. Go to Runners page

我在学习CI/CD.

我已经从 Officicals 安装了 Gitlab 和 Gitlab Runner。但是每当 运行 maven-build 期间的管道时,工作就会卡住。我已经注册了 runner 并可用于我的项目,但工作卡住了

.gitlab-ci.yml

image: docker:latest
services:
- docker:dind

variables:
 DOCKER_DRIVER: overlay
 SPRING_PROFILES_ACTIVE: gitlab-ci

stages:
- build
- package
- deploy

maven-build:
 image: maven:3-jdk-8
 stage: build
 script: "mvn package -B"
 artifacts:
 paths:
  - target/*.jar

docker-build:
stage: package
script:
 - docker build -t registry.com/ci-cd-demo .
 - docker push registry.com/ci-cd-demo

k8s-deploy:
 image: google/cloud-sdk
 stage: deploy
 script:
  - echo "$GOOGLE_KEY" > key.json
  - gcloud container clusters get-credentials standard-cluster-demo -- 
  zone us-east1-c --project ascendant-study-222206
   - kubectl apply -f deployment.yml

我的跑步者设置

运行器已与项目关联时出现错误消息

请帮忙?

作业被卡住了,因为您的 运行ners 有标签,但您的作业没有。按照以下 4 个步骤使您的 运行 用户能够 运行 无标签:

或为您的工作设置标签。更多信息:Configuration of your jobs with .gitlab-ci.yml - Tags

确保您使用的是正确的标签,即与您的项目配置的运行器相对应的标签。

在你的情况下它会像:

maven-build:
 image: maven:3-jdk-8
 stage: build
 tags: my project ci-cd
 script: "mvn package -B"
 artifacts:
 paths:
  - target/*.jar

您还可以在文件 .gitlab-ci.yml:

中使用以下语法标记作业
stages:
  - check
  - build
  - test
  - analyze
  - package
  - release
  - deploy
nohttp:
  stage: check
  tags:
    - dev

此外,不要忘记将标签“dev”添加到项目的 specefic/shared 运行器中。

我这边很简单,我只是 运行 gitlab-runner run 在我的电脑上

在我的例子中,我不得不将管理区域中的标签从 'Tag1, Tag2' 修改为 'Tag1,Tag2'。空格导致了我的问题。

据我所知,普通用户无法检查 gitlab 服务器上可用的共享 运行ners 是否设置为仅 运行 标记的作业。

我建议 gitlab 在项目的 CI/CD 设置页面中将此添加到有关 运行ners 的信息中,即哪些 运行ners 可用,它们 运行 AND 他们是否只 运行 标记了职位。