istio.io/istio@v0.0.0-20240520182934-d79c90f27776/tools/docker (about)

     1  #!/bin/bash
     2  
     3  # Copyright Istio Authors. All Rights Reserved.
     4  #
     5  # Licensed under the Apache License, Version 2.0 (the "License");
     6  # you may not use this file except in compliance with the License.
     7  # You may obtain a copy of the License at
     8  #
     9  #    http://www.apache.org/licenses/LICENSE-2.0
    10  #
    11  # Unless required by applicable law or agreed to in writing, software
    12  # distributed under the License is distributed on an "AS IS" BASIS,
    13  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14  # See the License for the specific language governing permissions and
    15  # limitations under the License.
    16  
    17  # Setup env vars
    18  source ./common/scripts/setup_env.sh
    19  
    20  set -eu
    21  
    22  # Speed up builds when using recent CPUs
    23  export GGCR_EXPERIMENT_SHA256_SIMD=1
    24  
    25  if [[ -f ${LOCAL_OUT}/docker-builder ]]; then
    26    CURRENT_BUILD="$(./common/scripts/report_build_info.sh | grep buildGitRevision | cut -d= -f2)"
    27    PREBUILT="$(${LOCAL_OUT}/docker-builder --version)"
    28    CODE_CHG="$(git diff HEAD -- ./tools/docker-builder)"
    29    if [[ "${CURRENT_BUILD}" != "${PREBUILT}" ]] || [[ -n "${CODE_CHG}" ]]; then
    30      GOOS=${LOCAL_GO_OS} GOARCH=${LOCAL_GO_ARCH} ./common/scripts/gobuild.sh ${LOCAL_OUT}/docker-builder ./tools/docker-builder
    31    fi
    32  else
    33    GOOS=${LOCAL_GO_OS} GOARCH=${LOCAL_GO_ARCH} ./common/scripts/gobuild.sh ${LOCAL_OUT}/docker-builder ./tools/docker-builder
    34  fi
    35  ${LOCAL_OUT}/docker-builder "$@"