diff --git a/src/ci-env.test.ts b/src/ci-env.test.ts index 9231eb6..7365e5d 100644 --- a/src/ci-env.test.ts +++ b/src/ci-env.test.ts @@ -14,6 +14,7 @@ describe("detectCIEnvironment", () => { delete process.env.TF_BUILD; delete process.env.BUILDKITE; delete process.env.TEAMCITY_VERSION; + delete process.env.RWX; delete process.env.CI; }); @@ -61,6 +62,11 @@ describe("detectCIEnvironment", () => { expect(detectCIEnvironment()).toEqual({ name: "teamcity" }); }); + it("detects RWX", () => { + process.env.RWX = "true"; + expect(detectCIEnvironment()).toEqual({ name: "rwx" }); + }); + it("detects generic CI", () => { process.env.CI = "true"; expect(detectCIEnvironment()).toEqual({ name: "ci" }); diff --git a/src/ci-env.ts b/src/ci-env.ts index ef2157b..ca6ecea 100644 --- a/src/ci-env.ts +++ b/src/ci-env.ts @@ -31,6 +31,9 @@ export function detectCIEnvironment(): CIEnvironment | null { if (process.env.TEAMCITY_VERSION) { return { name: "teamcity" }; } + if (process.env.RWX === "true") { + return { name: "rwx" }; + } if (process.env.CI === "true") { return { name: "ci" }; } diff --git a/src/user-agent.test.ts b/src/user-agent.test.ts index 7bf4e08..c2e62b2 100644 --- a/src/user-agent.test.ts +++ b/src/user-agent.test.ts @@ -13,6 +13,7 @@ describe("buildUserAgent", () => { process.env = { ...originalEnv }; // Ensure our CI environment is not detected delete process.env.GITHUB_ACTIONS; + delete process.env.RWX; delete process.env.CI; }); @@ -36,4 +37,10 @@ describe("buildUserAgent", () => { const userAgent = buildUserAgent(); expect(userAgent).toBe("linear-release/1.2.3 (gitlab-ci)"); }); + + it("builds user agent for RWX", () => { + process.env.RWX = "true"; + const userAgent = buildUserAgent(); + expect(userAgent).toBe("linear-release/1.2.3 (rwx)"); + }); });