# Go build command to build static binaries suitable for lean Alpine containers.
KGO := CGO_ENABLED=0 GOOS=linux go build

.PHONY: all
all: hotspare backup trooper_tools

.PHONY: hotspare
hotspare:
	go install -v ./go/hotspare

.PHONY: hotspare_release
hotspare_release: hotspare
	./build_release_hotspare "`git log -n1 --format=%s`"

.PHONY: hotspare_push
hotspare_push: hotspare
	go install -v ../push/go/pushcli
	./build_release_hotspare "`git log -n1 --format=%s`"
	pushcli hotspare skia-rpi-master-spare

.PHONY: backup
backup:
	go install -v ./go/file-backup

.PHONY: rpi_backup_release
rpi_backup_release: backup
	./build_release_rpi_backup "`git log -n1 --format=%s`"

.PHONY: rpi_backup_push
rpi_backup_push: backup
	go install -v ../push/go/pushcli
	./build_release_rpi_backup "`git log -n1 --format=%s`"
	pushcli rpi-backup skia-rpi-master

.PHONY: router_backup_release
router_backup_release: backup
	./build_release_router_backup "`git log -n1 --format=%s`"

.PHONY: router_backup_push_all
router_backup_push_all: backup
	go install -v ../push/go/pushcli
	./build_release_router_backup "`git log -n1 --format=%s`"
	pushcli "router-backup" "jumphost-internal-01"
	pushcli "router-backup" "jumphost-rack-01"
	pushcli "router-backup" "jumphost-rack-02"
	pushcli "router-backup" "jumphost-rack-03"


.PHONY: trooper_tools
trooper_tools:
	go install -v ./go/powercycle-cli
	go install -v ./go/powercycle-daemon
	go install -v ./go/censustaker

.PHONY: trooper_tools_release
trooper_tools_release: trooper_tools
	./build_release_trooper_tools "`git log -n1 --format=%s`" "internal-01 rack-01 rack-02 rack-03"

.PHONY: trooper_tools_push_all
trooper_tools_push_all: trooper_tools_release
	go install -v ../push/go/pushcli
	pushcli "trooper-tools-internal-01"   "jumphost-internal-01"
	pushcli "trooper-tools-rack-01"       "jumphost-rack-01"
	pushcli "trooper-tools-rack-02"       "jumphost-rack-02"
	pushcli "trooper-tools-rack-03"       "jumphost-rack-03"

.PHONY: metadata_server
metadata_server:
	go install -v ./go/metadata_server

.PHONY: metadata_server_release
metadata_server_release: metadata_server
	./build_release_metadata_server "`git log -n1 --format=%s`"

.PHONY: metadata_server_push
metadata_server_push: metadata_server_release
	pushcli "metadata-server" "jumphost-internal-01"
	pushcli "metadata-server" "jumphost-rack-01"
	pushcli "metadata-server" "jumphost-rack-02"
	pushcli "metadata-server" "jumphost-rack-03"

.PHONY: get_oauth2_token
get_oauth2_token:
	go install -v ./go/get_oauth2_token

.PHONY: get_oauth2_token_release
get_oauth2_token_release: get_oauth2_token
	./build_release_get_oauth2_token "`git log -n1 --format=%s`"

.PHONY: get_oauth2_token_push
get_oauth2_token_push: get_oauth2_token_release
	pushcli "get-oauth2-token" "jumphost-internal-01"
	pushcli "get-oauth2-token" "jumphost-rack-01"
	pushcli "get-oauth2-token" "jumphost-rack-02"
	pushcli "get-oauth2-token" "jumphost-rack-03"

# Build all the binaries which should run in containers in the Skolo.
.PHONY: k8s-skolo-binaries
k8s-skolo-binaries:
	mkdir -p ./build
	rm -f ./build/*
	$(KGO) -o ./build/metadata-server-k8s -a ./go/metadata_server_k8s/...
	$(KGO) -o ./build/file-backup-k8s -a ./go/file-backup/...

.PHONY: k8s-push-skolo-containers
 k8s-push-skolo-containers: k8s-skolo-binaries
	./k8s_release_metadata_server
	./k8s_release_router_backup
