specs/repositories.rbspec
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 13 Dec 2016 13:33:24 +0000
changeset 102 fc572bd895f2
parent 98 e8a75e807ff2
child 143 0f221bcb161b
permissions -rw-r--r--
Cleanup: treat stx:stc & stx:librun as normal packages ...so `rake update`, `rake workflow:push-upstream` and so work with them as well.

# 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 staging repositories hosted
#    on https://swing.fit.cvut.cz/hg in addition to canonical on hosted on 
#    BitBucket.
#
#  3."ci-jv": for use on Jan Vrany's private CI. Uses (his) local staging repositories 
#    and repositories hosted at SWING as upstream repos. 
#    
#
case REPOSITORYSET 
when 'default'
  repository :'exept:public' do
    type :cvs    
    canonical ":pserver:cvs@cvs.smalltalk-x.de:/cvs/stx"
  end

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

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

when 'ci-swing'
  repository :'exept:public' do
    type :cvs    
    canonical ":ext:#{ENV['USER'] || ENV['USERNAME']}@swing.fit.cvut.cz/var/local/cvs"
  end

  repository :'bitbucket:janvrany' do
    type :hg
    canonical "https://bitbucket.org/janvrany"
    # Use local build slave network address to allow for faster
    # checkouts
    staging "ssh://#{ENV['USER'] || ENV['USERNAME']}@192.168.12.1//var/local/hg"
    separator '-'
  end

  repository :'swing:private:hg' do
    type :hg
    canonical "ssh://#{ENV['USER'] || ENV['USERNAME']}@192.168.12.2//hg"
    separator '.'
  end


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

  repository :'bitbucket:janvrany' do
    type :hg
    canonical "https://bitbucket.org/janvrany"
    upstream  "ssh://hg@swing.fit.cvut.cz//var/local/hg"
    staging   "ssh://hg@192.168.0.250"
    separator '-'
  end

  repository :'swing:private:hg' do
    type :hg
    # No, don't do this - CI has no access to those
    # SWING repositories (no VPN, no keys set up)
    #
    # canonical "ssh://192.168.12.2//hg"
    # staging   "ssh://hg@192.168.0.250"
    
    canonical "ssh://hg@192.168.0.250"
    separator '-'
  end
end