Google CloudBuild артефакты YAML - PullRequest
0 голосов
/ 29 августа 2018

Я ознакомился с документацией по Google CloudBuild здесь: https://cloud.google.com/cloud-build/docs/configuring-builds/store-images-artifacts

Итак, вот моя cloudbuild.yaml конфигурация:

steps:
- name: gcr.io/cloud-builders/git
id: git-checkout
args: [ 'fetch','--tags','--unshallow']
- name: openjdk
id: gradle-build
args: [
    './gradlew',
    '--build-cache',
    '-Si',
    '-Panalytics.buildId=$BUILD_ID',
    '-PgithubToken=$_GITHUB_TOKEN',
    '-g', '$_GRADLE_CACHE',
    'build'
]
artifacts:
objects:
    location: ['gs://my-bucket/artifacts/']
    paths: ["build/libs/*.jar"]

Если я закомментирую следующее, то оно успешно выполнится:

artifacts:
objects:
    location: ['gs://my-bucket/artifacts/']
    paths: ["build/libs/*.jar"]

Без комментариев я получаю следующую ошибку из консоли CloudBuild:

failed unmarshalling build config cloudbuild.yaml: json: cannot unmarshal array into Go value of type string

А в разделе Журналы просто говорится: Журналы недоступны .

Ответы [ 3 ]

0 голосов
/ 28 ноября 2018

Я также столкнулся с этой ошибкой с разделом моего файла cloudbuild.yaml, похожим на:

- name: 'gcr.io/cloud-builders/git'
  args:
  - clone 
  - -depth
  - 1
  - --single-branch
  - -b
  - development
  - git@bitbucket.org:aoaoeuoaeuoeaueu/oaeueoaueoauoaeuo.git
  volumes:
  - name: 'ssh'
    path: /root/.ssh

Кажется, проблема в 1. Поэтому я просто добавил кавычки, вокруг которых это исправлено (- "1").

0 голосов
/ 23 апреля 2019

objects.location элемент не должен быть массивом.

Должно работать следующее:

artifacts:
  objects:
    location: 'gs://my-bucket/artifacts/'
    paths: ["build/libs/*.jar"]
0 голосов
/ 08 сентября 2018

Возможно, вам понадобится отступ objects: строка

artifacts:
  objects:
    location: ['gs://my-bucket/artifacts/']
    paths: ["build/libs/*.jar"]
...