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

feature(argus): Release Planner #459

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

k0machi
Copy link
Collaborator

@k0machi k0machi commented Sep 19, 2024

This PR adds a new way to manage releases inside Argus, called
Release Planner. Release Planner replaces current Release Scheduling
mechanism (but not the Duty Calendar for now). Main features include:

  • Plans are now separate entities (replacing one global release
    schedule)
  • Each plan contains tests, groups and people it will be using for
    assignments
  • Plans can target a specific scylla version to scope the plan to a
    point or RC release.
  • Plans can be edited, deleted and copied.
  • On copy, plan will offer to replace missing tests/groups if it is
    being copied to another release and that release is missing required
    tests.
  • Each plan automatically creates and maintains a view dashboard for
    said plan and can be viewed from plan overview page or inside views
    overview
  • The new assignment logic is now applied to all releases not marked as
    "endless" (perpetual in the admin panel). Currently the only one that
    is marked that way is scylla-master.

Task: #377
Task: https://github.com/scylladb/qa-tasks/issues/1717

@k0machi k0machi self-assigned this Sep 19, 2024
@k0machi k0machi force-pushed the release-planner-rework branch 4 times, most recently from 664c673 to af28233 Compare September 26, 2024 15:37
@k0machi k0machi force-pushed the release-planner-rework branch 3 times, most recently from 9eb0110 to d1ec135 Compare October 2, 2024 10:05
@k0machi k0machi changed the title wip: release-planner feature(argus): Release Planner Oct 2, 2024
@k0machi k0machi marked this pull request as ready for review October 2, 2024 10:06
argus/backend/controller/planner_api.py Outdated Show resolved Hide resolved
argus/backend/models/plan.py Outdated Show resolved Hide resolved
argus/backend/models/plan.py Show resolved Hide resolved
argus/backend/plugins/core.py Outdated Show resolved Hide resolved
argus/backend/plugins/core.py Outdated Show resolved Hide resolved
argus/backend/service/planner_service.py Outdated Show resolved Hide resolved
argus/backend/models/plan.py Outdated Show resolved Hide resolved
argus/backend/models/plan.py Outdated Show resolved Hide resolved
argus/backend/models/plan.py Outdated Show resolved Hide resolved
argus/backend/service/planner_service.py Show resolved Hide resolved
@k0machi k0machi force-pushed the release-planner-rework branch 4 times, most recently from 4a711e4 to ee8766c Compare October 9, 2024 12:32
This commit adds a new way to manage releases inside Argus, called
Release Planner. Release Planner replaces current Release Scheduling
mechanism (but not the Duty Calendar for now). Main features include:

* Plans are now separate entities (replacing one global release
  schedule)
* Each plan contains tests, groups and people it will be using for
  assignments
* Plans can target a specific scylla version to scope the plan to a
  point or RC release.
* Plans can be edited, deleted and copied.
* On copy, plan will offer to replace missing tests/groups if it is
  being copied to another release and that release is missing required
  tests.
* Each plan automatically creates and maintains a view dashboard for
  said plan and can be viewed from plan overview page or inside views
  overview
* The new assignment logic is now applied to all releases not marked as
  "endless" (perpetual in the admin panel). Currently the only one that
  is marked that way is scylla-master.

Fixes scylladb#377
Task: scylladb/qa-tasks#1717
Copy link
Collaborator

@soyacz soyacz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM
Adding a feature is a good opportunity to add unit tests to it.
Just a few cases for testing backend would be enough.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants