Skip to content

Commit 6bde48b

Browse files
committed
community build: split into 3 partitions
1 parent f66b820 commit 6bde48b

File tree

2 files changed

+69
-31
lines changed

2 files changed

+69
-31
lines changed

.github/workflows/ci.yaml

Lines changed: 39 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -231,6 +231,42 @@ jobs:
231231
git submodule update --init --recursive --jobs 7
232232
./project/scripts/sbt "community-build/testOnly dotty.communitybuild.CommunityBuildTestB"
233233
234+
community_build_c:
235+
runs-on: [self-hosted, Linux]
236+
container:
237+
image: lampepfl/dotty:2020-11-19
238+
options: --cpu-shares 4096
239+
volumes:
240+
- ${{ github.workspace }}/../../cache/sbt:/root/.sbt
241+
- ${{ github.workspace }}/../../cache/ivy:/root/.ivy2/cache
242+
- ${{ github.workspace }}/../../cache/general:/root/.cache
243+
if: "github.event_name == 'schedule' && github.repository == 'lampepfl/dotty'
244+
|| github.event_name == 'push'
245+
|| (
246+
github.event_name == 'pull_request'
247+
&& !contains(github.event.pull_request.body, '[skip ci]')
248+
&& !contains(github.event.pull_request.body, '[skip community_build]')
249+
)"
250+
251+
steps:
252+
- name: Checkout cleanup script
253+
uses: actions/checkout@v2
254+
255+
- name: Cleanup
256+
run: .github/workflows/cleanup.sh
257+
258+
- name: Git Checkout
259+
uses: actions/checkout@v2
260+
261+
- name: Add SBT proxy repositories
262+
run: cp -vf .github/workflows/repositories /root/.sbt/ ; true
263+
264+
- name: Test
265+
run: |
266+
git submodule sync
267+
git submodule update --init --recursive --jobs 7
268+
./project/scripts/sbt "community-build/testOnly dotty.communitybuild.CommunityBuildTestC"
269+
234270
test_sbt:
235271
runs-on: [self-hosted, Linux]
236272
container:
@@ -319,7 +355,7 @@ jobs:
319355
- ${{ github.workspace }}/../../cache/sbt:/root/.sbt
320356
- ${{ github.workspace }}/../../cache/ivy:/root/.ivy2/cache
321357
- ${{ github.workspace }}/../../cache/general:/root/.cache
322-
needs: [test_non_bootstrapped, test, community_build_a, community_build_b, test_sbt, test_java8]
358+
needs: [test_non_bootstrapped, test, community_build_a, community_build_b, community_build_c, test_sbt, test_java8]
323359
if: "github.event_name == 'schedule' && github.repository == 'lampepfl/dotty'"
324360
env:
325361
NIGHTLYBUILD: yes
@@ -396,7 +432,7 @@ jobs:
396432
- ${{ github.workspace }}/../../cache/sbt:/root/.sbt
397433
- ${{ github.workspace }}/../../cache/ivy:/root/.ivy2/cache
398434
- ${{ github.workspace }}/../../cache/general:/root/.cache
399-
needs: [test_non_bootstrapped, test, community_build_a, community_build_b, test_sbt, test_java8]
435+
needs: [test_non_bootstrapped, test, community_build_a, community_build_b, community_build_c, test_sbt, test_java8]
400436
if: "github.event_name == 'push'
401437
&& startsWith(github.event.ref, 'refs/tags/')
402438
&& !startsWith(github.event.ref, 'refs/tags/sbt-dotty-')"
@@ -524,7 +560,7 @@ jobs:
524560
- ${{ github.workspace }}/../../cache/sbt:/root/.sbt
525561
- ${{ github.workspace }}/../../cache/ivy:/root/.ivy2/cache
526562
- ${{ github.workspace }}/../../cache/general:/root/.cache
527-
needs: [community_build_a, community_build_b, test_sbt]
563+
needs: [community_build_a, community_build_b, community_build_c, test_sbt]
528564
if: "github.event_name == 'push'
529565
&& startsWith(github.event.ref, 'refs/tags/sbt-dotty-')"
530566

community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala

Lines changed: 30 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -82,26 +82,10 @@ end CommunityBuildTest
8282

8383
@Category(Array(classOf[TestCategory]))
8484
class CommunityBuildTestA extends CommunityBuildTest:
85-
@Test def endpoints4s = projects.endpoints4s.run()
86-
@Test def fansi = projects.fansi.run()
87-
@Test def fastparse = projects.fastparse.run()
88-
@Test def geny = projects.geny.run()
8985
@Test def izumiReflect = projects.izumiReflect.run()
90-
@Test def oslib = projects.oslib.run()
91-
// @Test def oslibWatch = projects.oslibWatch.run()
92-
@Test def pprint = projects.pprint.run()
93-
@Test def requests = projects.requests.run()
9486
@Test def scalacheck = projects.scalacheck.run()
95-
@Test def scalaCollectionCompat = projects.scalaCollectionCompat.run()
96-
@Test def scalaParallelCollections = projects.scalaParallelCollections.run()
9787
@Test def scalatest = projects.scalatest.run()
9888
@Test def scalatestplusScalacheck = projects.scalatestplusScalacheck.run()
99-
@Test def scalaz = projects.scalaz.run()
100-
@Test def sourcecode = projects.sourcecode.run()
101-
@Test def stdLib213 = projects.stdLib213.run()
102-
@Test def ujson = projects.ujson.run()
103-
@Test def upickle = projects.upickle.run()
104-
@Test def utest = projects.utest.run()
10589
@Test def zio = projects.zio.run()
10690

10791
// 'scala-stm' and 'Sciss/Lucre':
@@ -113,15 +97,12 @@ class CommunityBuildTestA extends CommunityBuildTest:
11397
// @Test def scissSerial = projects.scissSerial .run()
11498
// @Test def scissAsyncFile = projects.scissAsyncFile .run()
11599
// @Test def scissSpan = projects.scissSpan .run()
116-
@Test def scalaSTM = projects.scalaSTM .run()
117-
// @Test def scissLucre = projects.scissLucre .run()
118-
100+
@Test def scalaSTM = projects.scalaSTM.run()
101+
@Test def scissLucre = projects.scissLucre.run()
119102
end CommunityBuildTestA
120103

121104
@Category(Array(classOf[TestCategory]))
122105
class CommunityBuildTestB extends CommunityBuildTest:
123-
@Test def algebra = projects.algebra.run()
124-
@Test def betterfiles = projects.betterfiles.run()
125106
@Test def cats = projects.cats.run()
126107
@Test def catsEffect2 = projects.catsEffect2.run()
127108
@Test def catsEffect3 = projects.catsEffect3.run()
@@ -130,25 +111,46 @@ class CommunityBuildTestB extends CommunityBuildTest:
130111
@Test def discipline = projects.discipline.run()
131112
@Test def disciplineMunit = projects.disciplineMunit.run()
132113
@Test def disciplineSpecs2 = projects.disciplineSpecs2.run()
114+
@Test def munit = projects.munit.run()
115+
@Test def scodec = projects.scodec.run()
116+
@Test def scodecBits = projects.scodecBits.run()
117+
@Test def simulacrumScalafixAnnotations = projects.simulacrumScalafixAnnotations.run()
118+
end CommunityBuildTestB
119+
120+
@Category(Array(classOf[TestCategory]))
121+
class CommunityBuildTestC extends CommunityBuildTest:
122+
@Test def algebra = projects.algebra.run()
123+
@Test def betterfiles = projects.betterfiles.run()
133124
// Temporarily disabled until problem discovered in comments to #9449 is fixed
134125
// @Test def dottyCpsAsync = projects.dottyCpsAsync.run()
135126
@Test def effpi = projects.effpi.run()
127+
@Test def endpoints4s = projects.endpoints4s.run()
128+
@Test def fansi = projects.fansi.run()
129+
@Test def fastparse = projects.fastparse.run()
130+
@Test def geny = projects.geny.run()
136131
@Test def intent = projects.intent.run()
137132
@Test def minitest = projects.minitest.run()
138-
@Test def munit = projects.munit.run()
139-
@Test def scodec = projects.scodec.run()
140-
@Test def scodecBits = projects.scodecBits.run()
141-
@Test def scalap = projects.scalap.run()
133+
@Test def oslib = projects.oslib.run()
134+
// @Test def oslibWatch = projects.oslibWatch.run()
135+
@Test def pprint = projects.pprint.run()
136+
@Test def requests = projects.requests.run()
137+
@Test def scalaCollectionCompat = projects.scalaCollectionCompat.run()
138+
@Test def scalaParallelCollections = projects.scalaParallelCollections.run()
142139
@Test def scalaParserCombinators = projects.scalaParserCombinators.run()
143140
@Test def ScalaPB = projects.ScalaPB.run()
141+
@Test def scalap = projects.scalap.run()
144142
@Test def scalaXml = projects.scalaXml.run()
143+
@Test def scalaz = projects.scalaz.run()
145144
@Test def scas = projects.scas.run()
146145
@Test def sconfig = projects.sconfig.run()
147146
@Test def shapeless = projects.shapeless.run()
148-
@Test def simulacrumScalafixAnnotations = projects.simulacrumScalafixAnnotations.run()
147+
@Test def sourcecode = projects.sourcecode.run()
148+
@Test def stdLib213 = projects.stdLib213.run()
149+
@Test def ujson = projects.ujson.run()
150+
@Test def upickle = projects.upickle.run()
151+
@Test def utest = projects.utest.run()
149152
@Test def verify = projects.verify.run()
150153
@Test def xmlInterpolator = projects.xmlInterpolator.run()
151-
152-
end CommunityBuildTestB
154+
end CommunityBuildTestC
153155

154156
class TestCategory

0 commit comments

Comments
 (0)