secretspec-0.15.0: secretspec.cabal
cabal-version: 2.4
name: secretspec
version: 0.15.0
synopsis: Haskell SDK for SecretSpec, a declarative secrets manager
description:
A thin client over the @secretspec-ffi@ C ABI (linked at build time).
Resolution (providers, chains, profiles, generation, @as_path@) happens in the
Rust core; this package marshals a JSON request to the native library and
parses the response, mirroring the Rust derive crate's vocabulary.
homepage: https://secretspec.dev/
license: Apache-2.0
license-file: LICENSE
author: Domen Kožar
maintainer: domen@enlambda.com
category: Configuration
build-type: Simple
library
exposed-modules: SecretSpec
hs-source-dirs: src
build-depends: base >=4.14 && <5
, aeson >=2.0 && <3
, bytestring <1
, containers <1
, directory <2
, text <3
-- The native resolver, statically linked at build time. Point --extra-lib-dirs
-- at a directory containing ONLY libsecretspec_ffi.a (so -lsecretspec_ffi
-- resolves to the archive, not a co-located .so), and pass the archive's
-- transitive native deps via --ghc-options=-optl<lib> (capture them with
-- `cargo rustc -p secretspec-ffi --crate-type staticlib -- --print native-static-libs`).
-- The Rust code is embedded in the binary, so no LD_LIBRARY_PATH is needed.
extra-libraries: secretspec_ffi
default-language: Haskell2010
ghc-options: -Wall
test-suite secretspec-test
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs: test
build-depends: base
, secretspec
, aeson >=2.0
, bytestring
, containers
, directory
, filepath
, process
, text
default-language: Haskell2010
ghc-options: -Wall -threaded