minifab
Create reproducible, isolated build environments
TLDR
Bring up the default Hyperledger Fabric network
Bring down the Hyperledger Fabric network
Install chaincode onto a specified channel
Install a specific chaincode version onto a channel
Initialize the chaincode after installation/upgrade
Invoke a chaincode method with the specified arguments
Make a query on the ledger
Quickly run an application
SYNOPSIS
minifab command [options]
PARAMETERS
help
Displays help information for minifab or a specific subcommand.
create branch_name
Creates a new branch in the local repository.
upload
Uploads the current changes as a changelist to Gerrit.
rebase
Rebases the current branch onto the upstream branch.
diff
Shows the diff of changes against the current branch.
set-try
Sets the trybots to run for the current changelist.
DESCRIPTION
minifab is a command-line tool specifically designed to simplify and speed up build processes within Chromium and Chromium-based projects.
It primarily interacts with the Chromium infrastructure, such as the Git repositories and the build system (GN).
The purpose of minifab is to abstract away the complexity of managing build configurations, dependencies, and code submissions (uploading CLs to Gerrit). It provides a higher-level interface, allowing developers to focus on coding rather than wrestling with build intricacies.
While its core functionality is centered around Chromium development, the principles of minifab can be adapted or understood for broader software development concepts: automation, dependency management, and build system abstraction.
CAVEATS
minifab is heavily tied to Chromium's specific build infrastructure. Its usage is therefore limited to projects which closely follow the same conventions. Its functionality may change without notice.
CONFIGURATION
minifab often relies on configuration files (e.g., .gclient, DEPS) that define the project's dependencies and build settings. These files instruct minifab on how to check out the code and set the environment up for building.
BUILD TARGETS
minifab leverages the build targets defined in the GN build system. These targets specify the modules to be built, their dependencies, and the build configurations (e.g., Debug, Release).
HISTORY
minifab was developed to improve the efficiency and ease of use for Chromium developers when handling build processes. Its development has been driven by the need for a lightweight and streamlined tool to interact with Chromium's build system and version control. It is an evolving tool, constantly being refined to meet the needs of Chromium contributors.
SEE ALSO
git(1), gn(1), gclient(1)