# Copyright 2018 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the License);
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an AS IS BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

steps:
- name: 'gcr.io/cloud-builders/docker'
  entrypoint: 'bash'
  args:
  - '-c'
  - |
    cat <<EOF | docker build -t bazel -
    FROM gcr.io/cloud-builders/bazel
    RUN apt-get update && apt-get install -y mtools
    EOF
- name: 'bazel'
  args: ['test', '--remote_cache=${_BUILD_TOOLS_CACHE}', '--google_default_credentials', '--spawn_strategy=standalone','--','...','-//src/pkg/tools/...']
- name: 'bazel'
  args: ['run', '--remote_cache=${_BUILD_TOOLS_CACHE}', '--google_default_credentials', '--spawn_strategy=standalone', ':cos_customizer', '--', '--norun']
- name: 'gcr.io/cloud-builders/docker'
  args: ['tag', 'bazel:cos_customizer', 'gcr.io/${_OUTPUT_PROJECT}/cos-customizer:${TAG_NAME}']
- name: 'gcr.io/cloud-builders/docker'
  args: ['tag', 'bazel:cos_customizer', 'gcr.io/${_OUTPUT_PROJECT}/cos-customizer:latest']
- name: 'gcr.io/louhi-prod-1/louhi-helper-v2:latest'
  args: ['sbom_scan_image', '--regex', 'gcr\\.io/${_OUTPUT_PROJECT}/cos-customizer:${TAG_NAME}']
options:
  machineType: 'N1_HIGHCPU_8'
  substitutionOption: 'MUST_MATCH'
substitutions:
  _BUILD_TOOLS_CACHE: 'https://storage.googleapis.com/cos-infra-prod_cloudbuild/cos-tools-cache'
  _SBOM_BUCKET: 'cos-container-sbom-staging' # default value
# 25 minute timeout; concurrent arm64/amd64 builds take time
timeout: '1500s'
images:
- 'gcr.io/${_OUTPUT_PROJECT}/cos-customizer:${TAG_NAME}'
- 'gcr.io/${_OUTPUT_PROJECT}/cos-customizer:latest'
artifacts:
  objects:
    location: 'gs://${_SBOM_BUCKET}/cos-customizer/'
    paths: ['/workspace/cos-customizer:${TAG_NAME}_sbom.json']
