{"id":42235242,"url":"https://github.com/iress/junit-slack-notification-buildkite-plugin","last_synced_at":"2026-01-27T03:17:14.899Z","repository":{"id":61598944,"uuid":"544974470","full_name":"iress/junit-slack-notification-buildkite-plugin","owner":"iress","description":"📈 Summarise your test success, failures and ignored as a slack message","archived":false,"fork":false,"pushed_at":"2025-09-18T12:59:37.000Z","size":519,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-18T15:00:10.290Z","etag":null,"topics":["buildkite","buildkite-plugin","junit","slack-bot","tests"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iress.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-10-03T15:05:27.000Z","updated_at":"2025-09-18T12:57:50.000Z","dependencies_parsed_at":"2026-01-06T01:08:08.995Z","dependency_job_id":null,"html_url":"https://github.com/iress/junit-slack-notification-buildkite-plugin","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/iress/junit-slack-notification-buildkite-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iress%2Fjunit-slack-notification-buildkite-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iress%2Fjunit-slack-notification-buildkite-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iress%2Fjunit-slack-notification-buildkite-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iress%2Fjunit-slack-notification-buildkite-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iress","download_url":"https://codeload.github.com/iress/junit-slack-notification-buildkite-plugin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iress%2Fjunit-slack-notification-buildkite-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28798780,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T01:07:07.743Z","status":"online","status_checked_at":"2026-01-27T02:00:07.755Z","response_time":168,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["buildkite","buildkite-plugin","junit","slack-bot","tests"],"created_at":"2026-01-27T03:17:14.242Z","updated_at":"2026-01-27T03:17:14.891Z","avatar_url":"https://github.com/iress.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JUnit - Slack notification buildkite plugin\n\nUse \"JUnit XML report\" to generate Slack notification from Buildkite\n\nThis plugin was inspired by\n[junit-annotate-buildkite-plugin](https://github.com/buildkite-plugins/junit-annotate-buildkite-plugin)\nwhich also retrieve JUnit XML reports and process them.\n\n## Example\n\nAdd an extra step like this after running your tests to your `pipeline.yml`:\n```yml\nsteps:\n  - label: Run tests\n    key: my-test\n    command: ...\n    \n  - label: \":slack: :memo: to #junit_bot_testing\"\n    depends_on: my-test\n    allow_dependency_failure: true\n    plugins:\n      - iress/junit-slack-notification#v1.0.8:\n          artifacts: \"**/*.xml\"\n          SLACK_TOKEN: \"xoxb-xxxxxxxxxxx-xxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxx\"\n          SLACK_CHANNEL: \"#junit_bot_testing\"\n```\nor\n```yml\nsteps:\n  - label: Run unit tests\n    key: my-unit-test\n    command: ...\n  - label: Run Verification tests\n    key: my-verification-test\n    command: ...\n    \n  - label: \":slack: :memo: to #junit_bot_testing\"\n    depends_on: my-test\n    allow_dependency_failure: true\n    plugins:\n      - iress/junit-slack-notification#v1.0.8:\n          test_suites:\n              - name: \"Unit tests\"\n                artifacts: \"unit-test/**/*.xml\"\n              - name: \"Verification tests\"\n                artifacts: \"verification-test/**/*.xml\"\n          SLACK_TOKEN: \"xoxb-xxxxxxxxxxx-xxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxx\"\n          SLACK_CHANNEL: \"#junit_bot_testing\"\n```\n\n## Configuration\n\n### `artifacts` (Use if no `test_suites`, string, default `**/*.xml` )\n\nThe file pattern to use to retrieve JUnit XML reports\n\n### `test_suites` (object)\n\nThe object containing the JUnit XML reports. The object should be in the following format:\n\n```yml\ntest_suites:\n  - name: \"Test Suite 1\"\n    artifacts: \"test-suite-1/**/*.xml\"\n  - name: \"Test Suite 2\"\n    artifacts: \"test-suite-1/**/*.xml\"\n\n```\n\n### `SLACK_CHANNEL` (Required, string)\n\nName of the public Slack channel which your bot will report _e.g._ `#junit_bot_testing`\n\n### `SLACK_TOKEN_ENV_NAME` (String)\n\nName of the environment variable that contains the Slack API token. Default value: `\"SLACK_TOKEN\"`\n\n### `SLACK_TOKEN` (string)\n\nThe token of your Slack application which is allows chatting on your Slack organisation. \n\n### `DOCKER_CACHE` (string) \n\nIf you which to use a Docker registry proxy, specify the path prefix here\n\n### `EXTRA_SLACK_MESSAGE` (string)\n\nContains an extra message to add on the bottom of the generated message. You can include a variable using the syntax `{var}`.\n\n```yaml\nEXTRA_SLACK_MESSAGE: \"This project has a libyear of {LIBYEAR_DRIFT}\"\n```\nwith `LIBYEAR_DRIFT` environment variable set to `0.5` will add the message _This project has a libyear of 0.5_\n\n## Create a bot for your workspace.\nSee Slack documentation [Create a bot for your workspace](https://slack.com/intl/en-fr/help/articles/115005265703-Create-a-bot-for-your-workspace) for instruction to create a Slack application.\n\nHere a sample of your slack application manifest sample. Make sure the scope of your bot is allowed to `chat:write` \u0026 `chat:write:public`\n\n```yaml\n_metadata:\n  major_version: 1\n  minor_version: 0\ndisplay_information:\n  name: JUnit Summary Bot\n  description: JUnit run summary information\n  background_color: \"#000000\"\nfeatures:\n  bot_user:\n    display_name: JUnit Summary Bot\n    always_online: false\noauth_config:\n  scopes:\n    bot:\n      - chat:write\n      - chat:write.public\nsettings:\n  org_deploy_enabled: false\n  socket_mode_enabled: false\n  token_rotation_enabled: false\n```\n\n\n## Developing\n\nTo start development, install dependency package and compile typescript\n```shell\nnpm install\nnpm run build\n```\n\nTo run unit tests in Jest\n\n```shell\nnpm run test\n```\n\n## Contributing\n\n1. Fork the repo\n2. Make the changes\n3. Run the tests\n4. Commit and push your changes\n5. Send a pull request\n\n## Licence\nMIT License (See the included [Licence](LICENSE) file for more information).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Firess%2Fjunit-slack-notification-buildkite-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Firess%2Fjunit-slack-notification-buildkite-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Firess%2Fjunit-slack-notification-buildkite-plugin/lists"}