packages feed

linode-v4 0.1.0.3 → 0.1.0.4

raw patch · 4 files changed

+35/−26 lines, 4 files

Files

README.md view
@@ -25,6 +25,13 @@ $ cabal install ``` +## Test++```bash+$ cabal install --enable-tests --only-dependencies+$ cabal test+```+ ## Example  ```
linode-v4.cabal view
@@ -2,7 +2,7 @@ -- documentation, see http://haskell.org/cabal/users-guide/  name:                linode-v4-version:             0.1.0.3+version:             0.1.0.4 synopsis:            Haskell wrapper for the Linode v4 API -- description:          homepage:            https://github.com/eatonphil/linode-haskell
src/Network/Linode/Api.hs view
@@ -89,58 +89,59 @@ getDatacenter id = get ["/datacenters", id]  getDistributions :: IO (Data.Maybe.Maybe Rsp.Distributions)-getDistributions = get ["/distributions"]+getDistributions = get ["/linode/distributions"]  getDistributionsRecommended :: IO (Data.Maybe.Maybe Rsp.Distributions)-getDistributionsRecommended = get ["/distributions/recommended"]+getDistributionsRecommended = get ["/linode/distributions/recommended"]  getDistribution :: String -> IO (Data.Maybe.Maybe Rsp.Distribution)-getDistribution id = get ["/distributions", id]+getDistribution id = get ["/linode/distributions", id]  getLinodes :: IO (Data.Maybe.Maybe Rsp.Linodes)-getLinodes = get ["/linodes"]+getLinodes = get ["/linode/instances"]  getLinode :: String -> IO (Data.Maybe.Maybe Rsp.Linode)-getLinode id = get ["/linodes", id]+getLinode id = get ["/linode/instances", id]  addLinode :: Req.Linode -> IO (Data.Maybe.Maybe Rsp.Linode)-addLinode linode = post ["/linodes"] linode+addLinode linode = post ["/linode/instances"] linode  editLinode :: Rsp.Linode -> IO (Data.Maybe.Maybe Rsp.Linode)-editLinode linode = put ["/linodes", Rsp.id linode] linode+editLinode linode = put ["/linode/instances", show $ Rsp.id linode] linode  getDisks :: String -> IO (Data.Maybe.Maybe Rsp.Disks)-getDisks linodeId = get ["/linodes", linodeId, "disks"]+getDisks linodeId = get ["/linode/instances", linodeId, "disks"]  getDisk :: String -> String -> IO (Data.Maybe.Maybe Rsp.Disk)-getDisk linodeId diskId = get ["/linodes", linodeId, "disks", diskId]+getDisk linodeId diskId = get ["/linode/instances", linodeId, "disks", diskId]  addDisk :: String -> Req.Disk -> IO (Data.Maybe.Maybe Rsp.Disk)-addDisk linodeId disk = post ["/linodes", linodeId] disk+addDisk linodeId disk = post ["/linode/instances", linodeId] disk  getConfigs :: String -> IO (Data.Maybe.Maybe Rsp.Configs)-getConfigs linodeId = get ["/linodes", linodeId, "configs"]+getConfigs linodeId = get ["/linode/instances", linodeId, "configs"]  getConfig :: String -> String -> IO (Data.Maybe.Maybe Rsp.Config)-getConfig linodeId configId = get ["/linodes", linodeId, "configs", configId]+getConfig linodeId configId = get ["/linode/instances", linodeId, "configs", configId]  addConfig :: String -> Req.Config -> IO (Data.Maybe.Maybe Rsp.Config)-addConfig linodeId config = post ["/linodes", linodeId, "configs"] config+addConfig linodeId config = post ["/linode/instances", linodeId, "configs"] config +{- There are more services endpoints -} getServices :: IO (Data.Maybe.Maybe Rsp.Services)-getServices = get ["/services"]+getServices = get ["/linode/services"]  getService :: String -> IO (Data.Maybe.Maybe Rsp.Service)-getService id = get ["/services", id]+getService id = get ["/linode/services", id]  getDNSZones :: IO (Data.Maybe.Maybe Rsp.DNSZones)-getDNSZones = get ["/dnszones"]+getDNSZones = get ["/dns/zones"]  getDNSZone :: String -> IO (Data.Maybe.Maybe Rsp.DNSZone)-getDNSZone id = get ["/dnszones", id]+getDNSZone id = get ["/dns/zones", id]  getKernels :: IO (Data.Maybe.Maybe Rsp.Kernels)-getKernels = get ["/kernels"]+getKernels = get ["/linode/kernels"]  getKernel :: String -> IO (Data.Maybe.Maybe Rsp.Kernel)-getKernel id = get ["/kernels", id]+getKernel id = get ["/linode/kernels", id]
src/Network/Linode/Response.hs view
@@ -50,7 +50,6 @@                          mbits_out :: M.Maybe Int,                          monthly_price :: Int,                          ram :: M.Maybe Int,-                         service_type :: String,                          transfer :: M.Maybe Int,                          vcpus :: M.Maybe Int } deriving (Eq, Show, GHC.Generics.Generic) @@ -96,6 +95,7 @@                        deprecated :: Bool,                        xen :: Bool,                        kvm :: Bool,+                       description :: M.Maybe String,                        label :: String,                        version :: String,                        x64 :: Bool } deriving (Eq, Show, GHC.Generics.Generic)@@ -133,9 +133,11 @@ instance Data.Aeson.FromJSON LinodeBackupsSchedule instance Data.Aeson.ToJSON LinodeBackupsSchedule + data LinodeBackups = LinodeBackups { enabled :: Bool,                                      schedule :: LinodeBackupsSchedule,-                                     last_backup :: M.Maybe String } deriving (Eq, Show, GHC.Generics.Generic)+                                     snapshot :: M.Maybe Backup,+                                     last_backup :: M.Maybe Backup } deriving (Eq, Show, GHC.Generics.Generic)  instance Data.Aeson.FromJSON LinodeBackups instance Data.Aeson.ToJSON LinodeBackups@@ -159,7 +161,7 @@ instance Data.Aeson.FromJSON LinodeIPAddresses instance Data.Aeson.ToJSON LinodeIPAddresses -data Linode = Linode { id :: String,+data Linode = Linode { id :: Int,                        alerts :: LinodeAlerts,                        backups :: LinodeBackups,                        created :: String,@@ -185,10 +187,9 @@ instance Data.Aeson.ToJSON Linodes  -- Missing type field-data Backup = Backup { id :: String,-                       label :: String,+data Backup = Backup { id :: Int,+                       label :: M.Maybe String,                        status :: String,-                       linode_id :: String,                        datacenter :: Datacenter,                        created :: String,                        updated :: String,