Skip to content

Latest commit

 

History

History
133 lines (113 loc) · 5.49 KB

PathToUploadRights.md

File metadata and controls

133 lines (113 loc) · 5.49 KB

Distro Skill Tree

This page contains an interactive chart for navigating paths to obtaining permissions to upload changes to Ubuntu archive. This can be used as a model to help build an application for things such as certain packagesets, MOTU, CoreDev as examples.

%% mermaid flowcharts documentation: https://mermaid.js.org/syntax/flowchart.html
%%{ init: { 'flowchart': { 'curve': 'catmullRom' } } }%%
flowchart TD

    Start((" ")):::Invisible
    Start --> |"Path to Distro Contribution"| Basics

    subgraph Basics
        direction TB
        subgraph InitialStudies["Initial Studies"]
            direction BT
            %% Concepts{{"Concepts"}}
            Concepts{{"<a href=https://github.com/canonical/ubuntu-maintainers-handbook>Concepts</a>"}}:::study
            Git-Ubuntu{{"Git-Ubuntu"}}:::study
            Debian-Policy{{"<a href=https://www.debian.org/doc/debian-policy/>Debian Policy</a>"}}:::study
        end
        subgraph InitialTasks["Initial Tasks"]
            direction BT
            BiteSizedBugs((Bite Sized Bugs)):::task
            TrivialPackgeMerges(("Trivial Package Merges")):::task
        end
    end

    InitialStudies --> InitialTasks

    BasicsToIntermediate{"Team/Mentor Says ready for more"}:::concept

    Basics --> BasicsToIntermediate --> Intermediate
    subgraph Intermediate
        direction TB
        subgraph IntermediateTasks[Intermediate Tasks]
            direction TB
            %% States
            ComplexPackageMerges(("Complex Package Merges")):::task
            ProposeMigration(("<a href=https://wiki.ubuntu.com/ProposedMigration>Proposed Migration</a>")):::task
            UnderstandDep8{{"<a href=https://salsa.debian.org/ci-team/autopkgtest/blob/master/doc/README.package-tests.rst>Understand DEP8</a>"}}:::study
            AddAUTOPKGTESTS(("<a href=https://github.com/canonical/ubuntu-maintainers-handbook/blob/main/PackageTests.md>Add Autopkgtest</a>")):::task
            SRU{{"<a href=https://wiki.ubuntu.com/StableReleaseUpdates>Study SRU</a>"}}:::study
            DoSRUS(("Do SRUS")):::task

            %% Transitions
            UnderstandDep8 --> AddAUTOPKGTESTS
            ComplexPackageMerges --> ProposeMigration
            SRU --> DoSRUS
        end
        IntermediateKeepGoing["Do enough of these to apply for package or group uploads"]:::task
        IntermediateTasks --> IntermediateKeepGoing --> IntermediateTasks
    end

    IntermediateToAdvanced{"Team/Mentor Says ready for more"}:::concept
    Intermediate --> IntermediateToAdvanced --> Advanced

    subgraph Advanced
    direction LR
        subgraph AdvancedTasks[Advanced Tasks]
            direction LR
            %% States
            UpstreamSubmissionFixes(("Upstream Submission Fixes/Features")):::task
            UpstreamSubmissionDelta(("Upstream Submission of Delta")):::task
            MilestonesAndExceptions(("Milestones And Exceptions")):::task
            StudyFFE{{"<a href=https://wiki.ubuntu.com/FreezeExceptionProcess>Study FFE</a>"}}:::study
            DoAnFFE(("Do An FFE")):::task
            PlusOne{{"<a href=https://wiki.ubuntu.com/PlusOneMaintenanceTeam>Study +1</a>"}}:::study
            PlusOneShadowing(("+1 Shadowing")):::task

            %% Transitions
            StudyFFE-->DoAnFFE
            PlusOne-->PlusOneShadowing
        end
        AdvancedKeepGoing["Do enough of these to apply for MOTU"]:::task
        AdvancedTasks --> AdvancedKeepGoing --> AdvancedTasks
    end

    Advanced --> optionalDebian
    MOTU{"<a href=https://github.com/canonical/ubuntu-maintainers-handbook/blob/main/MembershipInMOTU.md>MOTU</a>"}:::concept
    Advanced --> MOTU --> Expert

    subgraph optionalDebian[Optional Activites in Debian]
        %% States
        Contribute(("<a href=https://www.debian.org/doc/manuals/maint-guide/>Contribute</a>")):::task
        DM{"<a href=https://wiki.debian.org/DebianMaintainer>DM</a>"}:::concept
        DD{"<a href=https://wiki.debian.org/DebianDeveloper>DD</a>"}:::concept

        %% Transitions
        Contribute --> DM
        DM --> DD
    end

    subgraph Expert
        direction LR
        subgraph ExpertTasks
            direction TB

            %% States
            StudyLibaryTransitions{{"<a href=https://wiki.debian.org/Teams/ReleaseTeam/Transitions>Study Libary Transitions</a>"}}:::study
            DoLibaryTransitions(("Do Libary Transitions")):::task
            StudyPackageTransitions{{"<a href=https://wiki.debian.org/PackageTransition>Study Package Transitions</a>"}}:::study
            DoPackageTransitions(("Do Package Transitions")):::task
            StudyMIR{{"<a href=https://github.com/canonical/ubuntu-mir/edit/main/README.md>Study MIR</a>"}}:::study
            DoMIR(("Do a MIR")):::task
            SeedChange(("Seed Change")):::task

            %% Transitions
            StudyLibaryTransitions-->DoLibaryTransitions
            StudyPackageTransitions-->DoPackageTransitions
            StudyMIR-->DoMIR
            StudyMIR-->SeedChange
        end
        ExpertKeepGoing["Do enough to apply for core-dev"]:::task
        ExpertTasks-->ExpertKeepGoing-->ExpertTasks
    end

    CoreDev{"<a href=https://github.com/canonical/ubuntu-maintainers-handbook/blob/main/MembershipInCoreDev.md>Core Developer</a>"}:::concept

    Expert --> CoreDev --> Duties

    subgraph Duties
        direction LR
        CoreDevPlusOne(("+1")):::task
        Sponsoring(("Sponsoring")):::task
        Mentoring(("Mentoring")):::task
    end
Loading