Add Makefile targets to fetch schema from cli
Signed-off-by: Hasan Turken <turkenh@gmail.com>
This commit is contained in:
parent
d656e1e9be
commit
dbdd316357
25
Makefile
25
Makefile
|
@ -53,6 +53,31 @@ DOCKER_REGISTRY ?= crossplane
|
||||||
IMAGES = provider-jet-template provider-jet-template-controller
|
IMAGES = provider-jet-template provider-jet-template-controller
|
||||||
-include build/makelib/image.mk
|
-include build/makelib/image.mk
|
||||||
|
|
||||||
|
# ====================================================================================
|
||||||
|
# Setup Terraform for fetching provider schema
|
||||||
|
TERRAFORM := $(TOOLS_HOST_DIR)/terraform-$(TERRAFORM_VERSION)
|
||||||
|
TERRAFORM_WORKDIR := $(WORK_DIR)/terraform
|
||||||
|
TERRAFORM_PROVIDER_SCHEMA := config/schema.json
|
||||||
|
|
||||||
|
$(TERRAFORM):
|
||||||
|
@$(INFO) installing terraform $(HOSTOS)-$(HOSTARCH)
|
||||||
|
@mkdir -p $(TOOLS_HOST_DIR)/tmp-terraform
|
||||||
|
@curl -fsSL https://releases.hashicorp.com/terraform/1.1.4/terraform_1.1.4_$(SAFEHOST_PLATFORM).zip -o $(TOOLS_HOST_DIR)/tmp-terraform/terraform.zip
|
||||||
|
@unzip $(TOOLS_HOST_DIR)/tmp-terraform/terraform.zip -d $(TOOLS_HOST_DIR)/tmp-terraform
|
||||||
|
@mv $(TOOLS_HOST_DIR)/tmp-terraform/terraform $(TERRAFORM)
|
||||||
|
@rm -fr $(TOOLS_HOST_DIR)/tmp-terraform
|
||||||
|
@$(OK) installing terraform $(HOSTOS)-$(HOSTARCH)
|
||||||
|
|
||||||
|
$(TERRAFORM_PROVIDER_SCHEMA): $(TERRAFORM)
|
||||||
|
@$(INFO) generating provider schema for $(TERRAFORM_PROVIDER_SOURCE) $(TERRAFORM_PROVIDER_VERSION)
|
||||||
|
@mkdir -p $(TERRAFORM_WORKDIR)
|
||||||
|
@echo '{"terraform":[{"required_providers":[{"provider":{"source":"'"$(TERRAFORM_PROVIDER_SOURCE)"'","version":"'"$(TERRAFORM_PROVIDER_VERSION)"'"}}],"required_version":"'"$(TERRAFORM_VERSION)"'"}]}' > $(TERRAFORM_WORKDIR)/main.tf.json
|
||||||
|
@$(TERRAFORM) -chdir=$(TERRAFORM_WORKDIR) init > $(TERRAFORM_WORKDIR)/terraform-logs.txt 2>&1
|
||||||
|
@$(TERRAFORM) -chdir=$(TERRAFORM_WORKDIR) providers schema -json=true > $(TERRAFORM_PROVIDER_SCHEMA) 2>> $(TERRAFORM_WORKDIR)/terraform-logs.txt
|
||||||
|
@$(OK) generating provider schema for $(TERRAFORM_PROVIDER_SOURCE) $(TERRAFORM_PROVIDER_VERSION)
|
||||||
|
|
||||||
|
generate.init: $(TERRAFORM_PROVIDER_SCHEMA)
|
||||||
|
|
||||||
# ====================================================================================
|
# ====================================================================================
|
||||||
# Targets
|
# Targets
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue