github.com/goharbor/go-client@v0.210.0/Makefile (about)

     1  SHELL := /usr/bin/env bash
     2  
     3  .DEFAULT_GOAL := help
     4  
     5  DOCKERCMD=$(shell which docker)
     6  SWAGGER_VERSION=v0.30.3
     7  SWAGGER := $(DOCKERCMD) run --rm -t -u "$(shell id -u):$(shell id -g)" -v $(shell pwd):/src -w /src quay.io/goswagger/swagger:$(SWAGGER_VERSION)
     8  
     9  ifeq ($(VERSION),)
    10  VERSION := v2.10.0
    11  endif
    12  
    13  HARBOR_2.0_SPEC=api/v2.0/swagger.yaml
    14  HARBOR_CLIENT_2.0_DIR=pkg/sdk/v2.0
    15  HARBOR_2.0_SPEC_URL=https://raw.githubusercontent.com/goharbor/harbor/$(VERSION)/api/v2.0/swagger.yaml
    16  
    17  ## --------------------------------------
    18  ## Help
    19  ## --------------------------------------
    20  
    21  help: ## Display this help
    22  	@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n  make \033[36m<target>\033[0m\n"} /^[a-zA-Z0-9_-]+:.*?##/ { printf "  \033[36m%-15s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST)
    23  
    24  ## --------------------------------------
    25  ## Client
    26  ## --------------------------------------
    27  
    28  .PHONY: update-spec
    29  update-spec: ## update all swagger spec files
    30  	@echo "Downloading spec from Harbor with version: $(VERSION)"
    31  	@wget ${HARBOR_2.0_SPEC_URL} -O ${HARBOR_2.0_SPEC}
    32  
    33  .PHONY: gen-harbor-api
    34  gen-harbor-api: update-spec ## generate goswagger client for harbor
    35  	@$(SWAGGER) generate client -f ${HARBOR_2.0_SPEC} --target=$(HARBOR_CLIENT_2.0_DIR) --template=stratoscale --additional-initialism=CVE --additional-initialism=GC --additional-initialism=OIDC
    36  
    37  .PHONY: cleanup
    38  cleanup:
    39  	rm --recursive --force pkg/sdk/v2.0/models pkg/sdk/v2.0/client
    40  
    41  .PHONY: test
    42  test: ## run the test
    43  	go test ./...
    44  
    45  get-go-version:
    46  	@echo "$(VERSION)" | sed -E "s/v([0-9]+)\.([0-9]+)\.([0-9]+)/v0.\1\2.\3/g" -
    47  
    48  all: cleanup gen-harbor-api