istio.io/istio@v0.0.0-20240520182934-d79c90f27776/pkg/test/fakes/gce_metadata_server/Makefile (about)

     1  # Copyright Istio Authors
     2  #
     3  # Licensed under the Apache License, Version 2.0 (the "License");
     4  # you may not use this file except in compliance with the License.
     5  # You may obtain a copy of the License at
     6  #
     7  #     http://www.apache.org/licenses/LICENSE-2.0
     8  #
     9  # Unless required by applicable law or agreed to in writing, software
    10  # distributed under the License is distributed on an "AS IS" BASIS,
    11  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  # See the License for the specific language governing permissions and
    13  # limitations under the License.
    14  
    15  .PHONY: build_and_push clean all
    16  
    17  MKFILE_PATH := $(abspath $(lastword $(MAKEFILE_LIST)))
    18  MD_PATH := $(dir $(MKFILE_PATH))
    19  IMG ?= gcr.io/istio-testing/fake-gce-metadata
    20  
    21  # NOTE: TAG should be updated whenever changes are made in this directory
    22  # This should also be updated in dependent components
    23  TAG := 1.2
    24  
    25  all: build_and_push clean
    26  
    27  build_and_push:
    28  	cd $(MD_PATH) && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o main-amd64 -a -tags netgo -ldflags '-w -extldflags "-static"' main.go
    29  	cd $(MD_PATH) && CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -o main-arm64 -a -tags netgo -ldflags '-w -extldflags "-static"' main.go
    30  	docker buildx build --platform=linux/amd64,linux/arm64  $(MD_PATH) -t $(IMG):$(TAG) --push
    31  
    32  clean:
    33  	rm $(MD_PATH)/main-*