Rakefiles: add support for manual dependency definitions
authorJan Vrany <jan.vrany@fit.cvut.cz>
Mon, 20 Jan 2020 11:34:02 +0000
changeset 286 c08455e14746
parent 285 0cfb07f8d038
child 287 0283457aef8a
Rakefiles: add support for manual dependency definitions Normally, pacjage dependencies are extracted automatically from package definition but eXept sometimes get dependencies wrong. As we (still, sigh) use some packages form eXept's CVS tree, this commit introduces `dependencies.rbspec` that has these manually fixed. This commit also includes fix for an issue with `stx:goodies/communication`
specs/dependencies.rbspec
specs/stx-jv.rbspec
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/specs/dependencies.rbspec	Mon Jan 20 11:34:02 2020 +0000
@@ -0,0 +1,9 @@
+# This file contains !!!manual!!! package depedencies.
+#
+# Normally, this is extracted automatically from package definition but
+# eXept sometimes get dependencies wrong so this files remedies such
+# mistakes.
+
+# 2020-01-19:
+task :'stx:goodies/communication:dependencies' => :'stx:goodies/sunit'
+task :'stx:goodies/communication:dependencies' => :'stx:goodies/webServer'
--- a/specs/stx-jv.rbspec	Fri Jan 10 09:37:03 2020 +0000
+++ b/specs/stx-jv.rbspec	Mon Jan 20 11:34:02 2020 +0000
@@ -6,16 +6,16 @@
   sha256 = nil
   pattern = /prebuilt-#{Regexp.quote(component)}/
 
-  build_url = %Q{https://swing.fit.cvut.cz/jenkins/job/stx_jv/lastStableBuild}
+  artifact_repo = ArtifactRepository::PlainHTTPListing.new('https://swing.fit.cvut.cz/download/smalltalkx/devel/')
 
   origin_forest_url = HG::Repository.new(BUILD_DIR / '..').paths['default'].slice(0.. - 'stx-goodies-builder-rake'.size - 2) #/
   # When building using Jan's staging repositories, use pre-built stc and librun
   # from there too. 
   if (origin_forest_url =~ /192.168.27.250/) then
-    build_url = %Q{http://192.168.27.253:8080/job/stx_jv/lastStableBuild/}
+    artifact_repo = ArtifactRepository::Jenkins.new('http://192.168.27.253:8080/job/stx_jv')
   end
 
-  build = Jenkins::Build.new(build_url)
+  build = artifact_repo.latestBuild()
   platform = BUILD_TARGET
   build.artifacts.each do | artifact |
     if (pattern =~ artifact.name) and (artifact.name.include? platform) then
@@ -175,6 +175,7 @@
 
   # Monticello
   package "stx:libcompat", :repository => :'exept:public'
+  package "stx:goodies/webServer", :repository => :'exept:public', :link => false
   package "stx:goodies/communication", :repository => :'exept:public'
 
   # Java support