New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support SPI for ContainerPool and ContainerProxy #3663
Conversation
6d3ef71
to
a3c21b2
Compare
Could anyone trigger the build again please? |
Codecov Report
@@ Coverage Diff @@
## master #3663 +/- ##
==========================================
- Coverage 74.49% 74.41% -0.08%
==========================================
Files 126 126
Lines 5990 5996 +6
Branches 390 393 +3
==========================================
Hits 4462 4462
- Misses 1528 1534 +6
Continue to review full report at Codecov.
|
@style95 |
@csantanapr thank you for the good tip. |
@tysonnorris suggested to use a single SPI implementation for At first time, I thought of this kind of approach. trait ContainerPoolProvider extends Spi {
def getContainerPoolProps(childFactory: ActorRefFactory => ActorRef,
poolConfig: ContainerPoolConfig,
activationFeed: ActorRef,
someConfig: Option[PrewarmingConfig] = None): Props
def getContainerProxyProps(factory: (TransactionId, String, ImageName, Boolean, ByteSize, Int) => Future[Container],
ack: (TransactionId, WhiskActivation, Boolean, InstanceId, UUID) => Future[Any],
store: (TransactionId, WhiskActivation) => Future[Any],
collectLogs: (TransactionId, Identity, WhiskActivation, Container, ExecutableWhiskAction) => Future[ActivationLogs],
instance: InstanceId,
poolConfig: ContainerPoolConfig,
unusedTimeout: FiniteDuration = timeouts.idleContainer,
pauseGrace: FiniteDuration = timeouts.pauseGrace): Props
def requiredProperties: Map[String, String]
} So we can create both One option is to make As of now I am not quite sure which one is right direction. WDYT? |
Discalimer: i need to catch up on the tech exchange and various other write ups. But at first glance two adapters avoids conflating separate concerns. I do not see why they should be mixed or nested. |
The basic idea behind above approach is, |
26715bc
to
42355a8
Compare
42355a8
to
d5aaf05
Compare
d5aaf05
to
8aff137
Compare
@style95 this has rotted quite a bit and the dev-list discussions seem to move in another direction. I'll close this for now due to inactivity. Please feel free to reopen it if a proposal going this way is discussed and agreed upon on the dev-list. Thanks a lot for your work so far, very appreciated! 🎉 |
@markusthoemmes got it. |
This closes #3662.
Description
It will apply SPI to
ContainerPool
andContainerProxy
.Current
ContainerPool
andContainerProxy
are renamed withDefault
prefix.Related issue and scope
My changes affect the following components
Types of changes
Checklist: