Skip to content

Commit c372eee

Browse files
Fix modifying cross versions in mill (#114)
* Add extra cross versions instead of replacing it * Jenkins: add plugins missing on prod * Fix typos in crossVersion mapping * Try fix CI * Filter out tapir-loom - no JDK 19 support yet * Fix name clashes * Try fix CI * Don't build accessory images in CI * Try fix CI * Update configs * Don't publish artifact in the CI * Revert skiping image builing * Fix cli * Bump version to 0.1.1
1 parent 3582d56 commit c372eee

18 files changed

+69
-62
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,19 +93,19 @@ eval $(minikube -p minikube docker-env)
9393
Most likely you'll need to build the base image only once (it doesn't get modified too often but building it takes quite a lot of time), e.g.:
9494

9595
```shell
96-
scripts/build-builder-base.sh v0.1.0
96+
scripts/build-builder-base.sh v0.1.1
9797
```
9898

9999
Build all the remaining images
100100

101101
```shell
102-
scripts/build-quick.sh v0.1.0
102+
scripts/build-quick.sh v0.1.1
103103
```
104104

105105
or (re)build each image separately e.g.
106106

107107
```shell
108-
scripts/build-mvn-repo.sh v0.1.0
108+
scripts/build-mvn-repo.sh v0.1.1
109109
```
110110

111111
### Deploying and debugging in k8s

cli/scb-cli.scala

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ given ExecutionContext = ExecutionContext.Implicits.global
2525

2626
class FailedProjectException(msg: String) extends RuntimeException(msg) with NoStackTrace
2727

28-
val communityBuildVersion = sys.props.getOrElse("communitybuild.version", "v0.1.0")
28+
val communityBuildVersion = sys.props.getOrElse("communitybuild.version", "v0.1.1")
2929
private val CBRepoName = "VirtusLab/community-build3"
3030
val projectBuilderUrl = s"https://raw.githubusercontent.com/$CBRepoName/master/project-builder"
3131
lazy val communityBuildDir = sys.props
@@ -41,7 +41,8 @@ case class Config(
4141
reproducer: JenkinsReproducerConfig = JenkinsReproducerConfig(),
4242
customRun: CustomBuildConfig = CustomBuildConfig(null, null),
4343
minikube: Config.MinikubeConfig = Config.MinikubeConfig(),
44-
redirectLogs: Boolean = true
44+
redirectLogs: Boolean = true,
45+
publishArtifacts: Boolean = true
4546
):
4647
def withMinikube(fn: Config.MinikubeConfig => Config.MinikubeConfig) =
4748
copy(minikube = fn(minikube))
@@ -106,6 +107,10 @@ object Config:
106107
.action { (_, c) => c.copy(redirectLogs = false) }
107108
.text("Do not redirect runners logs to file")
108109
.hidden(),
110+
opt[Unit]("noPublishArtifacts")
111+
.action { (_, c) => c.copy(publishArtifacts = false) }
112+
.text("Don't publish artifacts of the build")
113+
.hidden(),
109114
// Commands
110115
cmd("reproduce")
111116
.action { (_, c) => c.copy(command = Config.Command.ReproduceJenkinsBuild) }
@@ -819,7 +824,7 @@ object MinikubeReproducer:
819824
params.repositoryUrl,
820825
params.repositoryRevision.getOrElse(""),
821826
buildInfo.scalaVersion,
822-
params.version.getOrElse(""),
827+
if !config.publishArtifacts then "" else params.version.getOrElse(""),
823828
project.effectiveTargets.mkString(" "),
824829
params.mavenRepositoryUrl,
825830
params.enforcedSbtVersion.getOrElse(config.command match {
@@ -1103,7 +1108,7 @@ class LocalReproducer(using config: Config, build: BuildInfo):
11031108
if !os.exists(sbtProjectDir) then os.makeDir(sbtProjectDir)
11041109
project.params.enforcedSbtVersion match {
11051110
case Some(version) =>
1106-
os.write.over(sbtBuildProperties, s"sbt.version=$version")
1111+
os.write.over(sbtBuildProperties, s"sbt.version=$version")
11071112
case _ =>
11081113
if belowMinimalSbtVersion then
11091114
println(

env/prod/config/filtered-projects.txt

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ wireapp:wire-signals:.*
2828
# Missing module moduleMappings
2929
busymachines:pureharm-db-core:.*
3030
eed3si9n:sbt-coursier:.*
31+
neandertech:jsonrpclib:.*
3132

3233
# Not an official release version
3334
com-lihaoyi:ammonite:.*
@@ -66,6 +67,22 @@ sciss:swingplus:.*
6667
joan38:kubernetes-client:.*
6768
carlosedp:riscvassembler:.*
6869

70+
## Missing artifacts in public repo
71+
# sbt-beangle-parent:0.6.0
72+
beangle:boot:.*
73+
beangle:cache:.*
74+
beangle:cdi:.*
75+
beangle:commons:.*
76+
beangle:data:.*
77+
beangle:security:.*
78+
beangle:serializer:.*
79+
beangle:template:.*
80+
beangle:web:.*
81+
beangle:webmvc:.*
82+
83+
## Misconfigured + needs ruby on path
84+
makenowjust-labs:lite:.*
85+
6986
## Publishing artifact leads to failurs in downstream projects
7087
### Publishes only pom, no artifacts
7188
msgpack4z:msgpack4z-native:.*
@@ -134,15 +151,18 @@ zio:zio-aws:.*
134151

135152
# Depends on not published lib with CrossVersion.full
136153
## wartremover
154+
atedeg:mdm:.*
137155
cognitedata:cognite-sdk-scala:.*
138156
kevin-lee:just-semver:.*
139157
kevin-lee:just-sysprocess:.*
158+
medeia:medeia:.*
140159
xuwei-k:wartremover-scalikejdbc:.*
141160

142161
## better2string
143162
kubukoz:drops:.*
144163
kubukoz:spotify-next:.*
145164
kubukoz:sup:.*
165+
polyvariant:scodec-java-classfile:.*
146166

147167
# Depends on no longer available pre-release
148168
oleg-py:shironeko:0.2.0-M.*
@@ -167,3 +187,6 @@ japgolly:nyaya.*
167187
## errors4s_errors4s-core
168188
errors4s:errors4s-core-scalacheck:.*
169189

190+
# Unsupported minimal JDK version
191+
## JDK 19
192+
softwaremill:tapir-loom:.*

jenkins/seeds/buildCommunityProject.groovy

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ pipeline {
5757
shareProcessNamespace: true
5858
containers:
5959
- name: project-builder
60-
image: virtuslab/scala-community-build-project-builder:jdk${params.javaVersion?: 11}-v0.1.0
60+
image: virtuslab/scala-community-build-project-builder:jdk${params.javaVersion?: 11}-v0.1.1
6161
imagePullPolicy: IfNotPresent
6262
volumeMounts:
6363
- name: mvn-repo-cert
@@ -164,7 +164,7 @@ pipeline {
164164
containers: [
165165
containerTemplate(
166166
name: 'reporter',
167-
image: 'virtuslab/scala-community-build-project-builder:jdk11-v0.1.0',
167+
image: 'virtuslab/scala-community-build-project-builder:jdk11-v0.1.1',
168168
command: 'sleep',
169169
args: '15m',
170170
resourceRequestMemory: '250M',

jenkins/seeds/buildCompiler.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ pipeline {
3434
name: mvn-repo-cert
3535
containers:
3636
- name: compiler-builder
37-
image: virtuslab/scala-community-build-compiler-builder:v0.1.0
37+
image: virtuslab/scala-community-build-compiler-builder:v0.1.1
3838
imagePullPolicy: IfNotPresent
3939
volumeMounts:
4040
- name: mvn-repo-cert

jenkins/seeds/computeBuildPlan.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ pipeline {
2525
spec:
2626
containers:
2727
- name: coordinator
28-
image: virtuslab/scala-community-build-coordinator:v0.1.0
28+
image: virtuslab/scala-community-build-coordinator:v0.1.1
2929
imagePullPolicy: IfNotPresent
3030
command:
3131
- cat

jenkins/seeds/runBuild.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ pipeline {
188188
podTemplate(
189189
containers: [
190190
// Any container having a curl or pre-installed scala-cli would work
191-
containerTemplate(name: 'reporter', image: 'virtuslab/scala-community-build-project-builder:jdk17-v0.1.0', command: 'sleep', args: '15m'),
191+
containerTemplate(name: 'reporter', image: 'virtuslab/scala-community-build-project-builder:jdk17-v0.1.1', command: 'sleep', args: '15m'),
192192
],
193193
envVars: [
194194
envVar(key: 'ELASTIC_USERNAME', value: params.elasticSearchUserName),

k8s/jenkins.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,10 @@ jenkins:
146146
version: "1.3"
147147
- name: timestamper
148148
version: "1.20"
149+
- name: workflow-cps
150+
version: "2729.vea_17b_79ed57a_"
151+
- name: pipeline-model-extensions
152+
version: "2.2114.v2654ca_721309"
149153

150154
# roles define a list of extra RBAC roles for the Jenkins Master pod service account
151155
roles: []

k8s/mvn-repo.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ spec:
2020
secretName: mvn-repo-keystore
2121
containers:
2222
- name: mvn-repo
23-
image: virtuslab/scala-community-build-mvn-repo:v0.1.0
23+
image: virtuslab/scala-community-build-mvn-repo:v0.1.1
2424
imagePullPolicy: IfNotPresent
2525
ports:
2626
- containerPort: 8081

k8s/project-builder-mill-test.yaml

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,23 +5,10 @@ metadata:
55
spec:
66
template:
77
spec:
8-
volumes:
9-
- name: mvn-repo-cert
10-
configMap:
11-
name: mvn-repo-cert
128
containers:
139
- name: project-builder-mill-test
1410
image: virtuslab/scala-community-build-project-builder:jdk17-test
1511
imagePullPolicy: IfNotPresent
16-
volumeMounts:
17-
- name: mvn-repo-cert
18-
mountPath: /usr/local/share/ca-certificates/mvn-repo.crt
19-
subPath: mvn-repo.crt
20-
readOnly: true
21-
lifecycle:
22-
postStart:
23-
exec:
24-
command: ["update-ca-certificates"]
2512
command:
2613
- "bash"
2714
- "-c"
@@ -30,7 +17,7 @@ spec:
3017
https://github.com/com-lihaoyi/upickle.git \
3118
1.5.0 \
3219
3.1.0 \
33-
1.5.0 \
20+
"" \
3421
"com.lihaoyi%ujson com.lihaoyi%upickle com.lihaoyi%upickle-core com.lihaoyi%upack com.lihaoyi%upickle-implicits dummy.org%dummy-project" \
3522
https://mvn-repo:8081/maven2/test \
3623
1.5.5 \

0 commit comments

Comments
 (0)