propellor 4.5.1 → 4.5.2
raw patch · 8 files changed
+43/−4 lines, 8 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Propellor.Property.DiskImage: vmdkBuiltFor :: FilePath -> RevertableProperty DebianLike UnixLike
+ Propellor.Property.Rsync: installed :: Property (DebianLike + ArchLinux)
Files
- CHANGELOG +8/−0
- debian/changelog +8/−0
- joeyconfig.hs +1/−0
- propellor.cabal +1/−1
- src/Propellor/CmdLine.hs +1/−1
- src/Propellor/Property/DiskImage.hs +19/−0
- src/Propellor/Property/Parted.hs +1/−1
- src/Propellor/Property/Rsync.hs +4/−1
CHANGELOG view
@@ -1,3 +1,11 @@+propellor (4.5.2) unstable; urgency=medium++ * Added Rsync.installed property.+ * Added DiskImage.vmdkBuiltFor property which is useful for booting+ a disk image in VirtualBox.++ -- Joey Hess <id@joeyh.name> Tue, 25 Jul 2017 17:58:46 -0400+ propellor (4.5.1) unstable; urgency=medium * Reboot.toKernelNewerThan: If running kernel is new enough, avoid
debian/changelog view
@@ -1,3 +1,11 @@+propellor (4.5.2) unstable; urgency=medium++ * Added Rsync.installed property.+ * Added DiskImage.vmdkBuiltFor property which is useful for booting+ a disk image in VirtualBox.++ -- Joey Hess <id@joeyh.name> Tue, 25 Jul 2017 17:58:46 -0400+ propellor (4.5.1) unstable; urgency=medium * Reboot.toKernelNewerThan: If running kernel is new enough, avoid
joeyconfig.hs view
@@ -99,6 +99,7 @@ , partition EXT4 `mountedAt` "/" , swapPartition (MegaBytes 256) ]+ `before` vmdkBuiltFor "/srv/test.img" where mychroot d = debootstrapped mempty d $ props & osDebian Unstable X86_64
propellor.cabal view
@@ -1,5 +1,5 @@ Name: propellor-Version: 4.5.1+Version: 4.5.2 Cabal-Version: >= 1.20 License: BSD2 Maintainer: Joey Hess <id@joeyh.name>
src/Propellor/CmdLine.hs view
@@ -204,7 +204,7 @@ , next ) --- If changes can be fetched from origin, Builds propellor (when allowed)+-- If changes can be fetched from origin, builds propellor (when allowed) -- and re-execs the updated propellor binary to continue. -- Otherwise, runs the IO action to continue. updateFirst' :: Maybe Host -> CanRebuild -> CmdLine -> IO () -> IO ()
src/Propellor/Property/DiskImage.hs view
@@ -13,6 +13,7 @@ imageRebuilt, imageBuiltFrom, imageExists,+ vmdkBuiltFor, Grub.BIOS(..), ) where @@ -33,6 +34,7 @@ import Propellor.Types.Bootloader import Propellor.Container import Utility.Path+import Utility.FileMode import Data.List (isPrefixOf, isInfixOf, sortBy, unzip4) import Data.Function (on)@@ -409,3 +411,20 @@ toSysDir chrootdir d = case makeRelative chrootdir d of "." -> "/" sysdir -> "/" ++ sysdir++-- | Builds a VirtualBox .vmdk file for the specified disk image file.+vmdkBuiltFor :: FilePath -> RevertableProperty DebianLike UnixLike+vmdkBuiltFor diskimage = (setup <!> cleanup)+ `describe` (vmdkfile ++ " built")+ where+ vmdkfile = diskimage ++ ".vmdk"+ setup = cmdProperty "VBoxManage"+ [ "internalcommands", "createrawvmdk"+ , "-filename", vmdkfile+ , "-rawdisk", diskimage+ ]+ `changesFile` vmdkfile+ `onChange` File.mode vmdkfile (combineModes (ownerWriteMode : readModes))+ `requires` Apt.installed ["virtualbox"]+ `requires` File.notPresent vmdkfile+ cleanup = File.notPresent vmdkfile
src/Propellor/Property/Parted.hs view
@@ -111,7 +111,7 @@ -- -- For example: ----- > calcPartTable (1024 * 1024 * 1024 * 100) MSDOS+-- > calcPartTable (DiskSize (1024 * 1024 * 1024 * 100)) MSDOS -- > [ partition EXT2 `mountedAt` "/boot" -- > `setSize` MegaBytes 256 -- > `setFlag` BootFlag
src/Propellor/Property/Rsync.hs view
@@ -60,4 +60,7 @@ rsync :: [String] -> Property (DebianLike + ArchLinux) rsync ps = cmdProperty "rsync" ps `assume` MadeChange- `requires` Apt.installed ["rsync"] `pickOS` Pacman.installed ["rsync"]+ `requires` installed++installed :: Property (DebianLike + ArchLinux)+installed = Apt.installed ["rsync"] `pickOS` Pacman.installed ["rsync"]