Commit451 / skyhook

Parses webhooks and forwards them in the proper format to Discord.
https://commit451.github.io/skyhook-web
MIT License
367 stars 95 forks source link

Teamcity Support #75

Open braunsonm opened 6 years ago

braunsonm commented 6 years ago

Would be nice to see skyhook support Teamcity build success/fail.

Teamcity supports JSON webhooks in a format like so: https://github.com/cloudnative/teamcity-webhooks

Jawnnypoo commented 6 years ago

Nice, yeah this would be a good addition. 👍

braunsonm commented 6 years ago

As sort of a work around however, you can use the Bitbucket skyhook and enable it for commit status. As long as your TeamCity publishes build statuses, it will pick up on it and report it!

dscalzi commented 6 years ago

I can add support for this. I don't use teamcity so I don't know which information is relevant.

If you can pick information out of the sample payload

{
  "name": "Echo :: Build",
  "url": "http://127.0.0.1:8080/viewType.html?buildTypeId=Echo_Build",
  "build": {
    "full_url": "http://127.0.0.1:8080/viewLog.html?buildTypeId=Echo_Build&buildId=14",
    "build_id": "7",
    "status": "success",
    "scm": {
      "url": "https://github.com/evgeny-goldin/echo-service.git",
      "branch": "origin/master",
      "commit": "6bef6af1f43fb3e5e6d73f1e3332e82dae1f55d4"
    },
    "artifacts": {
      "echo-service-0.0.1-SNAPSHOT.jar": {
        "s3": "https://s3-eu-west-1.amazonaws.com/evgenyg-bakery/Echo::Build/7/echo-service-0.0.1-SNAPSHOT.jar",
        "archive": "http://127.0.0.1:8080/repository/download/Echo_Build/7/echo-service-0.0.1-SNAPSHOT.jar"
      }
    }
  }
}

and format it into an embed (you can use this https://leovoel.github.io/embed-visualizer/), I'll add the provider. Attach the resulting json when you finish 👍