boxcutter / debian

Virtual machine templates for Debian written in legacy JSON

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Question: Why the `iso_url` variable is set in two different files (Makefile and debianXX.json)?

guillaumededrie opened this issue · comments

Hi,
I don't understand why the iso_url is set at two different places:
In the Makefile, and pass to the -var option:

DEBIAN78_AMD64 ?= http://cdimage.debian.org/cdimage/release/7.8.0/amd64/iso-dvd/debian-7.8.0-amd64-DVD-1.iso
DEBIAN78_I386 ?= http://cdimage.debian.org/cdimage/release/7.8.0/i386/iso-dvd/debian-7.8.0-i386-DVD-1.iso
DEBIAN77_AMD64 ?= http://cdimage.debian.org/cdimage/archive/7.7.0/amd64/iso-dvd/debian-7.7.0-amd64-DVD-1.iso
DEBIAN77_I386 ?= http://cdimage.debian.org/cdimage/archive/7.7.0/i386/iso-dvd/debian-7.7.0-i386-DVD-1.iso
DEBIAN76_AMD64 ?= http://cdimage.debian.org/cdimage/archive/7.6.0/amd64/iso-dvd/debian-7.6.0-amd64-DVD-1.iso
DEBIAN76_I386 ?= http://cdimage.debian.org/cdimage/archive/7.6.0/i386/iso-dvd/debian-7.6.0-i386-DVD-1.iso
DEBIAN75_AMD64 ?= http://cdimage.debian.org/cdimage/archive/7.5.0/amd64/iso-dvd/debian-7.5.0-amd64-DVD-1.iso
DEBIAN75_I386 ?= http://cdimage.debian.org/cdimage/archive/7.5.0/i386/iso-dvd/debian-7.5.0-i386-DVD-1.iso
DEBIAN6010_AMD64 ?= http://cdimage.debian.org/cdimage/archive/6.0.10/amd64/iso-cd/debian-6.0.10-amd64-CD-1.iso
DEBIAN6010_I386 ?= http://cdimage.debian.org/cdimage/archive/6.0.10/i386/iso-cd/debian-6.0.10-i386-CD-1.iso

[…]

$(VIRTUALBOX_BOX_DIR)/$(1)$(BOX_SUFFIX): $(1).json $(SOURCES)
    rm -rf $(VIRTUALBOX_OUTPUT)
    mkdir -p $(VIRTUALBOX_BOX_DIR)
    $(PACKER_CMD) build -only=$(VIRTUALBOX_BUILDER) $(PACKER_VARS) -var "iso_url=$(2)" $(1).json

And directly in the .json file (for example: https://github.com/boxcutter/debian/blob/master/debian78.json#L168).

Regards,
Guillaume

Since the .ISO hashes are baked into the .json files, the .ISO urls don't need to be listed in the Makefile. Perhaps the thinking is that we'll add the hashes to the Makefiles, a la https://github.com/boxcutter/windows/blob/master/Makefile, so we could build with a different .ISO, such as http://cdimage.debian.org/cdimage/release/7.8.0/amd64/iso-cd/debian-7.8.0-amd64-CD-1.iso