# Copyright 2020 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.

substitutions:
  "_TEST": "seal_oem_test"
  "_INPUT_IMAGE": "cos-81-12871-148-0"
  "_INPUT_PROJECT": "cos-cloud"
steps:
- name: 'gcr.io/cloud-builders/bazel'
  args: ["run", "--spawn_strategy=standalone", ":cos_customizer", "--", "--norun"]
- name: 'bazel:cos_customizer'
  args: ["start-image-build",
         "-build-context=testing/${_TEST}",
         "-image-name=${_INPUT_IMAGE}",
         "-image-project=${_INPUT_PROJECT}",
         "-gcs-bucket=${PROJECT_ID}_cloudbuild",
         "-gcs-workdir=customizer-$BUILD_ID"]
- name: 'bazel:cos_customizer'
  args: ["run-script",
         "-script=preload.sh"]
- name: 'bazel:cos_customizer'
  args: ["seal-oem"]   
- name: 'bazel:cos_customizer'
  args: ["run-script",
         "-script=modify_oem.sh"]       
- name: 'bazel:cos_customizer'
  args: ["finish-image-build",
         "-zone=us-west1-b",
         "-project=$PROJECT_ID",
         "-image-name=preload-test-$BUILD_ID",
         "-image-project=$PROJECT_ID",
         "-disk-size-gb=11"]
- name: 'gcr.io/cloud-builders/docker'    
  args: [ 'build', '-t', 'seal-oem-test-timeout-image', 'testing/${_TEST}' ]    
- name: 'seal-oem-test-timeout-image'     
  entrypoint: '/bin/bash'    
  args:    
  - '-c'    
  - |    
    /daisy -default_timeout=5m -project=$PROJECT_ID -zone=us-west1-b \
    -var:image_name preload-test-$BUILD_ID -var:image_project $PROJECT_ID \
    -var:test_cfg /preload_test.cfg /run_test.wf.json | tee /build.log 
    if ( grep "did not complete within the specified timeout" /build.log > /dev/null ); \
    then exit 0; else echo "error: timemout expected"; exit 1; fi
options:
  machineType: 'N1_HIGHCPU_32'
timeout: "7200s"
