specs/repositories.rbspec
author Jan Vrany <jan.vrany@fit.cvut.cz>
Sun, 04 Dec 2016 22:21:22 +0000
changeset 88 112075e99cef
parent 67 75b6eb7b781c
child 98 e8a75e807ff2
permissions -rw-r--r--
Support for 'upstream' repositories refactored. Each repository (factory) may define a 'staging' and an 'uptream' repository. A 'canonical' repository is mandatory. When checking out and/or updating, first changes from 'staging' are pulled, then from 'upstream' and at last from 'canonical repository'. Mercurial paths are defined. Repository sets updated accordingly.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
# This file defines a set of repositories to fetch source code from. 
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
#
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
#
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
# Following repository sets are defined here:
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
#
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
#  1.*default*: fetches source from public repositories. Code forked
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
#    by Smalltalk/X jv-branch is loaded from Jan Vrany's BitBucket
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
#    account (https://bitbucket.org/janvrany/), the rest is loaded
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
#    from eXept's public CVS repository (:pserver:cvs@cvs.smalltalk-x.de:/cvs/stx)
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
#    Sources of stc and librun (Smalltalk/X VM) are not checked out 
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
#    (since they're not freely available) but pre-build binaries are
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
#    downloaded from SWING CI server ( https://swing.fit.cvut.cz/jenkins/job/stx_jv/ )
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
#
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
#    This is the default if no REPOSITORYSET value is set. 
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
#
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
#
67
75b6eb7b781c Added support for canonical, upstream and staging repositores.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 62
diff changeset
    17
#  2.*ci-swing*: for use on SWING CI [1]. Uses local staging repositories hosted
75b6eb7b781c Added support for canonical, upstream and staging repositores.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 62
diff changeset
    18
#    on https://swing.fit.cvut.cz/hg in addition to canonical on hosted on 
75b6eb7b781c Added support for canonical, upstream and staging repositores.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 62
diff changeset
    19
#    BitBucket.
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
#
88
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    21
#  3."ci-jv": for use on Jan Vrany's private CI. Uses (his) local staging repositories 
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    22
#    and repositories hosted at SWING as upstream repos. 
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    23
#    
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
#
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
REPOSITORYSET = (ENV['REPOSITORYSET'] || 'default') if not defined? REPOSITORYSET
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
case REPOSITORYSET 
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
when 'default'
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
  repository :'exept:public' do
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
    type :cvs    
67
75b6eb7b781c Added support for canonical, upstream and staging repositores.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 62
diff changeset
    31
    canonical ":pserver:cvs@cvs.smalltalk-x.de:/cvs/stx"
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
  end
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
  repository :'bitbucket:janvrany' do
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
    type :hg
67
75b6eb7b781c Added support for canonical, upstream and staging repositores.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 62
diff changeset
    36
    canonical "https://bitbucket.org/janvrany"
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
    separator '-'
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
  end
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
  if core_developer?
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
    repository :'swing:private:hg' do
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
      type :hg
67
75b6eb7b781c Added support for canonical, upstream and staging repositores.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 62
diff changeset
    43
      canonical "ssh://192.168.12.2//hg"
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
      separator '.'
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
    end
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
  end
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
when 'ci-swing'
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
  repository :'exept:public' do
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
    type :cvs    
88
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    51
    canonical ":ext:#{ENV['USER'] || ENV['USERNAME']}@swing.fit.cvut.cz/var/local/cvs"
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
  end
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
  repository :'bitbucket:janvrany' do
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
    type :hg
67
75b6eb7b781c Added support for canonical, upstream and staging repositores.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 62
diff changeset
    56
    canonical "https://bitbucket.org/janvrany"
88
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    57
    # Use local build slave network address to allow for faster
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    58
    # checkouts
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    59
    staging "ssh://#{ENV['USER'] || ENV['USERNAME']}@192.168.12.1//var/local/hg"
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
    separator '-'
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
  end
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
  repository :'swing:private:hg' do
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
    type :hg
88
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    65
    canonical "ssh://#{ENV['USER'] || ENV['USERNAME']}@192.168.12.2//hg"
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
    separator '.'
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
  end
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
when 'ci-jv'
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
  repository :'exept:public' do
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
    type :cvs    
67
75b6eb7b781c Added support for canonical, upstream and staging repositores.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 62
diff changeset
    73
    canonical ":pserver:cvs@cvs.smalltalk-x.de:/cvs/stx"
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
  end
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
  repository :'bitbucket:janvrany' do
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
    type :hg
67
75b6eb7b781c Added support for canonical, upstream and staging repositores.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 62
diff changeset
    78
    canonical "https://bitbucket.org/janvrany"
88
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    79
    upstream  "ssh://hg@swing.fit.cvut.cz//var/local/hg"
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    80
    staging   "ssh://hg@192.168.0.250"
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
    separator '-'
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
  end
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
  repository :'swing:private:hg' do
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
    type :hg
88
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    86
    # No, don't do this - CI has no access to those
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    87
    # SWING repositories (no VPN, no keys set up)
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    88
    #
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    89
    # canonical "ssh://192.168.12.2//hg"
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    90
    # staging   "ssh://hg@192.168.0.250"
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    91
    
67
75b6eb7b781c Added support for canonical, upstream and staging repositores.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 62
diff changeset
    92
    canonical "ssh://hg@192.168.0.250"
59
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
    separator '-'
9099e2455d9c Added support for multiple different repository sets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
  end
88
112075e99cef Support for 'upstream' repositories refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    95
end