specs/repositories.rbspec
author Jan Vrany <jan.vrany@fit.cvut.cz>
Sun, 23 Oct 2016 22:49:57 +0100
changeset 59 9099e2455d9c
child 62 de0e8016c2d5
permissions -rw-r--r--
Added support for multiple different repository sets. This may come handy in several scenarios: * one may want to fetch data from local mirrors rather than from canonical repository to save network bandwidth (handy on build farms) * one may want to use her own repositories (for example because one is concerned about "cloud" or wants to build from "staging" repositories in order to test changes) A repository set is specifed by REPOSITORYSET variable (passed either on command line or via environment variable). If no repository set is specified, 'default' is used. Default set fetches source from canonical repositories for the project.

# This file defines a set of repositories to fetch source code from. 
#
#
# Following repository sets are defined here:
#
#  1.*default*: fetches source from public repositories. Code forked
#    by Smalltalk/X jv-branch is loaded from Jan Vrany's BitBucket
#    account (https://bitbucket.org/janvrany/), the rest is loaded
#    from eXept's public CVS repository (:pserver:cvs@cvs.smalltalk-x.de:/cvs/stx)
#    Sources of stc and librun (Smalltalk/X VM) are not checked out 
#    (since they're not freely available) but pre-build binaries are
#    downloaded from SWING CI server ( https://swing.fit.cvut.cz/jenkins/job/stx_jv/ )
#
#    This is the default if no REPOSITORYSET value is set. 
#
#
#  2.*ci-swing*: for use on SWING CI [1]. Uses local mirrors.
#
#  3."ci-jv": for use on Jan Vrany's private CI. Uses local mirrors.
#
#
REPOSITORYSET = (ENV['REPOSITORYSET'] || 'default') if not defined? REPOSITORYSET

case REPOSITORYSET 
when 'default'
  repository :'exept:public' do
    type :cvs    
    url ":pserver:cvs@cvs.smalltalk-x.de:/cvs/stx"
  end

  repository :'bitbucket:janvrany' do
    type :hg
    url "https://bitbucket.org/janvrany"
    separator '-'
  end

  if core_developer?
    repository :'swing:private:hg' do
      type :hg
      url "ssh://192.168.12.2//hg"
      separator '.'
    end
  end

when 'ci-swing'
  repository :'exept:public' do
    type :cvs    
    url ":ext:swing.fit.cvut.cz/var/local/cvs"
  end

  repository :'bitbucket:janvrany' do
    type :hg
    url "https://bitbucket.org/janvrany"
    mirror "ssh://swing.fit.cvut.cz//var/local/hg"
    separator '-'
  end

  repository :'swing:private:hg' do
    type :hg
    url "ssh://192.168.12.2//hg"
    separator '.'
  end


when 'ci-jv'
  repository :'exept:public' do
    type :cvs    
    url ":pserver:cvs@cvs.smalltalk-x.de:/cvs/stx"
  end

  repository :'bitbucket:janvrany' do
    type :hg
    url "https://bitbucket.org/janvrany"
    mirror "ssh://hg@nereid"
    separator '-'
  end

  repository :'swing:private:hg' do
    type :hg
    url "ssh://hg@nereid"
    separator '-'
  end

end
  
#    
#