asp.net mvc - Partial deployment using VSTS builds - source control strategy -
i building vsts build pipeline continues integration , deployment of mvc web project. client wants 0 down time in case of continues deployment have considered restructuring source control strategy , split single code repository following:
core features
- feature 1
- feature 2 .....
- feature n
we planning keep features child branches of core feature , place individual build templates each of branch , sub-branches. ideal scenario if there change in core feature branch, build should deployed full code ( branch + sub-branches) if 1 feature branch changed, continues deployment executed branch or feature in branch.
so questions need guidance are: -
- is idea of feature branching fine , can used on production?
- the .net mvc application n-tier application has web tier, service , repository tiers. shall split service , repository layers in core , feature branches make separated?
if split service , repository, how should communication happened between different features:
via service service calling? if feature 1 requires functionality of feature 2, feature 1 service calls feature 2 service , merge result send feature 1 gui?
feature 1 repository calls feature 2 repository, approach bring dependency of feature 1 on feature 2 means if feature 2 down @ time of deployment, feature 1 experience errors.
splitting repository several features idea?
thanks
splitting repository several features ok, because used in other apps (e.g. mobile app)
i recommend can consider vsts packages feature or other 3rd package feed. workflow:
- push changes server > trigger ci build> pack , publish package vsts feed using nuget task
- install necessary packages web project , coding.
- push changes of web project server > trigger ci build current installed package (do not update package)
- update necessary package web project new feature
- push changes of web project server > trigger ci build
Comments
Post a Comment