Automattic / Automattic/happychat-client
Improve the deploy process
- Dominant language
- JavaScript
- Stars
- 13
- Forks
- 5
- PR merge metrics
- No merged PRs in 30d
Description
See p6JqRr-41n-p2
Because deployment for the WordPress target requires locally compiling JavaScript, the compiled version can differ from what's in `master` and invisibly break production code that worked fine in testing. Ideally the deploy process should be completely overhauled to make it a whole lot simpler. Here's a few ideas:
- Don't require local builds of production files. This could be done in a few ways:
- Host JS on VIP Go instead of widgets.wp.com — this enables auto-deploys with assets compiled using package.json versions
- Have production assets built by CircleCI (I think this is a possibility?)
- If we keep local production builds, at least run some basic checks like ensuring your installed package versions match what's in package-lock.json
- Stop using widgets.wp.com
- Assets here are HEAVILY cached by CDN, making it precarious to test and deploy (e.g. if you're working on v0.0.16 and you update your test WP site to refer to that version before it's been deployed, the production version on that one CDN node will actually refer to an outdated version)
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the deployment process for the WordPress target and the roles of package.json, package-lock.json, VIP Go, widgets.wp.com, and CircleCI. Done should mean production assets no longer depend on risky local builds and deployment avoids mismatched versions and CDN-caching surprises.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, wordpress
- Domain
- build-system, devops, release
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100