[ This group initially started as an email thread. This discussion is for re-posting the content of the thread and then continuing the discussion about the goals and layout of the archive format. ]
My initial idea is that the basic format will look like what Drupal Gardens already generates and what I think Pantheon imports: a gzip'ed tarball with code, ./files, and a .sql dump file in the root. However, there are many other things the format could support, such as:
- A specifiable format for the sql dump: mysqldump, pure SQL, whatever.
- Where the code lives (e.g. ./ or ./docroot), where the files live (./files, ./sites/default/files), where the database lives (ditto) within the tarball.
- Multi-site archives, with a separate database and files dump for a specified list of sites directories.
- A public key signature.
- Environment dependencies, e.g. PHP & MySQL version, PHP extensions, etc.
My thought is that the archive format should be gzip'ed tarball with an optional MANIFEST.txt file specifying all the above info. Every field in the manifest would have a default, and all the defaults taken together (which is the same as having no manifest) leads to the basic tarball+mysqldump format.