What can we help you with?

The GitHub Integration

 

monday-dev-banner (2).png

 

 

We know how crucial it is to have a robust integration between your source code tool and monday.com, so we want to present to you the GitHub Integration.

The one-time installation integration with GitHub offers powerful templates so your team can work with a seamless software development flow, from planning and tracking sprints on monday dev to executing the perfect code on GitHub.

The integration is an account-level-permission integration. Once the integration is pre-installed in just a few steps, anyone on your team can create new templates.

 

Tip: In order for the GitHub integration to sync successfully, you will first need to install the monday.com application on GitHub. You'll also need to be an Admin of your monday.com account and have Admin permission on the GitHub organization to install the application.
To start, go to github.com/apps/monday-com-github, and install the monday.com app in GitHub:

Devs Install GitHub.png

 

You'll be asked to choose an organization on your account:

Devs Choose Organization.png

 

You'll then be asked to authorize monday.com on your GitHub account:

Devs monday Permissions.png

Once this is installed, users can add new GitHub templates and will automatically be authenticated with your GitHub account.

 

Click here to learn what these permissions mean

It’s important to note that monday.com only accesses the necessary data, such as names and locations of your data, to ensure functionality. These permissions include:

  • Access to your code - Specific to the TODO template, monday.com reads the changes on the PR, without saving the code, in order to connect it to your monday item. 
  • Issues - monday.com needs to access information regarding issues in order to trigger the relevant monday automation
  • Metadata - monday.com needs access to a collection of read-only endpoints with metadata in order to trigger the relevant monday automation. These endpoints do not provide sensitive, private repository information.
  • Pull requests - monday.com needs to read changes in the PR, as well as access writing permissions regarding pull requests, in order to trigger the relevant monday automation and monday two-way sync templates

 

Add it to your workflow 

To add the GitHub integration templates to your desired board, you can go to that board and click on Integrate in the upper right corner:Group 64 (54).png

 

Once you're in the Automations Center, search for "GitHub" in the search bar:Group 64 (55).png

 

Click on the GitHub banner and you will find the templates our integration offers:Screenshot 2024-07-07 at 17.46.19 1.png

 

Then you can select the templates you want to add to your board.

 

The integration templates supported by monday.com are:
  • When an issue is labeled with something in this repository, create an item
  • When a pull request is merged in these repositories, and item id is mentioned in it, change status to something
  • When an issue is created in these repositories, create an item
  • When a pull request is created in these repositories, and item id is mentioned in it, change status to something
  • When a pull request is created in these repositories, and item id is mentioned in it, add pull request link to link column
  • When a branch is created in these repositories, create an item
  • When an issue status changes to something in these repositories, and item id is mentioned in it, set status to something
  • When github user pushes a TODO comment to these repositories, create an item
  • When an issue is created in these repositories, and item id is mentioned in it, add link to this link column
  • When a pull request status changes to something in these repositories, and item id is mentioned in it, set status to something
  • When an issue is labeled with something in this repository, and item id is mentioned in it, set status to something
  • When a pull request status changes to something in these repositories, and item id is mentioned in it, create an update
  • When a pull request is labeled with something in this repository, and item id is mentioned in it, set status to something
  • When an issue is created in these repositories, create an item and sync future changes
  • When an issue is created with these labels in this repository, create an item and sync future changes
  • When a pull request is created or updated in these repositories, create an item and sync future changes
  • when an item is created or updated, create in issue in this repository,with these fields and sync future

 

Create a two-way sync

A two-way sync occurs when data is being both pushed from monday.com into GitHub and pulled from GitHub into monday.com. This way, your data matches within both platforms and remains up-to-date.

Group 64 (56).png

 

To create a two-way sync, select both ways in the dropdown menu.

For example, if you want to map your item's Owner column on monday.com to the Assignees field in GitHub, you will select those fields in each respective dropdown. Then, under the Choose direction dropdown, choose both ways.

GitHub Two-Way Sync.gif

 

What is the item ID?

Some of the integration templates need a "unique connection" between monday.com and GitHub in order to sync the two platforms, and the item ID serves as that unique number associated with the item.

 

Note: You must put a "#" symbol in front of the number in GitHub in order for the monday.com Item ID Column to recognize the connection. Ex: It must read "#376479" in GitHub, not "376479". 

 

Group 64 (57) (1) 1.png

 

Let's take the integration template as an example: "When a pull request is created in this repository, and item ID is mentioned in the pull request name, change status to something."

Once the pull request is created in GitHub, the system uses the item ID in monday.com to identify which item it needs to change.

Tip: You can click on the Item ID column to easily copy the value automatically from your board.

 

GitHub Actions

GitHub Actions is a tool built into GitHub that lets you automate tasks within your software development workflow. It will help you eliminate repetitive tasks, in turn streamlining the development process, making it more efficient.Screenshot 2024-07-07 at 17.29.51 1.png

What can GitHub Actions do?

  • Automate CI/CD pipeline: This will allow you to set up automatic processes to build, test, and deploy your code whenever there are changes. This helps catch bugs early on and streamline the release process.
  • Run workflows based on events: GitHub Actions can trigger workflows based on various events in your repository. For instance, you can create a workflow that runs tests automatically whenever a pull request is submitted.
  • Use a large community of actions: There's a vast collection of pre-built actions available that you can use for various tasks. These can be anything from deploying your code to different platforms to creating tickets in project management tools. You can also create your own custom actions.

You'll find the template for our GitHub integration that opens an item on specific workflows ending with specific conclusions. The item can be populated with workflow data.

To use the template, navigate to the Automations center and search for GitHub. From there, click on the template as below. download (19).gif

Note: In order to use GitHub Actions, the GitHub organization admin must allow the "Actions Read Permission" setting. If you encounter any issues with this, please contact us

 

What else do you need to know?

Will the integration work even if you don't install the application in GitHub?

  • No, the integration is not possible without the application being installed in GitHub.

Can you connect my monday.com account to multiple organizations in GitHub?

  • Yes! You can connect your monday.com accounts to multiple GitHub organizations.

Then, to uninstall the monday.com application from GitHub, you can go to your GitHub account > Settings > Applications and find monday.com. Scroll down to the "Danger zone" and click "Uninstall".

 

If you need help building custom integrations, we also have an option for paid assistance through our network of certified monday.com partners. If you're interested, please fill out this form and someone will be in touch shortly.

 

If you have any questions, please reach out to our team right here. We’re available 24/7 and happy to help.