Gally helps to manage projects that are part of a monorepository. It provides simple tools to detect what projects have changed, as well as test and build them.
Download a binary from the release page
Requirement: In order for Gally to work, you must have git
installed
and accessible from your path.
To define a project with Gally, create a .gally.yml
file in the directory
that contains the project. For instance, if you have a project named
simpleapi
in the /apps/simpleapi
directory of your monorepository, create
a file .gally.yml
in this directory.
Note: Nested projects are not allowed
For more details about the configuration and how to use gally
, see:
- Manifest for details about
.gally.yml
properties - Environment variables for environment variables available from your scripts
- Command Line Interface for details about how to run
the
gally
command - Using
gally
with Continuous Integration tools
Opposite to scripts:
properties which are triggered if the project
contains changes or if you use the -f|--force
flag, the build:
section
can be triggered in different ways:
- If you've set the
tag:
property tofalse
which is now the advised way to deal with builds, the build are triggered if a file changes in the project directory - If you've set the
tag:
property totrue
, then build are triggered if the 2 following conditions are met:- Changes are detected in the project directory
- A tag exists on the commit that matches the
<project>@<version>
and the<version>
part of it matches theversion:
command output.
Do not hesitate to contribute by opening an issue or create a pull request.
Gally is available under the MIT license, see the LICENSE file for details.