Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DM-35150: Implement GitHub Checks for notebook execution #41

Merged
merged 9 commits into from
Jul 4, 2022

Commits on Jun 27, 2022

  1. Update dependencies

    jonathansick committed Jun 27, 2022
    Configuration menu
    Copy the full SHA
    9264410 View commit details
    Browse the repository at this point in the history

Commits on Jul 4, 2022

  1. Add SqlPage.github_commit column

    When set to a Git SHA, this associates the page with the Git commit of a
    GitHub Check Run. (This enables us to create pages during GitHub PR check
    runs)
    jonathansick committed Jul 4, 2022
    Configuration menu
    Copy the full SHA
    116ad21 View commit details
    Browse the repository at this point in the history
  2. Move check run setup into domain classmethods

    Rather than having extensive logic for setting up a check run in the
    service layer, now class methods on the GitHubConfigsCheck are able to
    create and update the status of check runs. Overall the intent of this
    work is to make it easier to add check runs for notebooks in the next
    phase of work, and reduce the amount of complexity spread into the
    service layer.
    jonathansick committed Jul 4, 2022
    Configuration menu
    Copy the full SHA
    85f175b View commit details
    Browse the repository at this point in the history
  3. Refactor GitHubConfigsCheck with base class

    This moves generic code for check domain models into a base class. The
    notebook execution will use this.
    jonathansick committed Jul 4, 2022
    Configuration menu
    Copy the full SHA
    c7d344d View commit details
    Browse the repository at this point in the history
  4. Implement github check for notebook execution

    This is a first pass at running a github check for notebook execution.
    
    One thing that's a bit awkward is making PageService.add_page return a
    new PageExecutionInfo instance so the check run has access to the
    noteburst job corresponding to the page; it may be better to separate
    adding a page to the database from executing the notebook so that
    PageExecutionInfo doesn't need to have lots of nullable types.
    jonathansick committed Jul 4, 2022
    Configuration menu
    Copy the full SHA
    26d0931 View commit details
    Browse the repository at this point in the history
  5. Rename noteburstjob domain module to noteburst

    This will allow us to add a client to this module and generalize it from
    only being models from noteburst responses created elsewhere.
    jonathansick committed Jul 4, 2022
    Configuration menu
    Copy the full SHA
    6a2d3a0 View commit details
    Browse the repository at this point in the history
  6. Add NoteburstApi client

    This client, part of the noteburst domain, centralizes the API
    interactions with noteburst, which are now happening in both the page
    service and the github checks domain.
    jonathansick committed Jul 4, 2022
    Configuration menu
    Copy the full SHA
    71b83bb View commit details
    Browse the repository at this point in the history
  7. Add enable_retry flag to noteburst submissions

    The notebook execution check run is now able to set enable_retry=False
    to force a notebook execution to report issues quickly.
    
    In doing this, I've refactored the PageService methods to not force
    notebook execution, which makes is easier for different service use
    cases, like this one.
    jonathansick committed Jul 4, 2022
    Configuration menu
    Copy the full SHA
    be84174 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    04ead41 View commit details
    Browse the repository at this point in the history