add installation of Gandi provider

Signed-off-by: Jakub Sokołowski <jakub@status.im>
This commit is contained in:
Jakub Sokołowski 2019-05-28 15:15:14 -04:00
parent f6760d053d
commit 2af9c92a53
No known key found for this signature in database
GPG Key ID: 4EF064D0E6D63020
1 changed files with 37 additions and 21 deletions

View File

@ -8,41 +8,57 @@ endif
PLUGIN_DIR = ~/.terraform.d/plugins PLUGIN_DIR = ~/.terraform.d/plugins
PROVIDER_NAME = terraform-provider-ansible GANDI_PROVIDER_NAME = terraform-provider-gandi
PROVIDER_VERSION = v0.0.4 GANDI_PROVIDER_VERSION = 1.0.1
PROVIDER_ARCHIVE = $(PROVIDER_NAME)-$(ARCH).zip GANDI_PROVIDER_ARCHIVE = $(GANDI_PROVIDER_NAME)-v$(GANDI_PROVIDER_VERSION).zip
PROVIDER_URL = https://github.com/nbering/terraform-provider-ansible/releases/download/$(PROVIDER_VERSION)/$(PROVIDER_ARCHIVE) GANDI_PROVIDER_URL = https://github.com/tiramiseb/terraform-provider-gandi/archive/v$(GANDI_PROVIDER_VERSION).zip
PROVISIONER_NAME = terraform-provisioner-ansible ANSIBLE_PROVIDER_NAME = terraform-provider-ansible
PROVISIONER_VERSION = v2.0.0 ANSIBLE_PROVIDER_VERSION = v0.0.4
PROVISIONER_ARCHIVE = $(PROVISIONER_NAME)-$(subst _,-,$(ARCH))_$(PROVISIONER_VERSION) ANSIBLE_PROVIDER_ARCHIVE = $(PROVIDER_NAME)-$(ARCH).zip
PROVISIONER_URL = https://github.com/radekg/terraform-provisioner-ansible/releases/download/$(PROVISIONER_VERSION)/$(PROVISIONER_ARCHIVE) ANSIBLE_PROVIDER_URL = https://github.com/nbering/terraform-provider-ansible/releases/download/$(PROVIDER_VERSION)/$(PROVIDER_ARCHIVE)
all: requirements install-provider install-provisioner secrets init-terraform ANSIBLE_PROVISIO_NAME = terraform-provisioner-ansible
ANSIBLE_PROVISIO_VERSION = v2.0.0
ANSIBLE_PROVISIO_ARCHIVE = $(PROVISIONER_NAME)-$(subst _,-,$(ARCH))_$(PROVISIONER_VERSION)
ANSIBLE_PROVISIO_URL = https://github.com/radekg/terraform-provisioner-ansible/releases/download/$(PROVISIONER_VERSION)/$(PROVISIONER_ARCHIVE)
all: requirements install-provider install-ansible-provisioner secrets init-terraform
@echo "Success!" @echo "Success!"
plugins: install-provider install-provisioner plugins: install-ansible-provider install-gandi-provider install-ansible-provisioner
requirements: requirements:
ansible-galaxy install --ignore-errors --force -r ansible/requirements.yml ansible-galaxy install --ignore-errors --force -r ansible/requirements.yml
install-unzip: check-unzip:
ifeq (, $(shell which unzip)) \ ifeq (, $(shell which unzip)) \
$(error "No unzip in PATH, consider doing apt install unzip") \ $(error "No unzip in PATH, consider doing apt install unzip") \
endif endif
install-provider: install-unzip install-ansible-provider: check-unzip
if [ ! -e $(PLUGIN_DIR)/$(ARCH)/$(PROVIDER_NAME)_$(PROVIDER_VERSION) ]; then \ if [ ! -e $(PLUGIN_DIR)/$(ARCH)/$(ANSIBLE_PROVIDER_NAME)_$(ANSIBLE_PROVIDER_VERSION) ]; then \
mkdir -p $(PLUGIN_DIR); \ mkdir -p $(PLUGIN_DIR); \
wget $(PROVIDER_URL) -P $(PLUGIN_DIR); \ wget $(ANSIBLE_PROVIDER_URL) -P $(PLUGIN_DIR); \
unzip -o $(PLUGIN_DIR)/$(PROVIDER_ARCHIVE) -d $(PLUGIN_DIR); \ unzip -o $(PLUGIN_DIR)/$(ANSIBLE_PROVIDER_ARCHIVE) -d $(PLUGIN_DIR); \
fi fi
install-provisioner: install-gandi-provider:
if [ ! -e $(PLUGIN_DIR)/$(ARCH)/$(PROVISIONER_NAME)_$(PROVISIONER_VERSION) ]; then \ if [ ! -e $(PLUGIN_DIR)/$(ARCH)/$(GANDI_PROVIDER_NAME)_v$(GANDI_PROVIDER_VERSION) ]; then \
mkdir -p $(PLUGIN_DIR); \ mkdir -p $(PLUGIN_DIR); \
wget $(PROVISIONER_URL) -O $(PLUGIN_DIR)/$(ARCH)/$(PROVISIONER_NAME)_$(PROVISIONER_VERSION); \ wget $(GANDI_PROVIDER_URL) -O /tmp/$(GANDI_PROVIDER_ARCHIVE); \
chmod +x $(PLUGIN_DIR)/$(ARCH)/$(PROVISIONER_NAME)_$(PROVISIONER_VERSION); \ unzip -o /tmp/$(GANDI_PROVIDER_ARCHIVE) -d /tmp/; \
cd /tmp/$(GANDI_PROVIDER_NAME)-$(GANDI_PROVIDER_VERSION) && \
go build -o terraform-provider-gandi; \
mv /tmp/$(GANDI_PROVIDER_NAME)-$(GANDI_PROVIDER_VERSION)/terraform-provider-gandi \
$(PLUGIN_DIR)/$(ARCH)/$(GANDI_PROVIDER_NAME)_v$(GANDI_PROVIDER_VERSION); \
fi
install-ansible-provisioner:
if [ ! -e $(PLUGIN_DIR)/$(ARCH)/$(ANSIBLE_PROVISIO_NAME)_$(ANSIBLE_PROVISIO_VERSION) ]; then \
mkdir -p $(PLUGIN_DIR); \
wget $(ANSIBLE_PROVISIO_URL) -O $(PLUGIN_DIR)/$(ARCH)/$(ANSIBLE_PROVISIO_NAME)_$(ANSIBLE_PROVISIO_VERSION); \
chmod +x $(PLUGIN_DIR)/$(ARCH)/$(ANSIBLE_PROVISIO_NAME)_$(ANSIBLE_PROVISIO_VERSION); \
fi fi
init-terraform: init-terraform: