* Enable CI Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de> * Add default local file for IaaS image test Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de> * Opensearch acceptance test typo Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de> * Postgresflex acceptance test fix ignore Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de> * Redis acceptance test remove mid uuid Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de> * Objectstorage acceptance test ignore region for import Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de> * Add more environment variables for CI build Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de> --------- Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
49 lines
1.4 KiB
Makefile
49 lines
1.4 KiB
Makefile
ROOT_DIR ?= $(shell git rev-parse --show-toplevel)
|
|
SCRIPTS_BASE ?= $(ROOT_DIR)/scripts
|
|
|
|
# SETUP AND TOOL INITIALIZATION TASKS
|
|
project-help:
|
|
@$(SCRIPTS_BASE)/project.sh help
|
|
|
|
project-tools:
|
|
@$(SCRIPTS_BASE)/project.sh tools
|
|
|
|
# LINT
|
|
lint-golangci-lint:
|
|
@echo "Linting with golangci-lint"
|
|
@$(SCRIPTS_BASE)/lint-golangci-lint.sh
|
|
|
|
lint-tf:
|
|
@echo "Linting examples"
|
|
@terraform fmt -check -diff -recursive examples
|
|
|
|
lint: lint-golangci-lint lint-tf
|
|
|
|
# DOCUMENTATION GENERATION
|
|
generate-docs:
|
|
@echo "Generating documentation with tfplugindocs"
|
|
@$(SCRIPTS_BASE)/tfplugindocs.sh
|
|
|
|
build:
|
|
@go build -o bin/terraform-provider-stackit
|
|
|
|
fmt:
|
|
@gofmt -s -w .
|
|
|
|
# TEST
|
|
test:
|
|
@echo "Running tests for the terraform provider"
|
|
@cd $(ROOT_DIR)/stackit && go test ./... -count=1 && cd $(ROOT_DIR)
|
|
|
|
test-acceptance-tf:
|
|
@if [ -z $(TF_ACC_PROJECT_ID) ]; then echo "Input TF_ACC_PROJECT_ID missing"; exit 1; fi
|
|
@if [ -z $(TF_ACC_ORGANIZATION_ID) ]; then echo "Input TF_ACC_ORGANIZATION_ID missing"; exit 1; fi
|
|
@if [ -z $(TF_ACC_TEST_IMAGE_LOCAL_FILE_PATH) ]; then \
|
|
echo "Input TF_ACC_TEST_IMAGE_LOCAL_FILE_PATH missing. Creating a default file for testing."; \
|
|
fi
|
|
@echo "Running acceptance tests for the terraform provider"
|
|
@cd $(ROOT_DIR)/stackit && TF_ACC=1 \
|
|
TF_ACC_PROJECT_ID=$(TF_ACC_PROJECT_ID) \
|
|
TF_ACC_ORGANIZATION_ID=$(TF_ACC_ORGANIZATION_ID) \
|
|
go test ./... -count=1 -timeout=30m && \
|
|
cd $(ROOT_DIR)
|