makefile: add fake-installers
target
The `fake-installers[-from-built]` target drives a distribution build like `installers[-from-built]`, but instead of building on clients, just copies a "README" as an installer.
This commit is contained in:
parent
250f5ca661
commit
2110b3c753
|
@ -1025,6 +1025,12 @@ drive-clients:
|
|||
describe-clients:
|
||||
$(MAKE) drive-clients DRIVE_DESCRIBE=--describe
|
||||
|
||||
fake-installers:
|
||||
$(MAKE) installers DRIVE_DESCRIBE="--dry-run fake"
|
||||
|
||||
fake-installers-from-built:
|
||||
$(MAKE) installers-from-built DRIVE_DESCRIBE="--dry-run fake"
|
||||
|
||||
# ------------------------------------------------------------
|
||||
# Create installers, then assemble as a web site:
|
||||
|
||||
|
|
4
Makefile
4
Makefile
|
@ -494,6 +494,10 @@ drive-clients:
|
|||
$(PLAIN_RACKET) -l- distro-build/drive-clients $(DRIVE_DESCRIBE) $(RELEASE_MODE) $(VERSIONLESS_MODE) $(SOURCE_MODE) $(CLEAN_MODE) $(SERVER_COMPILE_MACHINE) "$(CONFIG)" "$(CONFIG_MODE)" $(SERVER) $(SERVER_PORT) "$(SERVER_HOSTS)" "$(PKGS)" "$(DOC_SEARCH)" "$(DIST_NAME)" $(DIST_BASE) $(DIST_DIR)
|
||||
describe-clients:
|
||||
$(MAKE) drive-clients DRIVE_DESCRIBE=--describe CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIG_MODE="$(CONFIG_MODE)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_SEARCH="$(DOC_SEARCH)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" RELEASE_MODE="$(RELEASE_MODE)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PORT="$(SERVER_PORT)" SOURCE_MODE="$(SOURCE_MODE)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)"
|
||||
fake-installers:
|
||||
$(MAKE) installers DRIVE_DESCRIBE="--dry-run fake" AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PB_REPO="$(PB_REPO)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||
fake-installers-from-built:
|
||||
$(MAKE) installers-from-built DRIVE_DESCRIBE="--dry-run fake" AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PB_REPO="$(PB_REPO)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||
site:
|
||||
$(MAKE) installers AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PB_REPO="$(PB_REPO)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||
$(MAKE) site-from-installers AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PB_REPO="$(PB_REPO)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||
|
|
12
build.md
12
build.md
|
@ -368,8 +368,8 @@ repository’s top-level makefile and the `"distro-build"` package.
|
|||
|
||||
The `installers` target of the makefile will do everything to generate
|
||||
installers: build a server on the current machine, run clients on hosts
|
||||
specified via `CONFIG`, and start/stop VirtualBox virtual machines that
|
||||
act as client machines.
|
||||
specified via `CONFIG`, and start/stop VirtualBox virtual machines or
|
||||
Docker containers that act as client machines.
|
||||
|
||||
If the server is already built, the `installers-from-built` target will
|
||||
drive the client builds without re-building the server.
|
||||
|
@ -394,6 +394,14 @@ build (not the one for building installers), you can use
|
|||
to see, without building anything, the effect of the configuration in
|
||||
`"my-site-config.rkt"` and the planned build steps.
|
||||
|
||||
As an intermediate point, use `make fake-installers` instead of `make
|
||||
installers` to create “installers” on the server side that just contain
|
||||
the corresponding `"README"` text without running any build clients.
|
||||
Beware, however, that installer names are normally determined on the
|
||||
client side, so `make fake-installers` has to guess about each installer
|
||||
name based on the description (e.g., “Windows” in the description
|
||||
implies a Windows installer).
|
||||
|
||||
The default `CONFIG` path is `"build/site.rkt"`, so you could put your
|
||||
configuration file there and omit the `CONFIG` argument to `make`. A
|
||||
default configuration file is created there automatically. Supply
|
||||
|
|
|
@ -36,7 +36,8 @@ Git repository's top-level makefile and @|distro-build-package|.
|
|||
The @exec{installers} target of the makefile will do everything to
|
||||
generate installers: build a server on the current machine, run
|
||||
clients on hosts specified via @exec{CONFIG}, and start/stop
|
||||
VirtualBox virtual machines that act as client machines.
|
||||
VirtualBox virtual machines or Docker containers that act as client
|
||||
machines.
|
||||
|
||||
If the server is already built, the @exec{installers-from-built}
|
||||
target will drive the client builds without re-building the server.
|
||||
|
@ -61,6 +62,14 @@ some Racket build (not the one for building installers), you can use
|
|||
to see, without building anything, the effect of the configuration in
|
||||
@filepath{my-site-config.rkt} and the planned build steps.
|
||||
|
||||
As an intermediate point, use @exec{make fake-installers} instead of
|
||||
@exec{make installers} to create ``installers'' on the server side
|
||||
that just contain the corresponding @filepath{README} text without
|
||||
running any build clients. Beware, however, that installer names are
|
||||
normally determined on the client side, so @exec{make fake-installers}
|
||||
has to guess about each installer name based on the description (e.g.,
|
||||
``Windows'' in the description implies a Windows installer).
|
||||
|
||||
The default @exec{CONFIG} path is @filepath{build/site.rkt}, so you
|
||||
could put your configuration file there and omit the @exec{CONFIG}
|
||||
argument to @exec{make}. A default configuration file is created there
|
||||
|
|
Loading…
Reference in New Issue
Block a user