temporal-sdk
Safe HaskellNone
LanguageHaskell2010

Temporal.EphemeralServer

Description

Run an Temporal server in a programatically for testing and development.

Synopsis

Documentation

getFreePort :: IO PortNumber Source #

Open a TCP socket, get its port and close the socket. Useful when you have an external service that needs a fresh port.

There is a small race condition present: It's possible to get a free port only for it to be bound by some other process or thread before used

openFreePort :: IO (PortNumber, Socket) Source #

Open a TCP socket on a random free port. This is like warp's openFreePort.

Core configuration

data EphemeralExeVersion #

Constructors

Default SDKDefault

Use a default version for the given SDK name and version.

Fixed String

Specific version.

data EphemeralExe #

Constructors

ExistingPath FilePath

Existing path on the filesystem for the executable.

CachedDownload EphemeralExeVersion (Maybe FilePath)

Download the executable if not already there.

data SDKDefault #

Constructors

SDKDefault 

data PortNumber #

Port number. Use the Num instance (i.e. use a literal) to create a PortNumber value.

>>> 1 :: PortNumber
1
>>> read "1" :: PortNumber
1
>>> show (12345 :: PortNumber)
"12345"
>>> 50000 < (51000 :: PortNumber)
True
>>> 50000 < (52000 :: PortNumber)
True
>>> 50000 + (10000 :: PortNumber)
60000

Instances

Instances details
Bounded PortNumber 
Instance details

Defined in Network.Socket.Types

Enum PortNumber 
Instance details

Defined in Network.Socket.Types

Storable PortNumber 
Instance details

Defined in Network.Socket.Types

Num PortNumber 
Instance details

Defined in Network.Socket.Types

Read PortNumber 
Instance details

Defined in Network.Socket.Types

Integral PortNumber 
Instance details

Defined in Network.Socket.Types

Real PortNumber 
Instance details

Defined in Network.Socket.Types

Show PortNumber 
Instance details

Defined in Network.Socket.Types

Eq PortNumber 
Instance details

Defined in Network.Socket.Types

Ord PortNumber 
Instance details

Defined in Network.Socket.Types