Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
A structure allowing control over commits.
Synopsis
- newtype RepoCommitModifier = RepoCommitModifier (ManagedPtr RepoCommitModifier)
- repoCommitModifierNew :: (HasCallStack, MonadIO m) => [RepoCommitModifierFlags] -> Maybe RepoCommitFilter -> m RepoCommitModifier
- repoCommitModifierRef :: (HasCallStack, MonadIO m) => RepoCommitModifier -> m RepoCommitModifier
- repoCommitModifierSetDevinoCache :: (HasCallStack, MonadIO m) => RepoCommitModifier -> RepoDevInoCache -> m ()
- repoCommitModifierSetSepolicy :: (HasCallStack, MonadIO m, IsSePolicy a) => RepoCommitModifier -> Maybe a -> m ()
- repoCommitModifierSetSepolicyFromCommit :: (HasCallStack, MonadIO m, IsRepo a, IsCancellable b) => RepoCommitModifier -> a -> Text -> Maybe b -> m ()
- repoCommitModifierSetXattrCallback :: (HasCallStack, MonadIO m) => RepoCommitModifier -> RepoCommitModifierXattrCallback -> m ()
- repoCommitModifierUnref :: (HasCallStack, MonadIO m) => RepoCommitModifier -> m ()
Exported types
newtype RepoCommitModifier Source #
Memory-managed wrapper type.
RepoCommitModifier (ManagedPtr RepoCommitModifier) |
Instances
Methods
Click to display all available methods, including inherited ones
new
repoCommitModifierNew Source #
:: (HasCallStack, MonadIO m) | |
=> [RepoCommitModifierFlags] |
|
-> Maybe RepoCommitFilter |
|
-> m RepoCommitModifier | Returns: A new commit modifier. |
No description available in the introspection data.
ref
repoCommitModifierRef :: (HasCallStack, MonadIO m) => RepoCommitModifier -> m RepoCommitModifier Source #
No description available in the introspection data.
setDevinoCache
repoCommitModifierSetDevinoCache Source #
:: (HasCallStack, MonadIO m) | |
=> RepoCommitModifier |
|
-> RepoDevInoCache |
|
-> m () |
See the documentation for
ostree_repo_devino_cache_new()
. This function can
then be used for later calls to
ostree_repo_write_directory_to_mtree()
to optimize commits.
Note if your process has multiple writers, you should use separate
OSTreeRepo
instances if you want to also use this API.
This function will add a reference to cache
without copying - you
should avoid further mutation of the cache.
Since: 2017.13
setSepolicy
repoCommitModifierSetSepolicy Source #
:: (HasCallStack, MonadIO m, IsSePolicy a) | |
=> RepoCommitModifier |
|
-> Maybe a |
|
-> m () |
If policy
is non-Nothing
, use it to look up labels to use for
"security.selinux" extended attributes.
Note that any policy specified this way operates in addition to any
extended attributes provided via
repoCommitModifierSetXattrCallback
. However if both
specify a value for "security.selinux", then the one from the
policy wins.
setSepolicyFromCommit
repoCommitModifierSetSepolicyFromCommit Source #
:: (HasCallStack, MonadIO m, IsRepo a, IsCancellable b) | |
=> RepoCommitModifier |
|
-> a |
|
-> Text |
|
-> Maybe b | |
-> m () | (Can throw |
In many cases, one wants to create a "derived" commit from base commit. SELinux policy labels are part of that base commit. This API allows one to easily set up SELinux labeling from a base commit.
Since: 2020.4
setXattrCallback
repoCommitModifierSetXattrCallback Source #
:: (HasCallStack, MonadIO m) | |
=> RepoCommitModifier |
|
-> RepoCommitModifierXattrCallback |
|
-> m () |
If set, this function should return extended attributes to use for the given path. This is useful for things like ACLs and SELinux, where a build system can label the files as it's committing to the repository.
unref
repoCommitModifierUnref :: (HasCallStack, MonadIO m) => RepoCommitModifier -> m () Source #
No description available in the introspection data.