packages feed

language-dockerfile-0.3.4.0: language-dockerfile.cabal

-- This file has been generated from package.yaml by hpack version 0.14.0.
--
-- see: https://github.com/sol/hpack

name:           language-dockerfile
version:        0.3.4.0
synopsis:       Dockerfile linter, parser, pretty-printer and embedded DSL
description:     Forked from @hadolint@.
                .
                All functions for parsing, printing and writting Dockerfiles are exported through @Language.Dockerfile@. For more fine-grained operations look for specific modules that implement a certain functionality.
                .
                There are two flags in this package, which enable building two executables:
                .
                - @hadolint@ Enables building the @hadolint@ executable, though you might prefer to use the hadolint package directly
                - @dockerfmt@ Builds example pretty-printer usage, which reads a Dockerfile and pretty-prints it to stdout
                .
                See the <https://github.com/beijaflor-io/haskell-language-dockerfile GitHub project> for the source-code and examples. 
category:       Development
homepage:       https://github.com/beijaflor-io/language-dockerfile#readme
bug-reports:    https://github.com/beijaflor-io/language-dockerfile/issues
author:         Lukas Martinelli,
                Pedro Tacla Yamada
maintainer:     tacla.yamada@gmail.com
copyright:      Lukas Martinelli, Copyright (c) 2016,
                Pedro Tacla Yamada, Copyright (c) 2016
license:        GPL-3
license-file:   LICENSE
build-type:     Simple
cabal-version:  >= 1.10

extra-source-files:
    README.md

source-repository head
  type: git
  location: https://github.com/beijaflor-io/language-dockerfile

flag dockerfmt
  description: Build the dockerfmt executable
  manual: True
  default: False

flag hadolint
  description: Build the hadolint executable
  manual: True
  default: False

library
  hs-source-dirs:
      src
  build-depends:
      ShellCheck
    , base >=4.8 && <5
    , bytestring >=0.10
    , parsec >=3.1
    , pretty
    , split >=0.2
    , free
    , mtl
    , transformers
    , template-haskell
    , th-lift
    , th-lift-instances
  exposed-modules:
      Language.Dockerfile
      Language.Dockerfile.Parser
      Language.Dockerfile.PrettyPrint
      Language.Dockerfile.Normalize
      Language.Dockerfile.Rules
      Language.Dockerfile.Syntax
      Language.Dockerfile.Lexer
      Language.Dockerfile.Bash
      Language.Dockerfile.FormatCheck
      Language.Dockerfile.Syntax.Lift
      Language.Dockerfile.EDSL
      Language.Dockerfile.EDSL.Quasi
      Language.Dockerfile.EDSL.Types
  other-modules:
      Language.Dockerfile.EDSL.Plugins
      Paths_language_dockerfile
  default-language: Haskell2010

executable dockerfmt
  main-is: DockerFmt.hs
  hs-source-dirs:
      bin
  build-depends:
      ShellCheck
    , base >=4.8 && <5
    , bytestring >=0.10
    , parsec >=3.1
    , pretty
    , split >=0.2
    , free
    , mtl
    , transformers
    , template-haskell
    , th-lift
    , th-lift-instances
    , language-dockerfile
  buildable: False
  if flag(dockerfmt)
    buildable: True
  other-modules:
      HadoLint
  default-language: Haskell2010

executable hadolint
  main-is: HadoLint.hs
  hs-source-dirs:
      bin
  build-depends:
      ShellCheck
    , base >=4.8 && <5
    , bytestring >=0.10
    , parsec >=3.1
    , pretty
    , split >=0.2
    , free
    , mtl
    , transformers
    , template-haskell
    , th-lift
    , th-lift-instances
    , language-dockerfile
  buildable: False
  if flag(hadolint)
    buildable: True
  other-modules:
      DockerFmt
  default-language: Haskell2010

test-suite hadolint-unit-tests
  type: exitcode-stdio-1.0
  main-is: Test.hs
  hs-source-dirs:
      src
    , test
  build-depends:
      ShellCheck
    , base >=4.8 && <5
    , bytestring >=0.10
    , parsec >=3.1
    , pretty
    , split >=0.2
    , free
    , mtl
    , transformers
    , template-haskell
    , th-lift
    , th-lift-instances
    , HUnit >=1.2
    , test-framework
    , test-framework-hunit
  other-modules:
      Language.Dockerfile
      Language.Dockerfile.Bash
      Language.Dockerfile.EDSL
      Language.Dockerfile.EDSL.Plugins
      Language.Dockerfile.EDSL.Quasi
      Language.Dockerfile.EDSL.Types
      Language.Dockerfile.FormatCheck
      Language.Dockerfile.Lexer
      Language.Dockerfile.Normalize
      Language.Dockerfile.Parser
      Language.Dockerfile.PrettyPrint
      Language.Dockerfile.Rules
      Language.Dockerfile.Syntax
      Language.Dockerfile.Syntax.Lift
      Language.Dockerfile.EDSL.PluginsSpec
      Language.Dockerfile.EDSL.QuasiSpec
      Language.Dockerfile.EDSLSpec
      Language.Dockerfile.ExamplesSpec
      Language.Dockerfile.ParserSpec
      SanitySpec
      Spec
  default-language: Haskell2010

test-suite hspec
  type: exitcode-stdio-1.0
  main-is: Spec.hs
  hs-source-dirs:
      test
  build-depends:
      ShellCheck
    , base >=4.8 && <5
    , bytestring >=0.10
    , parsec >=3.1
    , pretty
    , split >=0.2
    , free
    , mtl
    , transformers
    , template-haskell
    , th-lift
    , th-lift-instances
    , hspec
    , QuickCheck
    , language-dockerfile
    , Glob
    , directory
    , filepath
    , process
  other-modules:
      Language.Dockerfile.EDSL.PluginsSpec
      Language.Dockerfile.EDSL.QuasiSpec
      Language.Dockerfile.EDSLSpec
      Language.Dockerfile.ExamplesSpec
      Language.Dockerfile.ParserSpec
      SanitySpec
      Test
  default-language: Haskell2010