Automattic / Automattic/happychat-client

Improve the deploy process

Open
#324 0 comments 0 reactions 0 assignees View on GitHub
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.