diff --git a/htools/Ganeti/HTools/IAlloc.hs b/htools/Ganeti/HTools/IAlloc.hs index 7a9e01180205b7e3a2e0fa9cd550cf0270c98f79..3142755a14c82e0243e9b1144909f577040531a6 100644 --- a/htools/Ganeti/HTools/IAlloc.hs +++ b/htools/Ganeti/HTools/IAlloc.hs @@ -347,7 +347,9 @@ processRequest request = -- | Reads the request from the data file(s). readRequest :: FilePath -> IO Request readRequest fp = do - input_data <- readFile fp + input_data <- case fp of + "-" -> getContents + _ -> readFile fp case parseData input_data of Bad err -> do hPutStrLn stderr $ "Error: " ++ err diff --git a/man/hail.rst b/man/hail.rst index f3e4403b101c72b7e383307a1243cb93ff5af6fe..f426cfa55402b606d7a1f73bc28f628fc36f3707 100644 --- a/man/hail.rst +++ b/man/hail.rst @@ -24,6 +24,9 @@ state and the request details, and output (on stdout) a JSON-formatted response. In case of critical failures, the error message is printed on stderr and the exit code is changed to show failure. +If the input file name is ``-`` (a single minus sign), then the request +data will be read from *stdin*. + ALGORITHM ~~~~~~~~~