Skip to content

Contribute to Summit Events with Metecho

Ryan Blake edited this page Jul 8, 2021 · 3 revisions

Metecho

Metecho is a Heroku app that works with the Summit Events GitHub repository. It has its own Github Repository. Metecho is the Summit Events web-based tool with the intention of it being used for:

  • Creating short time Salesforce scratch orgs that have Summit Events pre-installed.
  • Admin and Developer collaboration on completing and testing project backlog tasks and issues.
  • Managing all in progress and completed changes, including development and testing efforts, status and notes.

Instructions for Creating a Summit Events Dev Org using Metecho

Pre-requisites:

Go to GitHub page: https://github.com/orgs/SFDO-Community-Sprints/teams/community-contributors, then start a discussion here to request access. Someone from the team will set up your access and notify you.

Log into Metecho

  1. Metecho
  2. Log in using your GitHub account
  3. Authorize Metecho & Salesforce to access your GitHub account.
  4. Agree to the terms of service.
  5. Once you log in, you should see the GitHub repository for Summit Events.
  6. Click on the Summit Events App icon to go into the Summit Events Metecho

Note: You do have to be a contributor to the Summit Events repository to see the option. If you don’t see the repository, please verify that you have Contributor level access to the GitHub repository. See pre-requisites above for how to request access.

Development, Testing and Learning

In Metecho, you can either create a scratch org to test the application or learn how it works. You can also create a branch, contributing towards the development of the project. Depending on your purpose you'll want to follow the appropriate steps below:

Creating a Scratch Org Only (No Development)

  1. From the main page, click on the "Create Scratch Org" button under "My Project Scratch Org" on the right side of the screen.
  2. This will create a scratch org that you can utilize to learn and test the Summit Events App from the main branch.

Creating a Branch & Scratch Org

  1. From the main menu, you can see other scratch orgs that have been created.
  2. To create a new scratch org, click “Create an Epic". This "Epic" will create a new branch in Github.
  3. Create a new branch or select an existing branch. The branches available need to be a "feature" branch.
  4. Give your Epic a name, which will label your branch & and description, articulating what you're goal is.
  5. Add a Task giving it a name and description of what you intend to tackle. Org Type can remain the default of "dev".
  6. Once the task is created, click on that task name and select "Assign" on the Developer window.
  7. Assign yourself as the Developer and hit "save".
  8. You will see a new window where you can select "Create Org". It will take a couple minutes to create the org, but this org will have Summit Events installed and configured. There will also be sample data so you can start making edits and changes to your branch.

NOTE: If you're new to Summit Events and utilizing Metecho to learn more about the tool, start here with the documentation.

Additional Tasks can be added for different things you're hoping to tackle. The idea is that you would make your changes/updates/enhancements and commit those to be review by another contributor.

Accessing your Metecho Org

  1. Your Metecho scratch org is available for 30 days, and is accessible as often as needed during that time.
  2. To get back to your org, log into Metecho and select the Summit Events repository.
  3. Find your epic in the list, then click on the project name.
  4. Click on the Task Name that you were working on.
  5. Click “View org”.

Adding Collaborators

Best practice: the developer is the person working on the change, and the Tester should be someone else that can review, validate and approve the change meets requirements.

  1. Click “Add or Remove Collaborators” to find the people who will be working with you on this project. Note: it will show everyone who is authorized to use Metecho and the names displayed are GitHub usernames.
  2. Check the box next to the names of your collaborators, then click “Save”.
  3. To assign roles on the tasks, click on the person icon under the role.
  4. Click the person you want to assign to the role, then click “Save”.

Submit Changes for Testing and Review

  1. Once you have completed making your changes in your scratch org, it needs to be reviewed by some else. Navigate to the Metecho task you were working on. The status will show that there are unretrieved changes.
  2. Click “Retrieve Changes from Dev Org”.
  3. Select the “force-app” directory, then “Save & Next”.
  4. Review your changes, and select the ones you want to have reviewed. Do NOT include any Profiles as Summit Events does not utilize Profiles.
  5. Update the Commit Message to provide detail on the changes you made and what they should review, then click “Retrieve Selected Changes”.
  6. The window will close, and Metecho will begin processing your request. Depending on the changes made, this could take a few minutes.
  7. When complete, the message will update to “up to date”, and a blue button will appear at the top. Click the “Submit Task for Testing” button.
  8. Fill in all of the requested fields on the Submit this task for testing screen, then click “Submit Task for Testing”.
  9. The Tester you designated for this Task will receive an email with their notes and a link to the Metecho task so they can create their own scratch org that includes your changes.

Be sure to clearly articulate what you want the person testing to test so they can make appropriate comments related to those changes.

Reviewing and Testing Changes

  1. While in the Task, click the “Create Org” button in the Tester window to create a new scratch org with the related changes.
  2. Once the scratch org creation is complete, click “Test Changes in Org” to open the scratch org.
  3. After you have completed your review of the changes, return to the Metecho Task screen and click the “Submit Review” button.
  4. Complete the Submit Task Review fields, then click “Submit Review”.

Be clear about what was working and what wasn't. If they are not related to the updates made, share that and create an issue in Github.

Approved/Rejected Changes

  1. If Approved, it will now appear in the Commit History.
  2. This will create a pull request that Project team will review, and approve the change to move into the master project Git Repository.
  3. If Rejected, it will go back to the Developer with comments and revert back to the "Make changes in Dev Org"
Clone this wiki locally