Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

These are playbooks for on-call tasks. Feel free to add more!

...

Most requests will come from folks who are following the instructions on page: https://openedx.atlassian.net/wiki/spaces/COMM/pages/3241640370/tCRILAxim+Collaborative+Engineering+Team#tCRILTeam#Axim-Request-Process . Familiarize yourself with those instructions so that you understand what is expected of the requester. Update the that page if it seems like any part of it is incorrect or causing confusion.

...

Adding/Removing A New Entity Contributor

The most common change is to either add or remove a contributor from a companies entity CLA.

To do this, first log on to Salesforce.

In the top search bar, search for the appropriate company, in Salesforce terminology this will be an “Account.”

...

Select the result from the Accounts section of the meta-search.

From the Account page select the Related tab.

If you are adding a new entity contributor, click on New in the Contact section.

Enter the following details:

  1. Set the Account Name to the relevant Institution(2U/edx, OpenCraft, etc.)

  2. The contributor's first and last name

  3. The contributor's GitHub username (case sensitive - it should match what you see on their profile at https://github.com/<username>)

  4. Ideally, their email address

  5. Locate the field Contributor Covered Under Entity and select it

  6. Locate the Role field and add the Entity Contributor role to the user.

Save the record.

...

Find the contact record that associates the contributor with the account, say, 2U. You can do this be navigating from the account or by search for the contact by GitHub username.

Do not delete the contact, instead make the following changes.

  1. Click on the pencil by the Account Name field on the contact record and click X to remove the association. A household account will automatically be related to the contact on save.

  2. Deselect the Contributor Covered Under Entity checkbox.

  3. Save the record.

  4. Add a link to the GitHub issue in the Chatter panel on the right-hand side and any notes that are relevant for the future.

Note

If you encounter Contact Owner related errors, contact Edward Zarecor

Adding and removing individual contributors

Most of the process is automated, but there is associated review – and part of it is currently malfunctioning. Adding/removing individual contributors requires contract review and is currently handled by legal and Eden or Ed.

Adding and removing non technical contributors

Select the “Non-technical contributor” box in the Salesforce contact, and save the record.

...

👽 Handling requests from unknown users

Sometimes, requests come from members of the openedx, or other folks we recognize.

...

Info

Currently, you should only be adding entity contributors from 2U into Salesforce - and only if the requester on the Axim Engineering on-call ticket has the CLA Approver role in Salesforce.

For new contributors from other entities, they follow a different process - an approver from their company emails oscm@axim.org, and one of the members of that team processes the request into Salesforce. If you have a request from a non-2U individual to add them to their company’s entity CLA, please direct them to their company’s lead or HR department to have a designated company representative send the request to the OSCM list.

The most common change is to either add or remove a contributor from a companies entity CLA.

To do this, first log on to Salesforce.

In the top search bar, search for the appropriate company, in Salesforce terminology this will be an “Account.”

...

Select the result from the Accounts section of the meta-search.

From the Account page select the Related tab.

If you are adding a new entity contributor, click on New in the Contact section.

Enter the following details:

  1. Set the Account Name to the relevant Institution(2U/edx, OpenCraft, etc.)

  2. The contributor's first and last name

  3. The contributor's GitHub username (case sensitive - it should match what you see on their profile at https://github.com/<username>)

  4. Ideally, their email address

  5. Locate the field Contributor Covered Under Entity and select it

  6. Locate the Role field and add the Entity Contributor role to the user.

Save the record.

Anchor
remove-entity-contributor
remove-entity-contributor
If you are removing an entity contributor

Find the contact record that associates the contributor with the account, say, 2U. You can do this be navigating from the account or by search for the contact by GitHub username.

Do not delete the contact, instead make the following changes.

  1. Click on the pencil by the Account Name field on the contact record and click X to remove the association. A household account will automatically be related to the contact on save.

  2. Deselect the Contributor Covered Under Entity checkbox.

  3. Save the record.

  4. Add a link to the GitHub issue in the Chatter panel on the right-hand side and any notes that are relevant for the future.

Note

If you encounter Contact Owner related errors, contact Edward Zarecor

Adding and removing individual contributors

Most of the process is automated, but there is associated review – and part of it is currently malfunctioning. Adding/removing individual contributors requires contract review and is currently handled by legal and Eden or Ed.

Adding and removing non technical contributors

Select the “Non-technical contributor” box in the Salesforce contact, and save the record.

...

👽 Handling requests from unknown users

Sometimes, requests come from members of the openedx, or other folks we recognize.

Other times, they come from people we don’t recognize. We need to be careful about these in order to avoid our support system becoming a social engineer attack vector.

...

Finally, if a repo is meant to only hold issues (that is: only a README, catalog-info, gitignore, and GH workflows; NO code, docs, or assets), then click the gear next to the repo’s description and apply the issues-only topic. Then, to ensure that all Coding CCs can flexibly work with issues on the repo, grant:

  • core-contributor-program-committers committers (GitHub group) - write access

🏗 Transferring repositories into openedx

...

  1. In Salesforce click the gear icon in the top right of the page and select setup.

  2. From the right-hand menu select Administration > Users > Users

  3. Click the “new user” link.

  4. Add the users first name, last name, and canonical email, [first initial][last name]@axim.org, other required fields will be updated automatically

  5. For the Role, User License, and Profile fields select: Axim Internal User, Salesforce, Standard User, or possibly System Administrator upon request.

  6. Set user users “federation id” to be their canonical email address as above.

  7. Save the record.

  8. In Google Workspaces admin, https://admin.google.com, add the users to the “Salesforce Users Group.”

🎛️ Managing

...

AWS, Cloudflare, and Terraform

We manage our AWS account via Terraform at https://github.com/openedx/terraform-internal/ . At the moment, both AWS and Cloudflare access are required to plan & run that Terraform. If you need AWS access, follow these steps (on-call engineers: no action is required from you)

Some of us at Axim have AWS & Cloudlare access, others don’t. If you’re on-call and need to run Terraform, reach out to the team chat, and either we will get you set up to run Terrarform, or run it for you. Feanil Patel is the most knowledgeable here; if unsure, ping him.

How to give yourself AWS access:

  • Make a terraform-internal PR. Here’s a template.

  • Have your manager give a thumbs-up on the PR to confirm that the access is warranted.

  • Ping Feanil Patel to plan, run, & merge the PR.

📖 Add a Repository’s Docs to http://docs.openedx.org

...

  1. In a python environment run, pip install git+ssh://git@github.com/openedx/repo-tools.git

  2. Export a github token into your environment that has read:org and repo access.

    Code Block
    export GITHBU_TOKEN=ghp_....

  3. Run the script: audit_users (no arguments needed). You should get an output of users that don’t have associated entries in our CLA database.

  4. You’ll need to investigate why they have access and either remove them from GitHub or add/update their records in salesforce.

🎨 Enable renovate on a repo

...

  1. database.

  2. You’ll need to investigate why they have access and either remove them from GitHub or add/update their records in salesforce.

🎨 Enable renovate on a repo

Go to the Open edX org Renovate GitHub app installation page and add the requested repo under “Only select repositories” in “Repository access”

🔏 Adding Secrets to the Openedx Github Org

For each org secret, we want to document how to rotate the secret as well so as a part of the process of adding it, you should also update /wiki/spaces/~feanil/pages/3251372059 with an entry for the new secret you’re adding. If it got accidentally exposed, what steps would we need to take to re-create it?

  1. Go to /wiki/spaces/~feanil/pages/3251372059 and add an entry for how to rotate the new secret.

  2. Go to https://github.com/organizations/openedx/settings/secrets/actions

  3. Add the new secret.