Как отклонить регистрацию, если тесты завершаются неудачно в Google Cloud Build

#google-cloud-build #google-cloud-source-repos

# #google-облачная сборка #google-облако-исходный код-репозитории

Вопрос:

Я создал файл Docker и настроил его в качестве триггера для моего хранилища исходных текстов Google Cloud. Есть только несколько доступных вариантов, чтобы я выбрал «Отправить в ветку». Прямо сейчас мой образ docker может выполнять развертывание новой облачной функции (написанной с помощью golang) при новом нажатии. Я добавил тестовый шаг go в свой файл Docker. Я хочу отклонить фиксацию, если это приведет к сбою теста go, например, GitLab. Если тест go завершается неудачно, функция cloud обновляться не будет. Но плохой код останется там. Как реализовать эту функцию «отклонить код ошибки» в репозитории Google Cloud Source?

Ответ №1:

Это неполный или недостаточный ответ, но он слишком длинный для комментария, а фрагмент нуждается в форматировании.

Я подозреваю, что у вас есть файл сборки, который вы можете редактировать где-то под названием cloudbuild.yaml , в который вы можете добавить тестовый шаг.

Мы используем Github для наших репозиториев с плагином GCP. Хотя это отличается от исходного репозитория Google, мы обычно контролируем это, добавляя шаг в наш cloudbuild.yaml файл, например

 # build and run the test suite
  - name: 'python:3.8-slim' # add a go container here, see below
    id: 'Run Unit Tests'
    entrypoint: '/bin/bash'
    args: 
      - "-c"
      - "
      whattevercommandsyouwant amp;amp; 
      morecommands"
 

Это не завершено, но, надеюсь, это поможет вам решить проблему. И для справки, Google Cloud Build Go docs.