Skip to content
This repository was archived by the owner on Mar 19, 2020. It is now read-only.
This repository was archived by the owner on Mar 19, 2020. It is now read-only.

[RFC] - 101: Workflow #108

@frapontillo

Description

@frapontillo

This issue will be updated with workflow guidelines, that will then be finalized and added to a md file.

Workflow (RFC proposal)

Gitflow

The workflow must follow the gitflow pattern:

  1. Use feature/* for new features or delayable bug fixes
  2. Use hotfix/* for immediate bug fixes that must be propagated to stable, beta and develop channels
  3. Use develop for project changes, minor changes, etc.

Version numbers

  1. The version should follow the MAJOR.MINOR.PATCH-BRANCH.BUILD pattern. The BRANCH.BUILD part will be useful when releasing CI builds on beta/alpha channels.

    a. If we are working on the, say, 3.1.2 codebase, every minor update that needs to be pushed to beta and alpha channels must be a simple BUILD bump
    b. When a new version is started, all subsequent changes must be released under a new MAJOR.MINOR.PATCH (i.e., the BUILD is reset to 0).
    c. This way, the app will always be incremental by 1 unit number.

  2. The version number must be bumped right after releasing the previous apk, so the system may be able to simply touch the BRANCH.BUILD part.

Issues and features

When working on issues and new features:

  1. For soon-to-be-released fixes and features, we can close the issue and merge the related branch into develop.
  2. For to-be-determined features, we can close the issue in the last commit of the branch but we cannot merge the branch back into develop.
  3. The hotfix or feature branch must be in the ISSUE-SHORT_DESC format, so it can be visually connected to an issue.
  4. After a branch is merged into develop and the related changes have been put into a release, the hotfix or feature branch must be deleted.

Continuous Integration

We should promptly set up a CI system that, on every commit on develop, will take care of:

  1. Test the project.
  2. Bump the BRANCH.BUILD in the unstable.### format.
  3. Build an develop release.
  4. Upload the apk somewhere.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions