home-assistant/Makefile

32 lines
920 B
Makefile

IMAGE = homeassistant/home-assistant
CONTAINER = home-assistant
HOSTNAME = hass.phoenixinquis.is-a-geek.org
HA_VERSION = $(shell cat .HA_VERSION)
HASS_BIN = python -m homeassistant
VOLUMES = $(PWD):/config /etc/localtime:/etc/localtime:ro /media:/media
ENV_VARS = VIRTUAL_HOST=$(HOSTNAME) VIRTUAL_IP=127.0.0.1 VIRTUAL_PORT=8123 LETSENCRYPT_HOST=$(HOSTNAME) LETSENCRYPT_EMAIL=correl@gmail.com
HASS = docker run -it --rm \
$(addprefix -v ,$(VOLUMES)) \
$(IMAGE):$(HA_VERSION) $(HASS_BIN) \
--config /config
.PHONY: test
test: pull
@$(HASS) --script check_config --files
.PHONY: run stop destroy pull deploy
run: pull
docker run -d \
--name $(CONTAINER) \
--net=host \
$(addprefix -v ,$(VOLUMES)) \
$(addprefix -e ,$(ENV_VARS)) \
$(IMAGE):$(HA_VERSION)
stop:
docker stop $(CONTAINER)
destroy:
-docker rm -f $(CONTAINER)
pull:
@docker pull $(IMAGE):$(HA_VERSION) >/dev/null
deploy: pull test destroy run