Skip to content

Allow some services to skip criteria from the maturity model

For gitlab-com/gl-infra/scalability#826 (closed)

Why is this change being made?

In our service maturity model, currently every service must meet all criteria at each level. However, some services don't need developer documentation (and other stage group involvement), because they are purely infrastructure-facing. PgBouncer is one example; woodhouse might be another. The maturity model should allow some services (based on a setting in the service catalog) to skip those criteria.

The service maturity model handbook page is generate from the maturity model manifest file data/service_maturity.yml. This file is generated and sync from the runbook . The data structured is refined in runbooks!3788 (merged) to support this new feature. The passed (boolean) field of each criterion is convert to result field, whose values include passed, failed, skipped, unimplemented`. The level passed assertion stays the same.

As a result, the generating helpers in this handbook repo need to be updated to stay in-sync with this change.

Result

Before After
Screen_Shot_2021-08-16_at_10.58.27 Screen_Shot_2021-08-16_at_11.00.10
Screen_Shot_2021-08-16_at_11.27.03
Current page
Screen_Shot_2021-08-16_at_11.15.59
Preview page

Maturity model changes

  • consul

    • Not exist → Level 0
  • kas

    • Not exist → Level 1
  • kube

    • Not exist → Level 0
  • nat

    • Not exist → Level 0
  • nfs

    • Level 0 → Not exist
  • nginx

    • Not exist → Level 0
  • patroni

    • Level 2 → Level 3
    • Apdex built from multiple sources: failedpassed
  • patroni-registry

    • Not exist → Level 1
  • pgbouncer

    • Level 1 → Level 1
    • SLO monitoring: error rate: failedpassed
  • pgbouncer-registry

    • Not exist → Level 1
  • plantuml

    • Not exist → Level 0
  • postgres-archive

    • Not exist → Level 0
  • pvs

    • Not exist → Level 3
  • redis-tracechunks

    • Not exist → Level 2
  • sentry

    • Not exist → Level 0
  • waf

    • Level 0 → Level 0
    • Developer guides exist in developer documentation: unimplementedskipped
  • web-pages

    • Level 2 → Level 3
    • Apdex built from multiple sources: failedpassed
  • websockets

    • Not exist → Level 1
  • woodhouse

    • Level 0 → Level 0
    • Exists in the service catalog: failedpassed

Author Checklist

  • Provided a concise title for the MR
  • Added a description to this MR explaining the reasons for the proposed change, per say-why-not-just-what
    • Copy/paste the Slack conversation to document it for later, or upload screenshots. Verify that no confidential data is added.
  • Assign reviewers for this change to the correct DRI(s)
    • If the DRI for the page/s being updated isn’t immediately clear, then assign it to one of the people listed in the "Maintained by" section in on the page being edited.
    • If your manager does not have merge rights, please ask someone to merge it AFTER it has been approved by your manager in #mr-buddies.
  • If the changes affect team members, or warrant an announcement in another way, please consider posting an update in #whats-happening-at-gitlab linking to this MR.
    • If this is a change that directly impacts the majority of global team members, it should be a candidate for #company-fyi. Please work with internal communications and check the handbook for examples.

Edited by Quang-Minh Nguyen

Merge request reports