In a recent article titled Inline Extensions we detailed the problem of how to distribute an extension’s package to a remote server without having access to its file system at all. The solution to that problem is non trivial, let’s say. But thanks to the awesome PostgreSQL Community we finaly have some practical ideas on how to address the problem as discussed on pgsql-hackers, our development mailing list. *PostgreSQL is first an Awesome Community* The solution we talked about is to use templates, and so I’ve been working on a patch to bring templates for extensions to PostgreSQL.
We’ve been having the CREATE EXTENSION feature in PostgreSQL for a couple of releases now, so let’s talk about how to go from here. The first goal of the extension facility has been to allow for a clean dump and restore process of contrib modules. As such it’s been tailored to the needs of deploying files on the file system because there’s no escaping from that when you have to ship binary and executable files, those infamous .