Creating connection to GitHub
This only applies if you are hosting ManicTime Server yourself. It does not apply if you are using ManicTime Cloud.
Before users can make a connection to GitHub to get the issues, ManicTime Server needs to be connected to GitHub.
- On GitHub, go to user developer settings. Then click on the OAuth Apps and New OathApp.
|GitHub developer settings|
- Fill the necessary fields
- To get the Authorization callback url, go back to ManicTime server, Administration and under GitHub configuration, you will see a list of possible Redirect Uris.
|Possible redirect Uris|
- Copy one of them to GitHub.
- Leave Enable Device Flow setting unchecked.
|GitHub OAuth App|
- Generate new client secret
- Copy Client ID and secret to ManicTime Server GitHub Connection Configuration screen.
|Copy Client Id and Secret to ManicTime Server GitHub Configuration screen|
- Click "Test connection" to see if the connection is set properly, then save it.
When you click "Test connection", you will go through the authentication process, like all users who will try to connect to GitHub.
Editing or deleting configuration
Any changes to Client Id or Secret will delete existing connections for all users.
If you delete the configuration all users data will be also deleted.
In the GitHub configuration settings, you have the ability to control the visibility of issues for users. You can set up various filters to determine which issues a user can see. These filters can be based on repositories, issue states (open or closed), and time frames (e.g., issues closed in the last X days).
One important setting in GitHub is the "Authenticated user" setting. This refers to a specific user account that is used to authenticate and query data from GitHub. This user should have access to all repositories you want to import issues from.
Users then need to go to Administration -> My connections and authenticate with Github, and the tags should be visible in the add tag window.