Skip to content
Matthew Ratzke edited this page May 25, 2017 · 8 revisions

[meta] is powered by Boot. Integration with internal and 3rd party boot tasks is provided to extend boot's native functionality.

Initialization

[meta] can be initialized by adding the following to your build.boot file.

(set-env! :dependencies [[degree9/meta "0.2.0-SNAPSHOT"]])
(require '[meta.boot :refer :all])

(initialize)

What does initialization do to your project?

  • Load default environment with project overrides.
  • Searches root of project for *.boot files.
  • Load tasks into the boot environment.

Boot Environment - env.boot

The boot environment can be configured by placing an environment map inside env.boot.

(meta/boot/environment.edn) + env.boot

The default environment and local environment maps are merged and the result is used as the basis for the project. Any default settings can be replaced within the local project environment.

Note: The project environment is for replacements to the default environment.

Project Settings - *.boot

Project settings can be appended to the boot environment by placing a .boot file which matches the environment key inside your project root. ex.dependencies.boot

Note: The project settings are for appending to the default environment.

Boot Tasks - tasks.boot

Included tasks are auto required into the project. Additional tasks can be required by placing the parameters for require inside a vector within tasks.boot.

(meta/boot/tasks.edn) + tasks.boot

The default tasks and local tasks are conjoined and the result is required within the project.

Note: The project tasks are for appending to the default tasks.


Tasks

A collection of project tasks are provided to simplify the development process.

Boot [meta] Pipeline

$ boot [project] [develop|[build [client] [server]]] [tests] [ci]

Project

The project task is the first task in a [meta] pipeline.

What does the project task do?

  • Loads a [meta] project and optionally launches a workflow.

What workflows are supported?

  • default
  • develop
Clone this wiki locally