#Contributing Guidelines
- Default repository branch:
develop. It contains all the latest changes, which are merged via thePull Requests - Any new features or bug fixes are implemented in the separate branches (
fn_,fix_, etc.) - Changes from the branches are merged into the
developafter thePull Requestreview - If a certain state of the
developbranch is considered asfeature-fullandstable- a release branch is created. It is immutable and keeps the code state for a specific point of time - If a bug is uncovered in the
develop, which also affects a certain release - the fix is cherry-picked into thereleasebranch
fix_branch1
\
t_now ---> \ | |
\ * -- * <--- "fix_branch1" merge into "develop" and cherry-pick into "release/2.0.0"
\ /| |
/ | |
/ | | \
/ | / \
* | / release/2.0.0 branch
\ | /
\ |/ <--- code is stable: release time!
\ |
\|
* <--- "fn_branch2" merge into "develop"
|\
| \
| \
* \ <--- "fn_branch1" merge into "develop"
/| * <--- feature commit
/ | |
/ | * <--- feature commit
/ | /
* | / <--- feature commit
\ | /
\ |/ \
/ \ | \
/ \| \
/ | fn_branch2
fn_branch1 |
|
t_0 ---> develop
- When a commit is pushed to the
developbranch, AppVeyor runs a build process automatically. AppVeyor uses a configuration is defined in.appveyor.ymlfile during the build process. - A AppVeyor build process executes
./gradlew -PbuildNumber=${APPVEYOR_BUILD_NUMBER}.${APPVEYOR_REPO_COMMIT} build zip --no-daemoncommand on thebuild_scriptsection. - After a successful build, AppVeyor uploads the build result
fonda*.zipto Amazon S3s3://fonda-oss-builds/builds/develop/bucket automatically. - To get the
fonda*.zipfrom S3 bucket you can follow the linkhttps://fonda-oss-builds.s3.amazonaws.com/builds/develop/fonda-${APPVEYOR_BUILD_NUMBER}.${APPVEYOR_REPO_COMMIT}.zipin your browser or download file from the command console bywgetorcurlcommands.
1. Commit to "develop" branch
|
|
* <--- "fn_branch1" merge into "develop"
/|
/ |
/ |
* |
/ \ |
/ \ |
/ \|
fn_branch1 |
|
|
develop
2. Run build command on the AppVeyor:
./gradlew -PbuildNumber=${APPVEYOR_BUILD_NUMBER}.${APPVEYOR_REPO_COMMIT} build zip --no-daemon
3. If the `step 2` success:
_________
// Amazon \\
_____________ // ___S3____ \\ _____________
|\___________/| file transfer || _|_|_|_|_|_ || file transfer |___Browser___|
| fonda-*.zip | -----------------> || _|_|_|_|_|_ || -----------------> | |
|_____________| to S3 ||_|_|_|_|_|_|_|| to user |_____________|