Closed Bug 1543305 Opened 6 years ago Closed 6 years ago

Create production deployment of Iodide in GCP

Categories

(Data Platform and Tools Graveyard :: Operations, task, P2)

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: robotblake, Assigned: robotblake)

References

Details

(Whiteboard: [DataOps])

This should look more or less like the current stage deploy in AWS. The only moving parts at the moment are the Django app itself and a PostgreSQL database that backs it.

The important production specific info is as follows:

  • Should live at a "pretty" domain, "iodide.mozilla.org" or "iodide.telemetry.mozilla.org" or similar.
  • Once #1537780 is complete, we should skip Auth0 for requests to /api/* endpoints and allow the app to do authentication.
  • When the iodide repo gets a release tag, we should auto-deploy that tag to production.
  • Ensure pagerduty and such for prod go to the right places.

Of note, this deployment will for now only have a "stage" and a "prod" environment. The current "stage" environment will be migrated to GCP as well.

Summary: Created production deployment of Iodide in GCP → Create production deployment of Iodide in GCP
Type: defect → task
Priority: P2 → P1

Some Updates:

  • The stage iodide instance was migrated and is running on GCP as of about week or so ago.
  • I've got a PR that'll cover the prod deployment in GCP incoming sometime tomorrow (to get review).
  • Once prod is up I can tweak the Jenkins config to auto-deploy tags.

At this point, assuming the prod deployment code looks good and works, I'd guess we could push a prod build by the end of the week or sometime during All Hands.

Depends on: 1560136
Depends on: 1565599

There is an implicit dependency on this github issue (Iodide server should not hardcode server addresses), since the docker image we're currently generating using circle (and using on stage) has various staging addresses hardcoded: https://github.com/iodide-project/iodide/issues/1943

Depends on: 1566553
Depends on: 1566565
Depends on: 1568244
Priority: P1 → P2

Note: as part of this we would like to do a one-time copy of the stage db onto the production one -- some people have created some interesting notebooks on stage which we'd like to be made available on production as well.

Blocks: 1573906

Yesterday I was finally able to resolve the cert issues I was seeing last week and after doing some more testing I'm going to call the domain split good. I've also set up a "production" deployment that is currently living at https://prod.iodide.prod.dataops.mozgcp.net that we can use for testing before doing any messaging or any of that.

Also I've set up the iodide.telemetry.mozilla.org domain to redirect there, when we are ready to go with this I'll switch what the primary domain is.

Depends on: 1575324
Depends on: 1580539

The database has been successfully copied over from stage to prod and the domain has been re-pointed (iodide.tmo points to the right place). At this point I think it's just a last validation pass and then sending out comms whenever is appropriate, I'm going to close this and if any new issues come up we can just have them as new bugs.

Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Depends on: 1582825
Product: Data Platform and Tools → Data Platform and Tools Graveyard
You need to log in before you can comment on or make changes to this bug.