I am not sure if this is the best forum as it relates to the MikelAngelo 
capstan.  Assuming it is let me pose couple of questions regarding the tool 
as I am in process of learning new capstan and creating my own repository 
in S3. 

As I understand the main difference between the new capstan and the 
original one is the concept of packages which is really very neat idea I 
think. I was reading the documentation (under 
https://github.com/mikelangelo-project/capstan) and I found it quite easy 
to understand how to build "application" packages which would then get 
composed with the dependant "base" (aka runtime) packages. On other hand is 
not that easy or obvious to understand how to create your own base packages 
which is what https://github.com/mikelangelo-project/capstan-packages seems 
to be doing for MikelAngelo.

I can see that for each package (per 
https://github.com/mikelangelo-project/capstan-packages/blob/master/docker_files/recipes/osv.httpserver/build.sh)
 
the command ($OSV_BUILD_PATH)/scripts/build is executed which then creates 
manifest files for each module and the final usr.manifest and creates QCOW2 
image. Then build.sh from capstan-packages exports the files based on the 
usr.manifest generated by previous step minus the skeleton. It is achieved 
by the login from the pach 
https://github.com/mikelangelo-project/capstan-packages/blob/master/docker_files/common/upload_manifest.py.patch
 
which adds export_package(manifest, dest): to upload_manifest.py. 

So first of I was wondering if it would be a good idea add this exporting 
logic to upload_manifest.py in the main OSv source tree and also modify the 
scripts/build to allow exporting which would the also skip creating QCOW2 
image in this mode. Is this a good idea? 

Currently if built and exported module X that depended on other modules - 
say A and B - the resulting image or package would have files from A, B and 
Y. Also I was wondering if we could change it allow creating packages for 
deltas only. That way the build process using capstan would be even more 
modular or additive if you will. 

Lastly I noticed that the base repository assumes the packages are stored 
in AWS S3 bucket. I was wondering what it would take to introduce 
repository plugin concept to new capstan 
(https://github.com/mikelangelo-project/capstan/blob/master/util/s3_repository.go)
 
where it would let one store and retrieve from artifactory 
((https://www.jfrog.com/artifactory/)) or maven repository. Any thoughts?

Regards,
Waldek

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to