<feed xmlns='http://www.w3.org/2005/Atom'>
<title>propellor/src/Propellor/Property/Docker.hs, branch master</title>
<subtitle>gnusosa's centralized propellor repository for hosts spin-up.
</subtitle>
<id>https://git.gnusosa.net/propellor/atom?h=master</id>
<link rel='self' href='https://git.gnusosa.net/propellor/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/'/>
<updated>2017-07-05T17:52:29Z</updated>
<entry>
<title>avoid buffering container chain output</title>
<updated>2017-07-05T17:52:29Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2017-07-05T17:52:29Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=2b9d5ca90f053ad21fbbab89b3045bd0822400d5'/>
<id>urn:sha1:2b9d5ca90f053ad21fbbab89b3045bd0822400d5</id>
<content type='text'>
When provisioning a container, output was buffered until the whole process
was done; now output will be displayed immediately.

I know this didn't used to be a problem. I belive it was introduced by
accident when propellor started using concurrent-output. I know I've seen
it for a while and never was bothered enough to get to the bottom of it;
apparently "a while" was longer than I thought.

Also refactored code to do with chain provisioning to all be in
Propellor.Engine and avoided some duplication.

This commit was sponsored by Anthony DeRobertis on Patreon.
</content>
</entry>
<entry>
<title>Removed dependency on MissingH, instead depends on split and hashable.</title>
<updated>2017-05-16T00:09:31Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2017-05-16T00:09:31Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=ba3bd76f4ade7ffeea3c1837f868f5264d284a8c'/>
<id>urn:sha1:ba3bd76f4ade7ffeea3c1837f868f5264d284a8c</id>
<content type='text'>
MissingH is a heavy dependency, which pulls in parsec and a bunch of stuff.
So eliminating it makes propellor easier to install and less likely to
fail to build.

changesFileContent now uses hashable's hash. This may not be stable across
upgrades, I'm not sure -- but it's surely ok here, as the hash is not
stored.

socketFile also uses hash. I *think* this is ok, even if it's not stable.
If it's not stable, an upgrade might make propellor hash a hostname to a
different number, but with 9 digets of number in use, the chances of a
collision are small. In any case, I've opned a bug report asking for the
stability to be documented, and I think it's intended to be stable, only
the documentation is bad.

NB: I have not checked that the arch linux and freebsd packages for the new
deps, that Propellor.Bootstrap lists, are the right names or even exist.

Since propellor depends on hashable, it could be changed to use
unordered-containers, rather than containers, which would be faster and
perhaps less deps too.

This commit was sponsored by Alexander Thompson on Patreon.
</content>
</entry>
<entry>
<title>don't propagate DNS info from DiskImage chroots</title>
<updated>2017-03-11T20:52:00Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2017-03-11T20:52:00Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=9a54ba471986b994f10ad332f27639059c18e7e1'/>
<id>urn:sha1:9a54ba471986b994f10ad332f27639059c18e7e1</id>
<content type='text'>
* DiskImage building properties used to propagate DNS info out from
  the chroot used to build the disk image to the Host. That is no longer
  done, since that chroot only exists as a side effect of the disk image
  creation and servers will not be running in it.
* The IsInfo types class's propagateInfo function changed to use a
  PropagateInfo data type. (API change)

This is particularly important when using hostChroot, since the host could
well have DNS settings then.

This commit was sponsored by Ole-Morten Duesund on Patreon.
</content>
</entry>
<entry>
<title>use ConfigurableValue where applicable</title>
<updated>2017-02-26T20:17:19Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2017-02-26T20:11:38Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=55ed8e8743e861e2230e40670a56034353cf4e32'/>
<id>urn:sha1:55ed8e8743e861e2230e40670a56034353cf4e32</id>
<content type='text'>
* Removed fromPort (use val instead). (API change)
* Removed several Show instances that were only used for generating
  configuration, replacing with ConfigurableValue instances. (API change)

It's somewhat annoying that IsInfo requires a Show instance.
That's needed to be able to display Info in ghci, but some non-derived Show
instances had to be kept to support that.
</content>
</entry>
<entry>
<title>Added ConfigurableValue type class</title>
<updated>2017-02-26T20:08:04Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2017-02-26T19:27:22Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=2ba4b6fb3d29b2b65aa60f4bd591ed8cf6a63e27'/>
<id>urn:sha1:2ba4b6fb3d29b2b65aa60f4bd591ed8cf6a63e27</id>
<content type='text'>
* Added ConfigurableValue type class, for values that can be used in a
  config file, or to otherwise configure a program.
* The val function converts such values to String.

This was motivated by the bug caused by type Port = Int changing to
newtype Port = Port Int deriving Show
After that change, some things that used show port to generate config
files were broken. By using the ConfigurableValue type class instead,
such breakage can be prevented.
</content>
</entry>
<entry>
<title>addArchLinux support to Docker.installed</title>
<updated>2017-02-04T00:16:21Z</updated>
<author>
<name>Zihao Wang</name>
<email>dev@wzhd.org</email>
</author>
<published>2017-02-03T09:28:38Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=92168164943dcf033682b9f9a26f81beb3c537f4'/>
<id>urn:sha1:92168164943dcf033682b9f9a26f81beb3c537f4</id>
<content type='text'>
Signed-off-by: Zihao Wang &lt;dev@wzhd.org&gt;
</content>
</entry>
<entry>
<title>improve haddocks and move code around to make them more clear</title>
<updated>2016-03-27T23:59:20Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-03-27T23:59:20Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=9d6dc29555b8499d8ae6c73c891b0b5dc19f83e5'/>
<id>urn:sha1:9d6dc29555b8499d8ae6c73c891b0b5dc19f83e5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix build</title>
<updated>2016-03-27T21:29:13Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-03-27T21:29:13Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=f6ccfeae4facbbddd1ef6818313700b990306d1b'/>
<id>urn:sha1:f6ccfeae4facbbddd1ef6818313700b990306d1b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ported Systemd</title>
<updated>2016-03-27T20:36:05Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-03-27T20:36:05Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=5a04a37a4239c99b7367f796acee0ba6f1216879'/>
<id>urn:sha1:5a04a37a4239c99b7367f796acee0ba6f1216879</id>
<content type='text'>
added mising method in docker
</content>
</entry>
<entry>
<title>ported docker</title>
<updated>2016-03-27T01:38:39Z</updated>
<author>
<name>Joey Hess</name>
<email>joeyh@joeyh.name</email>
</author>
<published>2016-03-27T01:38:39Z</published>
<link rel='alternate' type='text/html' href='https://git.gnusosa.net/propellor/commit/?id=46fc5467e633a9c1f149cb0cd7ee03af1e9e0aa1'/>
<id>urn:sha1:46fc5467e633a9c1f149cb0cd7ee03af1e9e0aa1</id>
<content type='text'>
Also, implemented modifyHostProps to add properties to an existing host.
Using it bypasses some type safety. Its use in docker is safe though.

But, in Conductor, the use of it was not really safe, because it was used
with a DebianLike property. Fixed that by making Ssh.installed
target all unix's, although it will fail on non-DebianLike ones.
</content>
</entry>
</feed>
