{"_id":"@atom-tech/report","_rev":"2-e69c6fd011b6aa887ccf12f047dd6532","name":"@atom-tech/report","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@atom-tech/report","version":"1.0.0","keywords":["junit","ci","test-results","testing","asas"],"license":"MIT","_id":"@atom-tech/report@1.0.0","maintainers":[{"name":"atom-tech","email":"atom.dev.sa@gmail.com"}],"homepage":"https://as-as.dev","bugs":{"url":"https://github.com/atom-tech9/devspace/issues"},"bin":{"asas-report":"dist/cli.js"},"dist":{"shasum":"a0d6d34b197173e47b50e1cfff9300f30f44473f","tarball":"https://registry.npmjs.org/@atom-tech/report/-/report-1.0.0.tgz","fileCount":18,"integrity":"sha512-bdR+B3patfA5ExpkCxqAUqOM5iHjOtw2AG3PuAsB3wuhXwG+pQ79DAaDcohbOqgyBltsr4wXTj9g6Ew/DcBaSw==","signatures":[{"sig":"MEUCIGGWcQkkwBWO/Vn+bfVPTtPlZnyePTH3Va/PaJYrxFw6AiEA0/wF0ao1yhnkAD9Z7N7PCt1Lm4+UxmF6ZGud5CiYZ4s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32722},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"6eeab89ae6398cceb04b0266a34ff56ba57e1ba2","scripts":{"lint":"eslint src","test":"vitest run","build":"tsc -p tsconfig.build.json","typecheck":"tsc --noEmit -p tsconfig.json","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"atom-tech","email":"atom.dev.sa@gmail.com"},"repository":{"url":"git+https://github.com/atom-tech9/devspace.git","type":"git","directory":"packages/report-cli"},"_npmVersion":"11.17.0","description":"Send a JUnit test report to asas from any CI pipeline.","directories":{},"_nodeVersion":"22.21.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","typescript":"^5.7.3","@types/node":"^22.20.1","@devspace/config":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/report_1.0.0_1786900765946_0.7627700499852788","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@atom-tech/report","version":"1.0.1","description":"Send a JUnit test report to asas from any CI pipeline.","license":"MIT","type":"module","bin":{"asas-report":"dist/cli.js"},"main":"./dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=18"},"scripts":{"build":"tsc -p tsconfig.build.json","typecheck":"tsc --noEmit -p tsconfig.json","lint":"eslint src","test":"vitest run","prepublishOnly":"pnpm run build"},"devDependencies":{"@devspace/config":"workspace:*","@types/node":"^22.20.1","typescript":"^5.7.3","vitest":"^2.1.8"},"keywords":["junit","ci","test-results","testing","asas"],"homepage":"https://as-as.dev","repository":{"type":"git","url":"git+https://github.com/atom-tech9/devspace.git","directory":"packages/report-cli"},"publishConfig":{"access":"public"},"gitHead":"06e06705466cdaa205fccfc46cfc135d56981e70","_id":"@atom-tech/report@1.0.1","bugs":{"url":"https://github.com/atom-tech9/devspace/issues"},"_nodeVersion":"22.21.1","_npmVersion":"11.17.0","dist":{"integrity":"sha512-5NEPs5SR8q/j1n7g99Zjen95j3dPM9dow0dqzyHqCe1ijr+84fjTnuz4v4B+KFQ/nkaXzu0FgLpX+sSnIz0MoA==","shasum":"c2e14b6ebaa381e438cfadf0c11bc8f81e064fc6","tarball":"https://registry.npmjs.org/@atom-tech/report/-/report-1.0.1.tgz","fileCount":18,"unpackedSize":33409,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCICBYovhwqvGHkJ3ceASikZRey8+u+NJtWWbQFiQ654zHAiA+8iRBYM2wOIfPqkJPq55eQ/gPFlpJCl4cVL4z6yR63Q=="}]},"_npmUser":{"name":"atom-tech","email":"atom.dev.sa@gmail.com"},"directories":{},"maintainers":[{"name":"atom-tech","email":"atom.dev.sa@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/report_1.0.1_1786900968603_0.413740535774205"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-16T17:19:25.812Z","modified":"2026-08-16T17:22:48.882Z","1.0.0":"2026-08-16T17:19:26.074Z","1.0.1":"2026-08-16T17:22:48.735Z"},"bugs":{"url":"https://github.com/atom-tech9/devspace/issues"},"license":"MIT","homepage":"https://as-as.dev","keywords":["junit","ci","test-results","testing","asas"],"repository":{"type":"git","url":"git+https://github.com/atom-tech9/devspace.git","directory":"packages/report-cli"},"description":"Send a JUnit test report to asas from any CI pipeline.","maintainers":[{"name":"atom-tech","email":"atom.dev.sa@gmail.com"}],"readme":"# @atom-tech/report\n\nSends a JUnit XML test report to [asas](https://as-as.dev), so automated results\nappear beside the ones people record by hand — same coverage figure, same\nhistory, same dashboard.\n\nNothing runs on the asas side. This posts a file your test runner already wrote.\n\n## Use it\n\n```yaml\n- name: Send test results to asas\n  if: always()\n  run: npx --yes @atom-tech/report\n  env:\n    ASAS_URL: https://your-asas-host\n    ASAS_PROJECT: your-project-id\n    ASAS_TOKEN: ${{ secrets.ASAS_TOKEN }}\n```\n\n`if: always()` matters — without it the step is skipped exactly when tests\nfailed, which is when the results are worth having.\n\nNot on GitHub? It is the same command anywhere that runs node. GitLab, Jenkins,\nCircleCI, Buildkite and Vercel are all recognised.\n\n## It exits 0 when tests fail\n\nOn purpose. Your test runner already failed the build for that, one step\nearlier, and a reporting step that fails it a second time is the first thing\nanyone deletes. Pass `--fail-on-test-failure` if you would rather it did.\n\n## Settings\n\n| Variable | |\n|---|---|\n| `ASAS_TOKEN` | Required. Create it in the project's Testing settings — it can only post results, it cannot read the project. |\n| `ASAS_PROJECT` | Required. The project id. |\n| `ASAS_URL` | Required. Your asas address. |\n| `ASAS_BUILD` | Optional. Defaults to the commit your CI is on. |\n\n| Flag | |\n|---|---|\n| `[file...]` | The report. Left out, it is found automatically. |\n| `--build <label>` | What was under test. |\n| `--dry-run` | Show what would happen, write nothing. |\n| `--fail-on-test-failure` | Exit non-zero when a test failed. |\n| `--token` / `--project` / `--url` | Override the environment. |\n\n## Finding the report\n\nWith no path, it tries the conventional names first — `junit.xml`,\n`test-results.xml`, `test-results/`, `reports/`, `build/test-results`,\n`target/surefire-reports` — and only then walks the directory, skipping\n`node_modules` and friends. A sharded suite that writes several files has all of\nthem sent.\n\n## Which runners\n\nAnything that writes JUnit XML: Vitest, Jest, Playwright, Cypress, Mocha,\nPHPUnit, pytest, gotestsum, Maven, Gradle, RSpec, Karma.\n\n## Licence\n\nMIT\n","readmeFilename":"README.md"}