• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

input-output-hk / atala-prism-building-blocks / 6748095400

03 Nov 2023 04:55PM UTC coverage: 31.386% (+0.4%) from 30.996%
6748095400

Pull #755

yshyn-iohk
ci: configure a mapped port for the Keycloak container

Signed-off-by: Yurii Shynbuiev <yurii.shynbuiev@iohk.io>
Pull Request #755: feat: Keycloak container with AdminClient [WIP]

73 of 171 new or added lines in 7 files covered. (42.69%)

209 existing lines in 79 files now uncovered.

4039 of 12869 relevant lines covered (31.39%)

0.31 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

28.57
/shared-test/src/main/scala/io/iohk/atala/sharedtest/containers/KeycloakContainerCustom.scala
1
package io.iohk.atala.sharedtest.containers
2

3
import com.dimafeng.testcontainers.SingleContainer
4
import dasniko.testcontainers.keycloak.ExtendableKeycloakContainer
5
import io.iohk.atala.sharedtest.containers.KeycloakTestContainer.keycloakContainer
6
import org.testcontainers.utility.DockerImageName
7
import zio.{TaskLayer, ZIO, ZLayer}
8

9
final class KeycloakContainerCustom(
NEW
10
    dockerImageNameOverride: DockerImageName,
×
11
    isOnGithubRunner: Boolean = false
12
) extends SingleContainer[ExtendableKeycloakContainer[_]] {
13

14
  private val keycloakContainer: ExtendableKeycloakContainer[_] = new ExtendableKeycloakContainer(
15
    dockerImageNameOverride.toString
16
  ) {
17
    override def getHost: String = {
18
      if (isOnGithubRunner) super.getContainerId.take(12)
19
      else super.getHost
20
    }
21

22
    override def getMappedPort(originalPort: Int): Integer = {
23
      if (isOnGithubRunner) 8080
24
      else super.getMappedPort(originalPort)
25
    }
26
  }
27

28
  override val container: ExtendableKeycloakContainer[_] = keycloakContainer
29
}
30

31
object KeycloakContainerCustom {
32
  val layer: TaskLayer[KeycloakContainerCustom] =
1✔
NEW
33
    ZLayer.scoped {
×
NEW
34
      ZIO
×
NEW
35
        .acquireRelease(ZIO.attemptBlockingIO {
×
NEW
36
          keycloakContainer()
×
37
        })(container => ZIO.attemptBlockingIO(container.stop()).orDie)
1✔
38
        .tap(container => ZIO.attemptBlocking(container.start()))
39
    }
40
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc