Releases: tcplugins/tcWebHooks
tcWebHooksPlugin 1.2.1
This releases to fixes two bugs in the 1.2.0 release.
Responsibility Changed event could throw Null Pointer exception in certain circumstances.
Whilst resolving the default date format, a null pointer could be throw if teamcity variables were not defined.
This appeared to only happen sometimes for the Responsibility Changed event.
Unable to delete Header or Filter from UI when editing a webhook in the Edit Project screen
The page rendered for the Webhooks and Templates tab of the Edit Project screen was missing the code for the Delete Filter and Delete Header dialog boxes. This dialog is shown to confirm that the user wants to delete the Filter or Header. Since the object could not be found on the page, a Javascript error occurred and prevented the Filter or Header from being removed from the webhook.
tcWebHooksPlugin 1.2.0 Release
Official release of tcWebHooks version 1.2.0.
For full release notes see: Release-Notes-for-version-1.2.0
Thanks to all who helped with this release and provided feedback and testing for the alpha versions and release candidates.
tcWebHooksPlugin 1.2.0-rc.5
This release adds the statistics and analytics configuration options to the admin UI.
The WebHooks section of the TeamCity Admin UI now contains the following:
The additions are:
- A
refresh graph
link, which fetches new history items, analyses them, persists them, and displays them on the graph. - A
Enable/Disable Statistics Collection
button. This toggles enabling the worker that assembles the statistics and persists the analysed results to disk. - A
Enable/Disable Analytics Sharing
button. This toggles enabling the sharing of analytics data for the tcWebHooks developers. - A link to the wiki, and a link to show what the shared data looks like.
See https://github.com/tcplugins/tcWebHooks/wiki/Analytics for more information about statistics and analytics.
This release also contains a number code cleaning recommendations from SonarQube.
I am really hoping for this to be the final release candidate for tcWebHooks version 1.2.0
I plan to release the 1.2.0 by the end of January.
Full Changelog: v1.2.0-rc4...v1.2.0-rc5
tcWebHooksPlugin 1.2.0-rc.4
Bugfix: Newly created webhooks failing to execute correctly
Fixes #209 which is only tangentially related. It actually affects all newly created webhooks, not just nested projects.
Full Changelog: v1.2.0-rc3...v1.2.0-rc4
tcWebHooksPlugin 1.2.0-rc.3
Bugfix: Only show project builds in UI, not sub-projects builds
The Edit WebHook dialog on the Edit Project Tab was showing all the builds from every sub-project.
Only the builds from the current project should be shown, not every build from every descendant project.
Fix a few issues reported by SonarQube
As recommended by SonarQube, fixed a few possible Null Pointer errors and other code smells
Full Changelog: v1.2.0-rc2...v1.2.0-rc3
tcWebHooksPlugin 1.2.0-rc.2
Second release candidate for tcWebHooks version 1.2.0
Fix webhook editing permission for non-administrators #208
Bugfix for editing webhooks with EDIT_PROJECT permission but not SYSTEM_ADMIN permission.
Show correct parameter details for current project
Was previously listing inherited parameters from parent projects, which might not have been editable/visible.
Improved to show the following in the edit webhooks UI.
Analytics support (in testing)
If you're interested in helping improve tcWebHooks by sending analytics data, please add the following to .BuildServer/config/main-config.xml
<webhooks>
<statistics enabled="true">
<reporting enabled="true" />
</statistics>
</webhooks>
This setting will be in the UI for the final release.
Full Changelog: v1.2.0-rc1...v1.2.0-rc2
tcWebHooksPlugin 1.2.0-rc.1
First release candidate for tcWebHooks version 1.2.0
Features
- Support attributes in service messages. Attributes become variables
eg, Printing##teamcity[sendWebhook foo='bar']
to standard out during a build will trigger aService Message
event and allow a webhook to use a variable${foo}
with a value of"bar"
- Add HMAC command (Velocity) and ${webhookPayload} variable
eg, Add a header like with this value#hmac("sha256",${my_key},${webhookPayload})
and the HMAC will be caculated from the content of$webhookPayload
. Note:$webhookPayload
is not available until after the payload has been assembled, but one can use any string for HMAC. - Add auto-generated tags in UI (with helpful mouseovers). Tags link to the search page, to find all (visible to you) webhooks with that tag.
Bugfixes
- Fix slack template as it contained some non-velocity tags
- Remove or exclude superfluous javascript files when building zip
- Convert slack.com template to velocity. Add build events. Fix tests
- Populate some missing attributes for Queued/Dequeued events
- Improve information around templates for projects
- Show tags with title tags on search page
- Remove unused libraries for agent plugin
- Update Jetty version
- Update GSON version
- Migrate common lang to lang3. Remove old library version
Full Changelog: v1.2.0-alpha10...v1.2.0-rc1
tcWebHooksPlugin 1.2.0-alpha.10
Enable editing of all WebHook features from UI
- Edit WebHook Filters in UI
- Edit WebHook Headers in UI
- Edit WebHook Parameters in UI
- WebHooks and Project Parameters editable from Project Configuration Screen (requires REST API installed)
- Auto-generated tags shown in UI - Tags are derived from configuration options.
- Fix statistics graph to show full 60 days
- Various statistics bugs fixed including clearing up statistics files if older than 12 months.
- REST API for creating, editing and deleting webhooks (and filters, headers, parameters) is finally working.
- Extensive overhaul of UI code for editing webhooks.
- More consistent UI for displaying webhooks. Should look the same on various pages.
- Tags link to the new(ish) search page. Searching is still very alpha.
- Internally, all webhook editing actions now go via the Webhook Manager (which is what drives the search page and allows features like tracking template usage. eg, this template is used by 3 webhooks).
Nearly all the UI code (Javascript) for editing webhooks has been re-written or refactored.
If there are bugs, they're likely in the editing of WebHooks or Project Parameters or in the preview/testing tab when editing a webhook.
Full Changelog: v1.2.0-alpha9...v1.2.0-alpha10
tcWebHooksPlugin 1.2.0-alpha.9
Fix regression when accessing secure WebHook Project Parameter.
- Fix null ref exception by @matt-richardson in #205
The error actually occurs when adding a secure value and the debug logging refers to the wrong value when outputting value to the log.
Full Changelog: v1.2.0-alpha8...v1.2.0-alpha9
tcWebHooksPlugin 1.2.0-alpha.8
Eighth alpha release of 1.2.0 version
-
Secure values support #53
WebHook Project Parameters marked as "password" are now externalised into TeamCity's secure storage and are stored outside of VCS the project config is synchronised with VCS. See Hiding sensitive values -
New statistics chart showing webhook stastics over last 60 days
See WebHooks tab on the Administration page
Statistics are written to a statistic file, so that they are persisted across restarts. -
Added a new "Build Step" called "WebHook Service Message Sender" #179
Add a build step to your build which triggers webhooks with the "Service Message Received" event enabled.
Note: it's also possible to fire the "Service Message Received" event by printing##teamcity[sendWebhook]
to stdout during the build. -
Skip REST-API jar checking for recent TC versions
Recent versions of TeamCity no longer include a jar that conflicts with the tcWebHooks REST API.
This change no longer requires the check to run if the version of TeamCity 2021.0 or newer. -
Add ability to mark a property as "forced resolve" #26 #193
Certain teamcity variables are not resolved until after the "changes loaded" event in the build lifecycle.
Marking a WebHook Project Parameter as "forced resolve" asks TeamCity to resolve the variable earlier if it can. -
Improve WebHook variables
Added $buildStatusSakuraUrl variable which points to the URL of the build in the new experimental UI.
Updated $buildStatusUrl to use build External ID, rather than Internal ID. using the internal ID would sometimes redirect to main page in teamcity rather than the specific build (mainly when you had to login as part of the UI flow). -
Updated libraries
- Guava, httpClient, Velocity Template Engine
- Also the following only used for testing: junit, jetty
Full Changelog: v1.2.0-alpha.7...v1.2.0-alpha8