I went to file this as an issue on the Edeliver repository and was told that feature proposals should go to a link that didn’t work for me. So I poked the forum, found this, and hope it’s the right place.
I’m building my Phoenix app in Concourse. This means the build happens in a containerized environment, though the build itself isn’t a container. But for all practical purposes, the build environment is identical to the eventual staging/production servers.
I’d like to use Edeliver to manage the final code push, as well as for administering the servers. But it seems that the expectation of using separate build servers is baked in. That is, I can’t build my app in the local environment, which is again identical to the remote environment, then use the remaining Edeliver functionality to push the release to the correct location. I can build using the normal Distillery process of course, but then the build isn’t where Edeliver expects, since it wants to place things in a separate directory.
I gather I can work around this by creating the build via Distillery, then copying it into the .deliver directory in my project. I’ll probably poke this and see how far I can get with it. But it would be useful if, provided a build host isn’t set, Edeliver just fell back to running the build process locally, maybe with a warning/message that your environments need to be identical for this to work.
Is this something that might get added? The more of my release process that I can automate behind code someone else wrote, the happier I am. At the moment I’m doing an automated scp of the release, but I don’t think this handles database migrations, and imagine there are other things it doesn’t do that I’m just not aware of yet.