私人仓库与docker build

时间:2018-05-09 21:49:22

标签: docker end-to-end endly

我的应用程序使用公共和私有github第三方依赖项, 我正在尝试使用endly(https://github.com/viant/endly),

在docker容器中构建我的应用程序

当我运行endly -r = app时,我看到以下问题: 克隆到'/tmp/go/src/github.com/xxxx/private_repo'...... remote:用户名或密码无效。

如何指定私人存储凭据,出于安全考虑,我不想在任何地方对原始凭据进行硬编码。

的app.yaml

defaults:
 version: 1.1
  app: myapp
  sdk: go:1.9
pipeline:
  build:
    workflow: app/docker/build
    origin:
      URL: ./../
      credentials: localhost
    buildPath: /tmp/go/src/github.com/myapp
    commands:
      - export GOPATH=/tmp/go
      - cd $buildPath/myapp
      - go get -u .
      - export CGO_ENABLED=0
      - go build -o $app
      - chmod +x $app
    download:
      /$buildPath/${app}: $releasePath

1 个答案:

答案 0 :(得分:0)

Endly使用加密凭证来处理机密,它还会混淆stdout和日志中的条目。

在你的构建中,私有身份验证在go -u。之后发生,所以请确保添加以下内容:

  1. 导出GIT_TERMINAL_PROMPT = 1以提示终端上的身份验证
  2. 在〜/ .secret /
  3. 中添加具有github密钥和引用条目的秘密节点
  4. 添加可选的终端凭证输入:

    • $输出:/用户名/? $ {github.username}
    • $输出:/密码/? $ {github.password}
  5. @ app.yaml中

    $resultArray['FirstBranch'] = array_fill_keys($months, ['Value', '%', 'Unit']);
    

    使用以下内容see more about secret