How to: Update and deploy edx-drf-extensions everywhere

How to: Update and deploy edx-drf-extensions everywhere

This page includes details about all repositories using edx-drf-extensions as-of the writing of this document.

For an updated list of repos, you can search for "edx_rest_framework_extensions" and "edx-drf-extensions" using the following: How to: Find list of github repositories that contain a string

List of repositories by IDA

The following is a list of IDAs that need to be deployed with updates, including dependencies that may need to be updated.

  • edx/course-discovery (IDA)

  • edx/credentials (IDA)

  • edx/ecommerce (IDA)

  • edx/edx-analytics-dashboard (IDA)

  • edx/edx-analytics-data-api (IDA)

    • edx/edx-enterprise-data (dependency)

  • edx/edx-notes-api (IDA)

  • edx/edx-platform (IDA)

    • edx/completion (dependency)

    • edx/edx-enterprise (dependency)

    • edx/edx-organizations (dependency)

  • edx/edx-video-pipeline (IDA)

  • edx/journals (IDA)

General notes regarding updating repositories

  • Creating PRs

    • Expect 0.5-1.5 hours to set up all PRs for upgrades/changes.

      • Longer if all repositories and not just IDAs.

    • Some repos have "make upgrade" available, and some don't.  Handling dependency updates is hit or miss, and can sometimes eat up a lot of extra time.

    • Some speed up when you already have all repos locally and tools to commit across repos (e.g. PyCharm).

  • Deploying IDAs

    • Expect 0.5-1 hour for IDA deployments.

      • Longer if you run into weird deployment issues.

    • All IDAs are deployed from GoCD, except as noted below.

    • Most IDAs have a "you merge it, you deploy it" rule, so deployments should go out as soon as you merge.

    • Some repositories must be rebased before you can merge (ecommerce, course-discovery).

      • Be ready to merge as soon as your rebase passes tests so someone else doesn't merge first.  I had to rebase some PRs several times, even while waiting to merge asap.

    • Some IDAs have unique channels for communicating deployments.  It would be better if this were automated.

    • edx/edx-analytics-dashboard (IDA)

      • Master branch is currently RED.

      • ARCH‌-252 has list of pending PRs to be merged and link to EDUCATOR ticket for fix.  EDUCATOR ticket is actively being worked on.

    • edx/edx-analytics-data-api (IDA)

      • Has no e2e tests.  Use portal to test, and review NewRelic (or Splunk) for errors in stage and prod.

    • edx/edx-notes-api (IDA)

      • Has no e2e tests.  Create a note (in stage) to test and review NewRelic (or splunk) for errors in stage and prod.

    • edx/edx-platform

      • Deployment handled by devops for now.

    • edx/edx-video-pipeline

      • Deployment is handled manually by Educator team.  Schedule with Simon or Scott.

    • edx/journals

      • Deployment handled by White Label for now.  You can let them know after you merge if you want.

Complete list of repositories (as of 10/2018)

This list details the search results that matter and those that can be ignored.

  • edx/completion

  • edx/course-discovery

  • edx/credentials

  • edx/ecommerce

  • edx/edx-analytics-dashboard

  • edx/edx-analytics-data-api

  • edx/edx-drf-extensions (IGNORE - SELF)

  • edx/edx-enterprise

  • edx/edx-enterprise-data

  • edx/edx-notes-api

  • edx/edx-organizations

  • edx/edx-platform

  • edx/edx-platform-private (IGNORE)

  • edx/edx-video-pipeline

  • edx/journals

  • edx/programs (IGNORE - ARCHIVED)

  • edx/testeng-ci (IGNORE)