def create_release_branch_main(args, base_path, top_level):
 options = CreateReleaseBranchOptions()
 try:
  options.parseOptions(args)
 except UsageError as e:
  sys.stderr.write(('%s: %s\n' % (base_path.basename(), e)))
  raise SystemExit(1)
 version = options['flocker-version']
 path = FilePath(__file__).path
 try:
  base_branch = calculate_base_branch(version=version, path=path)
  create_release_branch(version=version, base_branch=base_branch)
 except NotARelease:
  sys.stderr.write(("%s: Can't create a release branch for non-release.\n" % (base_path.basename(),)))
  raise SystemExit(1)
 except TagExists:
  sys.stderr.write(('%s: Tag already exists for this release.\n' % (base_path.basename(),)))
  raise SystemExit(1)
 except BranchExists:
  sys.stderr.write(('%s: The release branch already exists.\n' % (base_path.basename(),)))
  raise SystemExit(1)

def create_release_branch_main ( args , base_path , top_level ) : options = CreateReleaseBranchOptions ( ) try : options . parseOptions ( args ) except UsageError as e : sys . stderr . write ( ( '%s: %s\n' % ( base_path . basename ( ) , e ) ) ) raise SystemExit ( 1 ) version = options [ 'flocker-version' ] path = FilePath ( __file__ ) . path try : base_branch = calculate_base_branch ( version = version , path = path ) create_release_branch ( version = version , base_branch = base_branch ) except NotARelease : sys . stderr . write ( ( "%s: Can't create a release branch for non-release.\n" % ( base_path . basename ( ) , ) ) ) raise SystemExit ( 1 ) except TagExists : sys . stderr . write ( ( '%s: Tag already exists for this release.\n' % ( base_path . basename ( ) , ) ) ) raise SystemExit ( 1 ) except BranchExists : sys . stderr . write ( ( '%s: The release branch already exists.\n' % ( base_path . basename ( ) , ) ) ) raise SystemExit ( 1 )
create a release branch .