summaryrefslogtreecommitdiff
path: root/Makefile
blob: 905d3989035a47459c5ff4f969727c26708223fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#!make

# if not set, set defaults 
#PARALLEL_BUILDS ?= 0
PACKER_LOG ?= 0
# always use DISPLAY :99
DISPLAY=:99
#export DISPLAY
# include .env vars
-include .env
# export all
export

.PHONY: help
help:
	@echo "make working:"
	@echo "- will use local.pkrvars.hcl if exists or vyos.pkrvars.hcl"
	@echo "- will load .env if file exists"

	@echo "make usage:"
	@echo "  make build - build image with 'packer build'"
	@echo "  make init  - init 'packer init'"
	@echo "  make upgrade  - init 'packer init -upgrade'"
	@echo "  make clean - remove output files"
	@echo "  make x11server - start Xvfb X11 server on DISPLAY=:99. Require apt install xvfb"


# ifneq ("$(wildcard .env)","") 
# include .env
# export
# endif


.PHONY: build1
build1:
# if exist local.pkrvars.hcl load it
ifneq ($(wildcard local.pkrvars.hcl),) 
	packer build \
	-var-file=local.pkrvars.hcl \
	-parallel-builds=0 \
	vyos-image1.pkr.hcl
else
	packer build \
	-var-file=vyos.pkrvars.hcl \
	-parallel-builds=0 \
	vyos-image1.pkr.hcl
endif

.PHONY: build2
build2:
# if exist local.pkrvars.hcl load it
ifneq ($(wildcard local.pkrvars.hcl),) 
	packer build \
	-var-file=local.pkrvars.hcl \
	-parallel-builds=0 \
	vyos-image2.pkr.hcl
else
	packer build \
	-var-file=vyos.pkrvars.hcl \
	-parallel-builds=0 \
	vyos-image2.pkr.hcl
endif

.PHONY: init
init:
	packer init vyos-image1.pkr.hcl
	packer init vyos-image2.pkr.hcl

.PHONY: upgrade
upgrade:
	packer init -upgrade vyos-image1.pkr.hcl
	packer init -upgrade vyos-image2.pkr.hcl

.PHONY: clean
clean:
	rm -rf output/*

# you need to run this first to use headless=false
.PHONY: x11server
x11server:
	Xvfb :99 -screen 0 1024x768x16 &
	export DISPLAY=:99