{"id":18648618,"url":"https://github.com/buildpulse/buildpulse-flaky-tests-plugin","last_synced_at":"2025-11-05T08:30:25.559Z","repository":{"id":241015016,"uuid":"647361073","full_name":"buildpulse/buildpulse-flaky-tests-plugin","owner":"buildpulse","description":null,"archived":false,"fork":false,"pushed_at":"2024-11-01T18:41:36.000Z","size":20,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2024-12-27T12:28:53.267Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","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/buildpulse.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}},"created_at":"2023-05-30T15:59:25.000Z","updated_at":"2024-08-28T15:12:05.000Z","dependencies_parsed_at":"2024-05-22T00:22:09.432Z","dependency_job_id":"4fa936f5-10ec-4964-99d6-743e94a4f218","html_url":"https://github.com/buildpulse/buildpulse-flaky-tests-plugin","commit_stats":null,"previous_names":["buildpulse/buildpulse-jenkins-plugin"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buildpulse%2Fbuildpulse-flaky-tests-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buildpulse%2Fbuildpulse-flaky-tests-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buildpulse%2Fbuildpulse-flaky-tests-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buildpulse%2Fbuildpulse-flaky-tests-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/buildpulse","download_url":"https://codeload.github.com/buildpulse/buildpulse-flaky-tests-plugin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239450732,"owners_count":19640783,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-11-07T06:32:54.305Z","updated_at":"2025-11-05T08:30:25.520Z","avatar_url":"https://github.com/buildpulse.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Jenkins for BuildPulse [![Jenkins license](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE)\n[BuildPulse](https://buildpulse.io/products/flaky-tests) is a CI observability and optimization platform that helps you find and fix flaky tests instantly, as well as help cut test times in half.\n\nThis Jenkins plugin works with our free tier (+ others), and allows you to easily connect your Jenkins CI workflows to BuildPulse.\n\n## Usage\n\n1. Locate the BuildPulse credentials for your account at [buildpulse.io][]\n2. In your Jenkins settings, create a [username and password credential](https://www.jenkins.io/doc/book/using/using-credentials/) with the ID:`buildpulse-credentials`, username:`BUILDPULSE_ACCESS_KEY_ID` and password:`BUILDPULSE_SECRET_ACCESS_KEY` (values can be found in the BuildPulse Dashboard)\n3. Populate the `BUILDPULSE_ACCOUNT_ID` and `BUILDPULSE_REPOSITORY_ID` in your Jenkinsfile (values can be found in the BuildPulse Dashboard)\n4. Add a step to your Jenkins workflow to use this plugin to send your test results to BuildPulse:\n```\npost {\n  always {\n    withCredentials([usernamePassword(credentialsId: 'buildpulse-credentials', usernameVariable: 'BUILDPULSE_ACCESS_KEY_ID', passwordVariable: 'BUILDPULSE_SECRET_ACCESS_KEY')]) {\n      buildpulseStep accountId: env.BUILDPULSE_ACCOUNT_ID, repositoryId: env.BUILDPULSE_REPOSITORY_ID, path: \"/spec/reports\", key: env.BUILDPULSE_ACCESS_KEY_ID, secret: env.BUILDPULSE_SECRET_ACCESS_KEY, commit: env.GIT_COMMIT, branch: env.GIT_BRANCH\n    }\n  }\n}\n```\n## Inputs\n\n### `account`\n\n**Required** The unique numeric identifier for the BuildPulse account that owns the repository.\n\n### `repository`\n\n**Required** The unique numeric identifier for the repository being built.\n\n### `path`\n\n**Required** The path to the XML file(s) for the test results. Can be a directory (e.g., `test/reports`), a single file (e.g., `reports/junit.xml`), or a glob (e.g., `app/*/results/*.xml`).\n\n### `keyCredentialId`\n\n**Required** The Jenkins Credential (Username and Password) ID. For the credential, set the username to the value of `BUILDPULSE_ACCESS_KEY_ID` in the dashboard. Set the password to the value of `BUILDPULSE_SECRET_ACCESS_KEY` in the dashboard.\n\n### `commit`\n\n**Required** The SHA for the commit that produced the test results.\n\nIf your workflow checks out a _different_ commit than the commit that triggered the workflow, then use this input to specify the commit SHA that your workflow checked out. For example, if your workflow is triggered by the `pull_request`, but you customize the workflow to check out the pull request merge commit, then you'll want to set this input to the pull request HEAD commit SHA.\n\n### `branch`\n\n**Required** The branch of the current build.\n\n### `repositoryPath`\n\n_Optional_ The path to the local git clone of the repository (default: workspace directory).\n\n### `coveragePaths`\n\n_Optional_ The paths to the coverage file(s) for the test results (space-separated).\n\n### `tags`\n\n_Optional_ Tags to apply to this build (space-separated).\n\n### `quota`\n\n_Optional_ Quota ID to count this upload against. Please set on BuildPulse Dashboard first.\n\n## Example Jenkinsfile\n```\n    pipeline {\n    agent {\n        docker {\n            image 'ruby:3.0.5' // Specify the Ruby container image you want to use\n            args '-u root' // Optionally, specify additional Docker container run arguments\n        }\n    }\n\n\n    environment {\n        GIT_REPO_URL = 'https://github.com/BuildPulseLLC/decentralized-forums' // Replace with your repository URL\n        GIT_BRANCH = 'main' // Replace with your repository branch\n        BUILDPULSE_ACCOUNT_ID = '' // Replace with your BuildPulse account ID\n        BUILDPULSE_REPOSITORY_ID = '' // Replace with your BuildPulse repository ID\n    }\n\n    stages {\n        stage('Clone Repository') {\n            steps {\n                script {\n                    echo 'Cloning the repository...'\n                    scmVars = git branch: \"${env.GIT_BRANCH}\", url: \"${env.GIT_REPO_URL}\", credentialsId: 'github'\n                    env.GIT_COMMIT = scmVars.GIT_COMMIT\n                }\n            }\n        }\n\n        stage('Setup \u0026 Test') {\n            // install dependencies \u0026 run tests\n        }\n    }\n\n    post {\n        always {\n              buildpulseStep account: env.BUILDPULSE_ACCOUNT_ID, repository: env.BUILDPULSE_REPOSITORY_ID, path: \"/spec/reports\", keyCredentialId: 'buildpulse-credentials', commit: env.GIT_COMMIT, branch: env.GIT_BRANCH\n        }\n    }\n}\n```\n\n[buildpulse.io]: https://buildpulse.io\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbuildpulse%2Fbuildpulse-flaky-tests-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbuildpulse%2Fbuildpulse-flaky-tests-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbuildpulse%2Fbuildpulse-flaky-tests-plugin/lists"}