Deployed Ember to S3 - ember version is not changed

I recently updated the dependencies. Everything works as needed locally and I see the correct Ember version. 40

But when observing the deployed to AWS S3 version in the browser console, it is still the previous one (3.1.2).

What am I missing ? Thank you.

Interesting. I’ve acquired an intimate knowledge of the S3 deploy process over the past few weeks, so jumping in to at least follow the conversation to see where it goes. But did you “yarn/npm install --save-dev” to update the lock file before pushing to S3?

(apologies if that’s a silly question and of course you did! … i’m learning on the fly and just throwing out ideas here :slight_smile:)

Yikes!

My first guess would be caching, either from cloudfront or your browser.

  • If you’re using cloudfront, try invalidating the entire distribution.
  • In your browser use the disable cache feature from dev tools. It’s on the network tab.

If that doesn’t solve it, then it might be worth finding out if other changes are also not being deployed. For example, if you add “hello world” to the application template, does that text show up when you deploy? Is it only dependencies that aren’t changing?

First, there are no silly questions, there are silly people who don’t know the answers :slight_smile: Sure, I upgraded the dependencies running yarn install. The proof - is that the new version is correctly displayed in the Chrome/Firefox console. I’ll check the CloudFront side for caching invalidation as @ryanto suggested and come back with my results. Thank you for your responses!

1 Like

If you’re using cloudfront, ember-cli-deploy-cloudfront can generate the invalidation for you automatically.

1 Like

Thank you very much Edward, didn’t know about its existence ! I’l take a try (instead of chatting hours with DevOps team :slight_smile: ).

We host our Ember Apps on a similar setup, and have definitely run into caching issues on deployment until we updated our deployment script to invalid the edge caches. It can still be a little funky for a minute or so after deploy while the various cache invalidations propagate, but that in conjunction with ensuring our files are all versioned with hashes has eliminated this issue for us. Only challenge now is if someone is using the app and hasn’t refreshed - we don’t yet notify that there is a new version available and prompt the user to refresh.

As far as I know (may be DevOps team added something special without letting us know), we do not use any special tips & tricks for caching, using just a standard ember deploy <environment> command, using type: 'version-commit' for revision-data settings. Anyway, it seems to be a long discussion subject and I’m not the only one :slight_smile:.

If you don’t want to spend time diving into AWS hosting and deployments take a look at https://appuleius.com. With them, your app is also hosted on AWS but without the hassle of doing it yourself.