Building

Make Targets

TargetDescription
make allrun build binaries for platforms
make fastrun build for only linux 64 bit
make runwrapper for the ‘go run’ command, setting up the needed tooling
make prepare-plugins-releasepull plugins dependencies for local build
make forget-pluginsdeprecated!
make testrun the integration test on linux64 binary
make releasepluginsbuild app plugins that we pulled locally
make releasedockerbuild main and plugins, push to docker hub
make testdockerquick docker sanity check

Building plugins

To build a plugin, pull GLauth’s codebase, and make sure that the plugin is a submodule of the main repository.

First, pull the full GLauth hierarchy:

1git clone --recurse-submodules git@github.com:glauth/glauth.git

Run make prepare-plugins-release to update the top-level dependencies with the plugins’

Then, run make releaseplugins

To avoid building all plugins, for every plugin you do not wish to build:

1touch pkg/plugins/glauth-<plugin name>/.ignore

To build only for some platforms, for instance here linux/amd64:

1PLUGIN_TARGETS=linux/amd64 make releaseplugins

The same applies when building the main package, using MAIN_TARGETS

Copyright 2021