b9-3.2.3: A tool and library for building virtual machine images.
Safe HaskellNone
LanguageHaskell2010

B9.ExecEnv

Description

Data types describing the execution environment of virtual machine builds. ExecEnv, Resources and SharedDirectory describe how B9.LibVirtLXC should configure and execute build scripts, as defined in B9.ShellScript and B9.Vm.

Synopsis

Documentation

data ExecEnv Source #

The environment for the execution of Scripts inside a Container

Instances

Instances details
Eq ExecEnv Source # 
Instance details

Defined in B9.ExecEnv

Methods

(==) :: ExecEnv -> ExecEnv -> Bool #

(/=) :: ExecEnv -> ExecEnv -> Bool #

Data ExecEnv Source # 
Instance details

Defined in B9.ExecEnv

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ExecEnv -> c ExecEnv #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ExecEnv #

toConstr :: ExecEnv -> Constr #

dataTypeOf :: ExecEnv -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ExecEnv) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ExecEnv) #

gmapT :: (forall b. Data b => b -> b) -> ExecEnv -> ExecEnv #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ExecEnv -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ExecEnv -> r #

gmapQ :: (forall d. Data d => d -> u) -> ExecEnv -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ExecEnv -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ExecEnv -> m ExecEnv #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ExecEnv -> m ExecEnv #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ExecEnv -> m ExecEnv #

Read ExecEnv Source # 
Instance details

Defined in B9.ExecEnv

Show ExecEnv Source # 
Instance details

Defined in B9.ExecEnv

Generic ExecEnv Source # 
Instance details

Defined in B9.ExecEnv

Associated Types

type Rep ExecEnv :: Type -> Type #

Methods

from :: ExecEnv -> Rep ExecEnv x #

to :: Rep ExecEnv x -> ExecEnv #

Hashable ExecEnv Source # 
Instance details

Defined in B9.ExecEnv

Methods

hashWithSalt :: Int -> ExecEnv -> Int #

hash :: ExecEnv -> Int #

Binary ExecEnv Source # 
Instance details

Defined in B9.ExecEnv

Methods

put :: ExecEnv -> Put #

get :: Get ExecEnv #

putList :: [ExecEnv] -> Put #

NFData ExecEnv Source # 
Instance details

Defined in B9.ExecEnv

Methods

rnf :: ExecEnv -> () #

type Rep ExecEnv Source # 
Instance details

Defined in B9.ExecEnv

type Rep ExecEnv = D1 ('MetaData "ExecEnv" "B9.ExecEnv" "b9-3.2.3-3sZk3wiMlOE9ANxPzA3rTw" 'False) (C1 ('MetaCons "ExecEnv" 'PrefixI 'True) ((S1 ('MetaSel ('Just "envName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "envImageMounts") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Mounted Image])) :*: (S1 ('MetaSel ('Just "envSharedDirectories") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [SharedDirectory]) :*: S1 ('MetaSel ('Just "envResources") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Resources))))

data Resources Source #

Constructors

Resources 

Instances

Instances details
Eq Resources Source # 
Instance details

Defined in B9.ExecEnv

Data Resources Source # 
Instance details

Defined in B9.ExecEnv

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Resources -> c Resources #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Resources #

toConstr :: Resources -> Constr #

dataTypeOf :: Resources -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Resources) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Resources) #

gmapT :: (forall b. Data b => b -> b) -> Resources -> Resources #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Resources -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Resources -> r #

gmapQ :: (forall d. Data d => d -> u) -> Resources -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Resources -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Resources -> m Resources #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Resources -> m Resources #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Resources -> m Resources #

Read Resources Source # 
Instance details

Defined in B9.ExecEnv

Show Resources Source # 
Instance details

Defined in B9.ExecEnv

Generic Resources Source # 
Instance details

Defined in B9.ExecEnv

Associated Types

type Rep Resources :: Type -> Type #

Semigroup Resources Source # 
Instance details

Defined in B9.ExecEnv

Monoid Resources Source # 
Instance details

Defined in B9.ExecEnv

Hashable Resources Source # 
Instance details

Defined in B9.ExecEnv

Binary Resources Source # 
Instance details

Defined in B9.ExecEnv

NFData Resources Source # 
Instance details

Defined in B9.ExecEnv

Methods

rnf :: Resources -> () #

type Rep Resources Source # 
Instance details

Defined in B9.ExecEnv

type Rep Resources = D1 ('MetaData "Resources" "B9.ExecEnv" "b9-3.2.3-3sZk3wiMlOE9ANxPzA3rTw" 'False) (C1 ('MetaCons "Resources" 'PrefixI 'True) (S1 ('MetaSel ('Just "maxMemory") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RamSize) :*: (S1 ('MetaSel ('Just "cpuCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: S1 ('MetaSel ('Just "cpuArch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CPUArch))))

data SharedDirectory Source #

Instances

Instances details
Eq SharedDirectory Source # 
Instance details

Defined in B9.ExecEnv

Data SharedDirectory Source # 
Instance details

Defined in B9.ExecEnv

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SharedDirectory -> c SharedDirectory #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SharedDirectory #

toConstr :: SharedDirectory -> Constr #

dataTypeOf :: SharedDirectory -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SharedDirectory) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SharedDirectory) #

gmapT :: (forall b. Data b => b -> b) -> SharedDirectory -> SharedDirectory #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SharedDirectory -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SharedDirectory -> r #

gmapQ :: (forall d. Data d => d -> u) -> SharedDirectory -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SharedDirectory -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SharedDirectory -> m SharedDirectory #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SharedDirectory -> m SharedDirectory #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SharedDirectory -> m SharedDirectory #

Read SharedDirectory Source # 
Instance details

Defined in B9.ExecEnv

Show SharedDirectory Source # 
Instance details

Defined in B9.ExecEnv

Generic SharedDirectory Source # 
Instance details

Defined in B9.ExecEnv

Associated Types

type Rep SharedDirectory :: Type -> Type #

Hashable SharedDirectory Source # 
Instance details

Defined in B9.ExecEnv

Binary SharedDirectory Source # 
Instance details

Defined in B9.ExecEnv

NFData SharedDirectory Source # 
Instance details

Defined in B9.ExecEnv

Methods

rnf :: SharedDirectory -> () #

type Rep SharedDirectory Source # 
Instance details

Defined in B9.ExecEnv

data CPUArch Source #

Constructors

X86_64 
I386 

Instances

Instances details
Eq CPUArch Source # 
Instance details

Defined in B9.ExecEnv

Methods

(==) :: CPUArch -> CPUArch -> Bool #

(/=) :: CPUArch -> CPUArch -> Bool #

Data CPUArch Source # 
Instance details

Defined in B9.ExecEnv

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CPUArch -> c CPUArch #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CPUArch #

toConstr :: CPUArch -> Constr #

dataTypeOf :: CPUArch -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CPUArch) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CPUArch) #

gmapT :: (forall b. Data b => b -> b) -> CPUArch -> CPUArch #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CPUArch -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CPUArch -> r #

gmapQ :: (forall d. Data d => d -> u) -> CPUArch -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CPUArch -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CPUArch -> m CPUArch #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CPUArch -> m CPUArch #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CPUArch -> m CPUArch #

Read CPUArch Source # 
Instance details

Defined in B9.ExecEnv

Show CPUArch Source # 
Instance details

Defined in B9.ExecEnv

Generic CPUArch Source # 
Instance details

Defined in B9.ExecEnv

Associated Types

type Rep CPUArch :: Type -> Type #

Methods

from :: CPUArch -> Rep CPUArch x #

to :: Rep CPUArch x -> CPUArch #

Semigroup CPUArch Source # 
Instance details

Defined in B9.ExecEnv

Monoid CPUArch Source # 
Instance details

Defined in B9.ExecEnv

Hashable CPUArch Source # 
Instance details

Defined in B9.ExecEnv

Methods

hashWithSalt :: Int -> CPUArch -> Int #

hash :: CPUArch -> Int #

Binary CPUArch Source # 
Instance details

Defined in B9.ExecEnv

Methods

put :: CPUArch -> Put #

get :: Get CPUArch #

putList :: [CPUArch] -> Put #

NFData CPUArch Source # 
Instance details

Defined in B9.ExecEnv

Methods

rnf :: CPUArch -> () #

type Rep CPUArch Source # 
Instance details

Defined in B9.ExecEnv

type Rep CPUArch = D1 ('MetaData "CPUArch" "B9.ExecEnv" "b9-3.2.3-3sZk3wiMlOE9ANxPzA3rTw" 'False) (C1 ('MetaCons "X86_64" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "I386" 'PrefixI 'False) (U1 :: Type -> Type))

data RamSize Source #

Instances

Instances details
Eq RamSize Source # 
Instance details

Defined in B9.ExecEnv

Methods

(==) :: RamSize -> RamSize -> Bool #

(/=) :: RamSize -> RamSize -> Bool #

Data RamSize Source # 
Instance details

Defined in B9.ExecEnv

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RamSize -> c RamSize #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RamSize #

toConstr :: RamSize -> Constr #

dataTypeOf :: RamSize -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c RamSize) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RamSize) #

gmapT :: (forall b. Data b => b -> b) -> RamSize -> RamSize #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RamSize -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RamSize -> r #

gmapQ :: (forall d. Data d => d -> u) -> RamSize -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> RamSize -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> RamSize -> m RamSize #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RamSize -> m RamSize #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RamSize -> m RamSize #

Ord RamSize Source # 
Instance details

Defined in B9.ExecEnv

Read RamSize Source # 
Instance details

Defined in B9.ExecEnv

Show RamSize Source # 
Instance details

Defined in B9.ExecEnv

Generic RamSize Source # 
Instance details

Defined in B9.ExecEnv

Associated Types

type Rep RamSize :: Type -> Type #

Methods

from :: RamSize -> Rep RamSize x #

to :: Rep RamSize x -> RamSize #

Semigroup RamSize Source # 
Instance details

Defined in B9.ExecEnv

Monoid RamSize Source # 
Instance details

Defined in B9.ExecEnv

Hashable RamSize Source # 
Instance details

Defined in B9.ExecEnv

Methods

hashWithSalt :: Int -> RamSize -> Int #

hash :: RamSize -> Int #

Binary RamSize Source # 
Instance details

Defined in B9.ExecEnv

Methods

put :: RamSize -> Put #

get :: Get RamSize #

putList :: [RamSize] -> Put #

NFData RamSize Source # 
Instance details

Defined in B9.ExecEnv

Methods

rnf :: RamSize -> () #

type Rep RamSize Source # 
Instance details

Defined in B9.ExecEnv

type Rep RamSize = D1 ('MetaData "RamSize" "B9.ExecEnv" "b9-3.2.3-3sZk3wiMlOE9ANxPzA3rTw" 'False) (C1 ('MetaCons "RamSize" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SizeUnit)) :+: C1 ('MetaCons "AutomaticRamSize" 'PrefixI 'False) (U1 :: Type -> Type))