How to start#
Project structure#
-
subprojects
contains almost all source code divided by project modules -
samples
separate gradle project that includeBuild("subprojects") to iterate on changes fast and provide samples -
ci/
and/*.sh
- we follow IaC principle whenever possible. You can see docker images we use to abstract configuration of apps building and testing, as well as testing github project itself. docs/
- documentation you see right now and code to deploy it automatically.
How we document
Makefile#
Take a look at ./Makefile
for useful commands/shortcuts
Build features to consider enabling#
- env
COMMIT_CHECK=true
to run optimal amount of CI checks on git pre-commit hook - env
CONFIG_CACHE=true
to enable Gradle configuration cache for Makefile commands.
You can also override it per command:make command CONFIG_CACHE=false
.
Avito employees only#
- Gradle remote cache for local builds
artifactoryUrl
property in<GRADLE_USER_HOME>/gradle.properties
to download dependencies from in-house proxy