If you’re a WordPress developer who is using Composer without continuous integration, then odds are you’re left with a crucial step of figuring out how to manage the vendor directory when deploying your plugins.
That is:
- We know it’s a bad idea to throw the entire vendor directory under source control,
- Other developers who are familiar with using Composer should be able to get up and running without the need for much instruction,
- Continuous integration isn’t being used for any number of reasons,
- And we’re left with needing to provide a production-grade deliverable that uses certain dependencies but not others.
As much as the above points may describe our situation, it doesn’t tell us what we can do with it.
In other words, here’s the use case: You’ve built a WordPress plugin for someone. This plugin uses a variety of dependencies all of which are maintained by Composer.
You’re not checking the vendor directory into the repository, but you’re also not using continuous integration to deploy the plugin. Instead, the customer is, or a third-party is.
So what then?