Discussion:
Anaconda Docker addon review needed
Brian C. Lane
2016-01-20 20:10:39 UTC
Permalink
Here's a pile of code that needs to be reviewed. I totaly failed to
figure out how to do a PR against a blank repo so I just pushed it.

https://github.com/rhinstaller/docker-anaconda-addon

I'll also need a package review once I create that. The spec, etc. can
be found here:

https://bcl.fedorapeople.org/docker-anaconda-addon/

Thanks!
--
Brian C. Lane | Anaconda Team | IRC: bcl #anaconda | Port Orchard, WA (PST8PDT)
Colin Walters
2016-01-21 20:15:45 UTC
Permalink
Post by Brian C. Lane
Here's a pile of code that needs to be reviewed. I totaly failed to
figure out how to do a PR against a blank repo so I just pushed it.
https://github.com/rhinstaller/docker-anaconda-addon
The logic here duplicates a lot of what docker-storage-setup is doing.
Some deduplication is going to be important if this is more than just a PoC.

For example, the addon doesn't seem to support overlayfs right now.
Brian C. Lane
2016-01-21 21:19:54 UTC
Permalink
Post by Colin Walters
Post by Brian C. Lane
Here's a pile of code that needs to be reviewed. I totaly failed to
figure out how to do a PR against a blank repo so I just pushed it.
https://github.com/rhinstaller/docker-anaconda-addon
The logic here duplicates a lot of what docker-storage-setup is doing.
Some deduplication is going to be important if this is more than just a PoC.
This is an anaconda kickstart, you setup storage with anaconda and tell
the addon which VG you're using so it can be passed on to the daemon. If
anything is duplicating something it's docker-storage-setup :)
Post by Colin Walters
For example, the addon doesn't seem to support overlayfs right now.
Is overlayfs supported by anything yet? All the docs/examples I've seen
so far use lvm thinpool. If you have examples I'd love to see them.
--
Brian C. Lane | Anaconda Team | IRC: bcl #anaconda | Port Orchard, WA (PST8PDT)
Colin Walters
2016-01-22 14:20:01 UTC
Permalink
Post by Brian C. Lane
This is an anaconda kickstart, you setup storage with anaconda and tell
the addon which VG you're using so it can be passed on to the daemon. If
anything is duplicating something it's docker-storage-setup :)
It's not really interesting to debate which component was "first" here, but the
point I'm trying to make is more that this patch adds *more* duplication
of code that already did exist in docker-storage-setup. (On the reverse
end, certainly d-s-s' partitioning code obviously long postdates anaconda)

For what it's worth, I would lean in favor of trying to use blivet
in docker-storage-setup (which would be a total rewrite, but it's
not a lot of code now). Then this addon could import the d-s-s
python code.
Post by Brian C. Lane
Post by Colin Walters
For example, the addon doesn't seem to support overlayfs right now.
Is overlayfs supported by anything yet?
https://github.com/projectatomic/docker-storage-setup/issues/49
Brian C. Lane
2016-01-26 16:38:36 UTC
Permalink
Post by Colin Walters
Post by Brian C. Lane
This is an anaconda kickstart, you setup storage with anaconda and tell
the addon which VG you're using so it can be passed on to the daemon. If
anything is duplicating something it's docker-storage-setup :)
It's not really interesting to debate which component was "first" here, but the
point I'm trying to make is more that this patch adds *more* duplication
of code that already did exist in docker-storage-setup. (On the reverse
end, certainly d-s-s' partitioning code obviously long postdates anaconda)
For what it's worth, I would lean in favor of trying to use blivet
in docker-storage-setup (which would be a total rewrite, but it's
not a lot of code now). Then this addon could import the d-s-s
python code.
That would just complicate things. Anaconda is already setting up the
system, already using blivet, and already executing the kickstart. I see
no benefit in trying to integrate docker-storage-setup into that, it is
really meant for a completely different situation AFAIK.
Post by Colin Walters
Post by Brian C. Lane
Post by Colin Walters
For example, the addon doesn't seem to support overlayfs right now.
Is overlayfs supported by anything yet?
https://github.com/projectatomic/docker-storage-setup/issues/49
I've added support for it:

https://github.com/rhinstaller/docker-anaconda-addon/pull/2

I'll probably look at adding btrfs as well.
--
Brian C. Lane | Anaconda Team | IRC: bcl #anaconda | Port Orchard, WA (PST8PDT)
Colin Walters
2016-02-12 17:57:24 UTC
Permalink
Post by Brian C. Lane
That would just complicate things. Anaconda is already setting up the
system, already using blivet, and already executing the kickstart. I see
no benefit in trying to integrate docker-storage-setup into that, it is
really meant for a completely different situation AFAIK.
The thing is that in cloud and pxe-to-live we need the storage to be set
up dynamically. Anaconda is run on the server side and generates
an image, then on boot is where the host allocates storage as
desired based on configuration (cloud-init metadata).

So there is a lot of overlap in that we want the ability to do the
same things when doing an ISO install on a system using Anaconda,
as well as importing an image.

BTW, one interesting approach taken by:
https://coreos.com/blog/bare-metal-config-service-coreos.html
is that it does the partitioning in the initramfs. This would make
sense for both cloud and pxe-to-live cases.
Brian C. Lane
2016-02-12 18:11:59 UTC
Permalink
Post by Colin Walters
Post by Brian C. Lane
That would just complicate things. Anaconda is already setting up the
system, already using blivet, and already executing the kickstart. I see
no benefit in trying to integrate docker-storage-setup into that, it is
really meant for a completely different situation AFAIK.
The thing is that in cloud and pxe-to-live we need the storage to be set
up dynamically. Anaconda is run on the server side and generates
an image, then on boot is where the host allocates storage as
desired based on configuration (cloud-init metadata).
So there is a lot of overlap in that we want the ability to do the
same things when doing an ISO install on a system using Anaconda,
as well as importing an image.
https://coreos.com/blog/bare-metal-config-service-coreos.html
is that it does the partitioning in the initramfs. This would make
sense for both cloud and pxe-to-live cases.
Ah, I see, you're thinking about a different scenario than what this
addon covers. I don't think this would be very useful with images, it
is for server setup using kickstart.
--
Brian C. Lane | Anaconda Team | IRC: bcl #anaconda | Port Orchard, WA (PST8PDT)
Brian C. Lane
2016-01-21 22:48:45 UTC
Permalink
Post by Brian C. Lane
Here's a pile of code that needs to be reviewed. I totaly failed to
figure out how to do a PR against a blank repo so I just pushed it.
https://github.com/rhinstaller/docker-anaconda-addon
I'll also need a package review once I create that. The spec, etc. can
https://bcl.fedorapeople.org/docker-anaconda-addon/
Thanks!
I've built a boot.iso that can be used with the example kickstart to
test this, find it here:

https://alt.fedoraproject.org/pub/alt/anaconda/
--
Brian C. Lane | Anaconda Team | IRC: bcl #anaconda | Port Orchard, WA (PST8PDT)
Loading...