Administering a CC Onboarding (all roles)
Overview of the whole process
A new CC goes through the nomination process
The new CC or their sponsor reads this onboarding page creates a new GitHub access request ticket.
Axim on-call steps in and administers the access request ticket. You can copy-paste the checklist below into a comment on the filed GH Access ticket and tick things off to make sure you get it all done.
This will involve some intermediate steps, including: the CC completing their onboarding course, and the CC program admins sending them the required legal docs.
Note on the CLA
It’s important that all CCs except Axim employees have signed an individual CLA.
Employees of Axim do not need to sign individual CLA or Core Contributor’s Agreement; they are covered by the Confidentiality & Invention Assignment Agreement that everyone signs at hire. If they leave Axim - they must sign an individual CLA to continue to commit code, and a Program Agreement if they intend to continue working as a Core Contributor.
Non-coding CCs need to proactively sign an individual CLA. This is in case they need elevated permissions on any GitHub repo (including but not limited to repos that exist simply to hold issues, such as platform-roadmap
)
Checklist for Axim on-call (paste into the GH request)
### CC Onboarding Checklist for Axim On-Call
- [ ] Ensure their Salesforce (SF) contact is set up correctly. This step is usually a no-op, but it might require work if, e.g., the new CC recently changed firms and/or they only contributed code outside of the openedx org.
- [ ] The SF contact should exist under their name and GitHub handle. *Open edX Individual CLA* should be checked. If any of this missing, then [have them sign an individual CLA](https://openedx.org/cla), and then confirm that it is reflected in SF. This may take a couple days.
- [ ] Exactly one of the following scenarios should be true. If not, you will need to talk to both the new CC and a trusted point of contact from the Firm in question to make sure everybody's on the same page. If it's not obvious what to do, talk to the Axim eng team.
- [ ] **Employed CC scenario**: The onboarding request specifies a Firm Name that matches the SF contact's *Account Name*, and *Contributor Covered Under Entity CLA* is checked.
- [ ] **Independent CC scenario**: The onboarding request specifies "none" / "independent" for Firm Name. The SF contact's *Account Name* is `... Household`, and *Contributor Covered Under Entity CLA* is unchecked.
- [ ] The SF contact should specify an email address. You will need this for the remaining steps.
- [ ] Invite them by email address to the [Core Contributor Onboarding course](https://training.openedx.io/courses/course-v1:OpenedX+NewCC+2024/instructor#view-membership) (link requires login) and let them know they need to complete the steps before they’re fully considered a core contributor.
- [ ] Confirm with them that they received the course invitation and have successfully accessed the training course.
- [ ] Let CC know that they may be required to take the privacy and a11y courses when they become available.
- [ ] Verify with Sarina or Axim Legal that the new Core Contributor successfully completed the required legal documents, including both the CLA and the CC Agreement. (Usually Legal will contact the CC Admins about this so you can check in with them if it’s been a little while). Keep the ticket open with status “Blocked” until this is done. Once complete, follow the remaining steps (some may be handled by the CC onboarding course now).
- [ ] Invite the CC to the Open edX `#core-contributors` Slack channel.
- [ ] Add them to the [overall CC mailing list](https://groups.google.com/a/axim.org/g/core-contributors/members?pli=1).
- [ ] Add them to the [Core Contributors list](https://openedx.atlassian.net/wiki/spaces/COMM/pages/3156344833).
- [ ] Back in their Salesforce contact record, go to their *Role* and add "Core Contributor".
- [ ] Ensure they are in the openedx GitHub organization and a member of the [openedx-triage](https://github.com/orgs/openedx/teams/openedx-triage)
- [ ] Send Fox a direct message on Slack with the full name and email address of the new CC. (Fox will contact the new CC explaining the bi-weekly check-ins at [Listaflow.com](https://www.listaflow.com/), and provide the CC with a link to the latest sprint retro recap thread [in the forums](https://discuss.openedx.org/c/working-groups/core-contributors/36).
- [ ] Ask a Forum Moderator to [award the “Core Contributor” badge](https://discuss.openedx.org/admin/users/list/active) to the person’s forums profile. (forum moderation rights are listed on the [Core Contributors page](https://openedx.atlassian.net/wiki/spaces/COMM/pages/3156344833)).
### Additional, for Coding Roles Only
- [ ] Add them to the [Google group](https://groups.google.com/a/axim.org/g/core-contributors-dev). This is very low traffic, meant primarily for announcements we want to be sure get to all developers.
- [ ] Add the CC to the `@core-contributor-committers` Slack user group
- [ ] Remind them to add themselves to the relevant shared Slack channel(s) corresponding to their merge accesses (some [additional context](https://docs.google.com/document/d/1-G-v3nrP8RN_j0P8gEsdI0ahdOoJFePiDHFOuPlUjlk/edit#heading=h.wsc5ai1lrvb6) if you’re curious). Here’s a DM you can copy and use: “For the repositories you have merge access to, [please join the Slack room(s) that correspond to your repositories](https://docs.google.com/spreadsheets/d/1ryqbaxMp4x-8Apwss2Br2IOU2UA7zXEI-VDo8dJPb9U/edit#gid=0). These rooms are where to coordinate timing on merging breaking or major changes. Keep in mind that 2U runs CI/CD off the tip of master branches, so major changes will impact their site first. It's generally OK to announce in these rooms that you are merging a pr with 24 hour or more notice (eg, I'm merging this tomorrow at 1500 UTC), and engage in discussion with anyone who expresses concern. These rooms are also a good place to ask for a 2U review on critical/breaking change PRs before you get to the merging state.”
- [ ] Also add them to the GitHub group [committers](https://github.com/orgs/openedx/teams/committers) teams.
- [ ] Grant write access to the repositories described in the vote. Do not grant it directly to the user; instead, use existing **committers-** teams, making new ones as you need to. [See this page for details](https://openedx.atlassian.net/wiki/spaces/COMM/pages/3555852316/GitHub+Access+Team+Structure#Team-names-and-types).
CC Program Admins: Sending the relevant Legal Documents
Axim on-call: you do not need to worry about this. The checklist above has you mark the GH request as “Blocked” while this happens.
As a part of the training course, the CC will send an e-mail to the CC Program Admins asking for a CC Program agreement to sign.
Go to https://app.docusign.com
Create a new document from a template. The Open edX Core Contributor Agreement template should be shared with you. Use that template.
Send them the CC Agreement to sign.
Create another document, this time the Individual CLA. Send that along too.
Reply to the CC’s email:
Hello ,
Welcome to the CC program!
Please find in this, your personal, inbox (and check spam) for two emails from DocuSign: one is your Individual CLA, and the second is the Core Contributor Agreement.
Thanks for being a part of the community!