Skip to content

Commit 346d312

Browse files
author
Alexander Pann
committed
activate migration checking
1 parent 6148d25 commit 346d312

File tree

2 files changed

+45
-6
lines changed

2 files changed

+45
-6
lines changed

build.gradle

Lines changed: 36 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
import de.itemis.mps.gradle.*
2+
import de.itemis.mps.gradle.tasks.MpsMigrate
3+
import de.itemis.mps.gradle.tasks.Remigrate
4+
import de.itemis.mps.gradle.downloadJBR.DownloadJbrForPlatform
25
import groovy.xml.XmlSlurper
36
import java.time.LocalDate
47
import java.time.format.DateTimeFormatter
@@ -9,14 +12,13 @@ buildscript {
912
repositories {
1013
maven { url 'https://artifacts.itemis.cloud/repository/maven-mps/' }
1114
}
12-
dependencies {
13-
classpath 'de.itemis.mps:mps-gradle-plugin:1.23.1.412.a54f29f'
14-
}
1515
}
1616

1717
plugins {
1818
id 'base'
1919
id 'maven-publish'
20+
id 'de.itemis.mps.gradle.common' version '1.29.+'
21+
id 'de.itemis.mps.gradle.launcher' version '2.5.2.+'
2022
id "com.github.breadmoirai.github-release" version "2.4.1"
2123
id "org.cyclonedx.bom" version "1.8.2"
2224
}
@@ -125,6 +127,7 @@ wrapper {
125127

126128
configurations {
127129
mps
130+
rerunMigrationsBackend
128131
languageLibs
129132
junitAnt
130133
pcollections // Synced to org.iets3.core.expr.base.collections.stubs/lib
@@ -133,6 +136,7 @@ configurations {
133136

134137
dependencies {
135138
mps "com.jetbrains:mps:$mpsVersion"
139+
rerunMigrationsBackend("de.itemis.mps.build-backends:remigrate:0.0.5.+")
136140
languageLibs "org.mpsqa:all-in-one:$mpsQAVersion"
137141
languageLibs "com.mbeddr:platform:$mbeddrVersionSelector"
138142
junitAnt 'org.apache.ant:ant-junit:1.10.6'
@@ -192,6 +196,8 @@ task resolveBigMath(type: Sync) {
192196

193197
task resolveDependencies(dependsOn: ['downloadJbr', resolveMps, resolveLanguageLibs, resolvePcollections, resolveBigMath])
194198

199+
ext.mpsHomeDir = resolveMps.destinationDir
200+
195201
// Default arguments for ant scripts
196202
def defaultScriptArgs = [
197203
'mps.home' : resolveMps.destinationDir,
@@ -274,12 +280,37 @@ task failOnTestError() {
274280
buildAndRunTests.configure { finalizedBy failOnTestError }
275281
check.dependsOn buildAndRunTests
276282

277-
tasks.register('migrate') {
283+
tasks.register('migrate', MpsMigrate) {
284+
dependsOn(resolveMps, 'resolveMpsForModelcheck', 'downloadJbr', 'buildLanguages', 'buildAndRunTests')
285+
javaLauncher = tasks.named('downloadJbr', DownloadJbrForPlatform).flatMap { it.javaLauncher }
286+
287+
haltOnPrecheckFailure = false
288+
haltOnDependencyError = true
289+
290+
mpsHome = mpsHomeDir
291+
292+
projectDirectories.from('code/languages/org.iets3.opensource')
293+
folderMacros['iets3.github.opensource.home'] = rootProject.layout.projectDirectory
278294

295+
pluginRoots.from(new File(mpsHomeDir, 'plugins'))
296+
297+
maxHeapSize = '4G'
279298
}
280299

281-
tasks.register('remigrate') {
300+
tasks.register('remigrate', Remigrate) {
301+
mustRunAfter('migrate')
302+
mustRunAfter('buildLanguages', 'buildAndRunTests')
303+
304+
dependsOn(resolveMps, 'resolveMpsForModelcheck','downloadJbr')
305+
306+
javaLauncher = tasks.named('downloadJbr', DownloadJbrForPlatform).flatMap { it.javaLauncher }
282307

308+
mpsHome = mpsHomeDir
309+
projectDirectories.from('code/languages/org.iets3.opensource')
310+
folderMacros['iets3.github.opensource.home'] = rootProject.layout.projectDirectory
311+
312+
pluginRoots.from(new File(mpsHomeDir, 'plugins'))
313+
maxHeapSize = '4G'
283314
}
284315

285316
apply plugin: 'modelcheck'
@@ -301,7 +332,6 @@ modelcheck {
301332
maxHeap = "4G"
302333
}
303334

304-
305335
afterEvaluate { project ->
306336
check.configure {
307337
dependsOn tasks.named('checkmodels')

settings.gradle

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,11 @@
1+
pluginManagement {
2+
repositories {
3+
maven { url 'https://artifacts.itemis.cloud/repository/maven-mps' }
4+
5+
// Need to manually include the default Gradle plugin portal repository when overriding the defaults.
6+
gradlePluginPortal()
7+
}
8+
}
9+
110
rootProject.name = 'opensource'
211

0 commit comments

Comments
 (0)