Integration of slack and you track.
Main functionality here is change management:
- show ticket changes
- linkify references to issues
- map the changes to the appropriate channel
Of course, to do this we have an agent being woken up regularly that:
- goes to the RSS feed
- for each item found there, calls into the REST interface to get changes
- formats the change info
- posts it to the channel
- List of required properties
- YOUTRACK_USERNAME - YouTrack username
- YOUTRACK_PASSWORD - YouTrack password
- SLACK_AUTH_TOKEN - token for authentication to Slack REST services
- APP_DATA_DIR - directory where app will store it's data-files (configuration)
- YOUTRACK_URL - YouTrack server url
- ISSUE_HISTORY_WINDOW - Time In minutes - how deep should we look for issues in the past. If set to 10, it means that issues and changes that happened not longer than 10 minutes will be posted to chat server
- Run "mvn -DYOUTRACK_USERNAME=user -DYOUTRACK_PASSWORD=pwd ... package" to build war file
- Drop war file into servlet container "webapps" directory
That's it.
If you experience any problems, e.g. YouTrack updates are not posted to Slack channel, rebuild the project setting http client log level to DEBUG (so that all requests and responses are logged), redeploy and feel free to file an issue with information from the log. To set the log level to DEBUG, edit src/main/resources/logback.xml and uncomment lines
<logger name="org.apache.http" level="DEBUG" />
<logger name="com.ontometrics.integration.youtrack.response" level="DEBUG" />