I upgraded my 5.1.2 install in my local MAMP Pro environment to 5.1.3. Using GitHub and CodeDeploy, I deployed the codebase to an auto-scaling group (two EC2 instances, running Amazon Linux 2). I then exported my local database and imported it into the RDS database.
I had 5.1.2 running in that environment, but now the control panel is broken because ExpressionEngine keeps trying to upgrade from 5.1.2 to 5.1.3, even though I’ve already done this. The upgrade never completes because ‘ZipArchive’ is missing, which I can’t get installed on Amazon Linux 2. What I expect to happen is for the 5.1.3 codebase and the 5.1.3 database to recognize each other and work in the AWS environment as they do on my local machine.
Are there any best practices for deploying EE to a multi-instance environment? Manually SSHing into the instances to install EE isn’t a realistic option here since the auto-scaling group has to be able to build instances on its own. Has anyone done this before, or are all EE installs running on single-instance environments?
Any insight would be appreciated, thanks.
Edit: I think what I really need to know is how ExpressionEngine decides it needs to update itself.
I install 5.1.3 locally, then separately install 5.1.3 in AWS. Each has its own database (no export/import, as I described above). If I deploy 5.1.3 to AWS (basically SCPing my local EE files over the remote ones), EE tells me that it needs to upgrade itself. How is it making that determination? It seems to me that I’m deploying a file that is triggering this action.
@Kevin thanks for that.I should mention that config.php read 5.1.3 both locally and on the remote server, so I’m thinking something else was triggering the upgrade.
@Janet I couldn’t find a managed hosting service by Amazon that offers EE as a platform.
Thank you both for your suggestions. I’ve landed on building a custom AMI that has a particular version of EE already installed. That way, the only thing I’m deploying is my template code. Whenever a new version of EE is released, I can release an updated version of the AMI.
Packet Tide owns and develops ExpressionEngine. © Packet Tide, All Rights Reserved.