Categorygithub.com/alphatroya/ci-redmine-bindings
modulepackage
0.0.0-20240422060819-d07e03a336d8
Repository: https://github.com/alphatroya/ci-redmine-bindings.git
Documentation: pkg.go.dev

# README

Bitrise to Redmine webhook

Go Report Card

This app automatically move all issues marked as "Ready to build" to "Done" section after internal build completed. A build number printed in the specified custom field.

Installation

Following ENV items are required to run :

  • REDMINE_API_KEY: access token for a Redmine bot user
  • REDMINE_HOST: Redmine installation host address
  • STAMP_BUILD_CUSTOM_FIELD: Redmine ID of a build number issue custom field
  • STAMP_DONE_STATUS: Redmine ID of a done status
  • STAMP_READY_TO_BUILD_STATUS: Redmine ID of a "Ready to the build" status

For Mailgun integration you should add following items:

  • MAILGUN_API: API key for Mailgun service
  • MAILGUN_DOMAIN: domain address
  • MAILGUN_RECIPIENT: a recipient for emails
  • MAILGUN_SENDER: a sender for emails

Bitrise configuration

  • Add a new Outgoing Webhooks in the Bitrise Code tab.
  • Specify /bitrise/v2 as an URL
  • Set "REDMINE_PROJECT" header with Redmine project id

# Packages

No description provided by the author

# Functions

NewResponse create empty response with message.
NewStamper creates handler class configured by settings and connected to redis client.

# Structs

HookPayload represents webhook json payload sended from Bitrise.
HookResponse represents success message response.
Issue represents single Redmine issue.
IssuesContainer represents get issues response data.
RedmineDoneMarker move all issues to Done state with build number printing.
Stamper is a handler for moving ready to build tasks to done state.

# Interfaces

DoneMarker defines interface for issue processing task.
Storage represents interface for storing data in external vault.