在.gitlab-ci.yml上找不到curl命令

时间:2017-09-04 05:58:24

标签: curl docker gitlab gitlab-ci gitlab-ci-runner

我有一个.gitlab-ci.yml文件。它创建了一些docker镜像并将其推送到AWS ECR。

当我运行curl命令将一些工件推送到远程存储库时,它说curl:not found。我已经在使用openjdk映像来完成./gradlew构建。不知道如何在Gitlab runner上安装curl。

请指导。

4 个答案:

答案 0 :(得分:3)

我能够通过使用apk实用程序来解决它。

apk add --update curl&& rm -rf / var / cache / apk / *

答案 1 :(得分:0)

我假设您正在使用基于slim的官方openjdk映像。因此,您可以编辑脚本的开头或在before_script中编辑:

假设您的脚本部分看起来像这样:

 - ./gradlew build

你会这样做:

 - apt-get update && apt-get install -y curl
 - ./gradlew build   

假设是错误的,请看下面的答案

答案 2 :(得分:0)

如果您使用的是docker:dind,则可以按照@Abhinav Mutreja的说明进行以下操作。

image: docker:stable

services:
  - name: docker:dind

stages:
  - example

example:
  stage: example
  before_script:
    - apk add --update curl && rm -rf /var/cache/apk/*
  script:
    - >
      curl google.com

答案 3 :(得分:0)

在流道容器中安装curl即可。这是一个示例:

trigger_xpub_epmc:
  stage: deploy
  image: docker:stable
  before_script:
    - apk add --update curl && rm -rf /var/cache/apk/*
  script:
    - curl -X POST -F token=xxxxx -F ref=master https://gitlab.example.com/api/v4/projects/1934/trigger/pipeline