Skip to content

Commit 33b8806

Browse files
committed
.
[ci] Signed-off-by: Moritz Kiefer <[email protected]>
1 parent cc5f91a commit 33b8806

File tree

8 files changed

+62
-31
lines changed

8 files changed

+62
-31
lines changed

apps/app/src/main/scala/org/lfdecentralizedtrust/splice/config/SpliceConfig.scala

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -541,6 +541,10 @@ object SpliceConfig {
541541
implicit val partyIdConfigReader: ConfigReader[PartyId] = ConfigReader.fromString(str =>
542542
Codec.decode(Codec.Party)(str).left.map(err => CannotConvert(str, "PartyId", err))
543543
)
544+
implicit val packageVersionConfigReader: ConfigReader[PackageVersion] =
545+
ConfigReader.fromString(str =>
546+
PackageVersion.fromString(str).left.map(err => CannotConvert(str, "PackageVersion", err))
547+
)
544548
implicit val beneficiaryConfigReader: ConfigReader[BeneficiaryConfig] =
545549
deriveReader[BeneficiaryConfig]
546550
implicit val svParticipantClientConfigReader: ConfigReader[SvParticipantClientConfig] =
@@ -890,6 +894,8 @@ object SpliceConfig {
890894
deriveWriter[PeriodicBackupDumpConfig]
891895
implicit val partyIdConfigWriter: ConfigWriter[PartyId] =
892896
implicitly[ConfigWriter[String]].contramap(_.toString)
897+
implicit val packageVersionConfigWriter: ConfigWriter[PackageVersion] =
898+
implicitly[ConfigWriter[String]].contramap(_.toString)
893899
implicit val beneficiaryConfigWriter: ConfigWriter[BeneficiaryConfig] =
894900
deriveWriter[BeneficiaryConfig]
895901
implicit val svParticipantClientConfigWriter: ConfigWriter[SvParticipantClientConfig] =

apps/app/src/test/scala/org/lfdecentralizedtrust/splice/integration/EnvironmentDefinition.scala

Lines changed: 33 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import org.lfdecentralizedtrust.splice.console.{
2626
ValidatorAppBackendReference,
2727
}
2828
import org.lfdecentralizedtrust.splice.environment.{
29+
DarResources,
2930
SpliceConsoleEnvironment,
3031
SpliceEnvironment,
3132
SpliceEnvironmentFactory,
@@ -106,30 +107,40 @@ case class EnvironmentDefinition(
106107
})
107108

108109
def withInitialPackageVersions: EnvironmentDefinition =
109-
addConfigTransforms((_, config) =>
110-
ConfigTransforms.updateAllSvAppFoundDsoConfigs_(
111-
_.copy(
112-
// FIXME: read config from env var or something
113-
initialPackageConfig = InitialPackageConfig(
114-
amuletVersion = "0.1.8",
115-
amuletNameServiceVersion = "0.1.8",
116-
dsoGovernanceVersion = "0.1.11",
117-
validatorLifecycleVersion = "0.1.2",
118-
walletVersion = "0.1.8",
119-
walletPaymentsVersion = "0.1.8",
110+
addConfigTransforms(
111+
(_, config) =>
112+
ConfigTransforms.updateAllSvAppFoundDsoConfigs_(
113+
_.copy(
114+
// FIXME: read config from env var or something
115+
initialPackageConfig = InitialPackageConfig(
116+
amuletVersion = "0.1.8",
117+
amuletNameServiceVersion = "0.1.8",
118+
dsoGovernanceVersion = "0.1.11",
119+
validatorLifecycleVersion = "0.1.2",
120+
walletVersion = "0.1.8",
121+
walletPaymentsVersion = "0.1.8",
122+
)
120123
)
121-
)
122-
)(config),
124+
)(config),
123125
(_, config) =>
124-
ConfigTransforms.updateAllValidatorAppConfigs_( c =>
125-
c.copy(
126-
appInstances = c.appInstances.transform {
127-
// FIXME
128-
case ("splitwell", instance) => instance.copy(dars = Seq(java.nio.file.Paths.get("daml/dars/splitwell-0.1.8.dar")))
129-
case (_, instance) => instance
130-
}
131-
)
132-
)(config)
126+
ConfigTransforms.updateAllValidatorAppConfigs_(c =>
127+
c.copy(
128+
appInstances = c.appInstances.transform {
129+
// FIXME
130+
case ("splitwell", instance) =>
131+
instance.copy(dars = Seq(java.nio.file.Paths.get("daml/dars/splitwell-0.1.8.dar")))
132+
case (_, instance) => instance
133+
}
134+
)
135+
)(config),
136+
(_, config) =>
137+
ConfigTransforms.updateAllSplitwellAppConfigs_(c =>
138+
c.copy(
139+
requiredDarVersion =
140+
// FIXME
141+
DarResources.splitwell_0_1_8.metadata.version
142+
)
143+
)(config),
133144
)
134145

135146
def withInitializedNodes(): EnvironmentDefinition =

apps/app/src/test/scala/org/lfdecentralizedtrust/splice/integration/tests/DockerComposeFullNetworkFrontendIntegrationTest.scala

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ class DockerComposeFullNetworkFrontendIntegrationTest
1313
override def environmentDefinition: SpliceEnvironmentDefinition =
1414
EnvironmentDefinition.empty(this.getClass.getSimpleName)
1515

16+
// This does nothing as the wallet clients will not actually be connected to the compose setup
17+
override protected def runTokenStandardCliSanityCheck: Boolean = false
18+
1619
override lazy val resetRequiredTopologyState = false
1720

1821
val partyHint = "local-composeValidator-1"

apps/app/src/test/scala/org/lfdecentralizedtrust/splice/integration/tests/SplitwellIntegrationTest.scala

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,12 @@ class SplitwellIntegrationTest
1717
with WalletTestUtil
1818
with TriggerTestUtil {
1919

20-
private val darPath = "daml/splitwell/.daml/dist/splitwell-current.dar"
21-
2220
override def environmentDefinition: SpliceEnvironmentDefinition =
2321
EnvironmentDefinition
2422
.simpleTopology1Sv(this.getClass.getSimpleName)
2523
.withAdditionalSetup(implicit env => {
26-
aliceValidatorBackend.participantClient.upload_dar_unless_exists(darPath)
27-
bobValidatorBackend.participantClient.upload_dar_unless_exists(darPath)
24+
aliceValidatorBackend.participantClient.upload_dar_unless_exists(splitwellDarPath)
25+
bobValidatorBackend.participantClient.upload_dar_unless_exists(splitwellDarPath)
2826
})
2927
// TODO(#8300) Consider removing this once domain config updates are less disruptive to carefully-timed batching tests.
3028
.withSequencerConnectionsFromScanDisabled()

apps/app/src/test/scala/org/lfdecentralizedtrust/splice/integration/tests/SplitwellUpgradeIntegrationTest.scala

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,13 @@ class SplitwellUpgradeIntegrationTest
2222
with SplitwellTestUtil
2323
with WalletTestUtil {
2424

25-
private val darPath = "daml/splitwell/.daml/dist/splitwell-current.dar"
26-
2725
override def environmentDefinition: SpliceEnvironmentDefinition =
2826
EnvironmentDefinition
2927
.simpleTopology1Sv(this.getClass.getSimpleName)
3028
.addConfigTransform((_, config) => ConfigTransforms.useSplitwellUpgradeDomain()(config))
3129
.withAdditionalSetup(implicit env => {
32-
aliceValidatorBackend.participantClient.upload_dar_unless_exists(darPath)
33-
bobValidatorBackend.participantClient.upload_dar_unless_exists(darPath)
30+
aliceValidatorBackend.participantClient.upload_dar_unless_exists(splitwellDarPath)
31+
bobValidatorBackend.participantClient.upload_dar_unless_exists(splitwellDarPath)
3432
})
3533
// TODO(#8300) Consider removing this once domain config updates are less disruptive to carefully-timed batching tests.
3634
.withSequencerConnectionsFromScanDisabled()

apps/app/src/test/scala/org/lfdecentralizedtrust/splice/integration/tests/WalletTransfersFrontendIntegrationTest.scala

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -382,6 +382,7 @@ object BaseWalletTransfersFrontendIntegrationTest {
382382
)
383383
}
384384

385+
@org.lfdecentralizedtrust.splice.util.scalatesttags.Amulet_0_1_9
385386
class WalletTransferOffersFrontendIntegrationTest
386387
extends BaseWalletTransfersFrontendIntegrationTest {
387388
override protected def createTransferOfferViaBackend(walletClient: WalletAppClientReference)(
@@ -408,6 +409,7 @@ class WalletTransferOffersFrontendIntegrationTest
408409
override protected def shouldDisableTokenStandardSwitch: Boolean = true
409410
}
410411

412+
@org.lfdecentralizedtrust.splice.util.scalatesttags.Amulet_0_1_9
411413
class TokenStandardWalletTransfersFrontendIntegrationTest
412414
extends BaseWalletTransfersFrontendIntegrationTest {
413415
override protected def createTransferOfferViaBackend(walletClient: WalletAppClientReference)(

apps/splitwell/src/main/scala/org/lfdecentralizedtrust/splice/splitwell/SplitwellApp.scala

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import com.digitalasset.canton.resource.Storage
1515
import com.digitalasset.canton.time.Clock
1616
import com.digitalasset.canton.topology.{PartyId, SynchronizerId}
1717
import com.digitalasset.canton.tracing.{TraceContext, TracerProvider}
18+
import io.grpc.Status
1819
import io.opentelemetry.api.trace.Tracer
1920
import org.apache.pekko.actor.ActorSystem
2021
import org.apache.pekko.http.cors.scaladsl.CorsDirectives.cors
@@ -225,7 +226,16 @@ class SplitwellApp(
225226
)
226227
}
227228

228-
override lazy val requiredPackageIds = Set(DarResources.splitwell.bootstrap.packageId)
229+
override lazy val requiredPackageIds = Set(
230+
DarResources.splitwell.all
231+
.find(_.metadata.version == config.requiredDarVersion)
232+
.getOrElse(
233+
throw Status.INVALID_ARGUMENT
234+
.withDescription(s"No splitwell DAR with version ${config.requiredDarVersion} found")
235+
.asRuntimeException
236+
)
237+
.packageId
238+
)
229239

230240
protected[this] override def automationServices(st: SplitwellApp.State) =
231241
Seq(st.automation)

apps/splitwell/src/main/scala/org/lfdecentralizedtrust/splice/splitwell/config/SplitwellAppConfig.scala

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@ import org.lfdecentralizedtrust.splice.config.{
1212
HttpClientConfig,
1313
NetworkAppClientConfig,
1414
}
15+
import org.lfdecentralizedtrust.splice.environment.DarResources
1516
import org.lfdecentralizedtrust.splice.scan.config.ScanAppClientConfig
17+
import com.digitalasset.daml.lf.data.Ref.PackageVersion
1618
import com.digitalasset.canton.config.*
1719

1820
case class SplitwellSynchronizerConfig(
@@ -40,6 +42,7 @@ case class SplitwellAppBackendConfig(
4042
domainMigrationId: Long = 0L,
4143
domains: SplitwellSynchronizerConfig,
4244
parameters: SpliceParametersConfig = SpliceParametersConfig(batching = BatchingConfig()),
45+
requiredDarVersion: PackageVersion = DarResources.splitwell.bootstrap.metadata.version,
4346
) extends SpliceBackendConfig // TODO(#736): fork or generalize this trait.
4447
{
4548
override val nodeTypeName: String = "splitwell"

0 commit comments

Comments
 (0)