istio.io/istio@v0.0.0-20240520182934-d79c90f27776/pkg/test/fakes/imageregistry/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 build_and_push clean all
    16  
    17  MKFILE_PATH := $(abspath $(lastword $(MAKEFILE_LIST)))
    18  MD_PATH := $(dir $(MKFILE_PATH))
    19  HUB ?= gcr.io/istio-testing
    20  IMG := $(HUB)/fake-registry
    21  BIN_NAME := main
    22  
    23  # NOTE: TAG should be updated whenever changes are made in this directory
    24  # This should also be updated in dependent components
    25  TAG := 1.3
    26  
    27  all: build_and_push clean
    28  
    29  $(MD_PATH)/$(BIN_NAME)-amd64: $(MD_PATH)/main.go
    30  	cd $(MD_PATH) && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o $(BIN_NAME)-amd64 -a -tags netgo -ldflags '-w -extldflags "-static"' main.go
    31  
    32  $(MD_PATH)/$(BIN_NAME)-arm64: $(MD_PATH)/main.go
    33  	cd $(MD_PATH) && CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -o $(BIN_NAME)-arm64 -a -tags netgo -ldflags '-w -extldflags "-static"' main.go
    34  
    35  build: $(MD_PATH)/$(BIN_NAME)-amd64  $(MD_PATH)/$(BIN_NAME)-arm64
    36  
    37  build_and_push: build
    38  	docker buildx build --platform=linux/amd64,linux/arm64 $(MD_PATH) -t $(IMG):$(TAG) -t $(IMG):latest --push
    39  
    40  clean:
    41  	rm $(MD_PATH)/$(BIN_NAME)-*