diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index a2d5be1..2c003cd 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -167,3 +167,36 @@ jobs: id: run_bun run: | bun --version + + setup-bun-jsr-registry: + name: setup-bun jsr registry (${{ matrix.os }}) + runs-on: ${{ matrix.os }} + continue-on-error: true + needs: [remove-cache, tests] + strategy: + matrix: + os: + - ubuntu-latest + - macos-latest + - windows-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Bun + uses: ./ + id: setup_bun + with: + registries: | + [ + { + "url": "https://npm.jsr.io" + "scope": "@jsr" + } + ] + + - name: Run Bun + id: run_bun + run: | + bun add @luca/runtime-detector diff --git a/src/bunfig.ts b/src/bunfig.ts index 95c246c..8d964f7 100644 --- a/src/bunfig.ts +++ b/src/bunfig.ts @@ -5,7 +5,7 @@ import { info } from "@actions/core"; export type Registry = { url: string; scope: string; - token: string; + token?: string; }; enum FieldType { @@ -40,7 +40,9 @@ export function createField(registry: Registry): Field { if (url && owner) { return { type: FieldType.INSTALL_WITH_SCOPE, - value: `'${owner}' = { token = "${token}", url = "${url}" }`, + value: `'${owner}' = { url = "${url}"${ + token ? `, token = "${token}"` : "" + } }`, }; } diff --git a/tests/bunfig.spec.ts b/tests/bunfig.spec.ts index 9f52dc7..05f64b6 100644 --- a/tests/bunfig.spec.ts +++ b/tests/bunfig.spec.ts @@ -34,7 +34,7 @@ describe("writeBunfig", () => { const expectedContents = [ "[install.scopes]", - '\'@foo-bar\' = { token = "$BUN_AUTH_TOKEN", url = "https://npm.pkg.github.com/" }', + '\'@foo-bar\' = { url = "https://npm.pkg.github.com/", token = "$BUN_AUTH_TOKEN" }', "", ]; @@ -97,7 +97,7 @@ describe("writeBunfig", () => { "[install.cache]", "disable = true", "[install.scopes]", - '\'@foo-bar\' = { token = "$BUN_AUTH_TOKEN", url = "https://npm.pkg.github.com/" }', + '\'@foo-bar\' = { url = "https://npm.pkg.github.com/", token = "$BUN_AUTH_TOKEN" }', "", ]; @@ -130,7 +130,7 @@ describe("writeBunfig", () => { "optional = true", "", "[install.scopes]", - '\'@foo-bar\' = { token = "$BUN_AUTH_TOKEN", url = "https://npm.pkg.github.com/" }', + '\'@foo-bar\' = { url = "https://npm.pkg.github.com/", token = "$BUN_AUTH_TOKEN" }', '\'@bla-ble\' = { token = "$BUN_AUTH_TOKEN", url = "https://npm.pkg.github.com/" }', "", "[install.cache]", @@ -167,7 +167,7 @@ describe("writeBunfig", () => { "optional = true", "", "[install.scopes]", - '\'@foo-bar\' = { token = "$BUN_AUTH_TOKEN", url = "https://npm.pkg.github.com/" }', + '\'@foo-bar\' = { url = "https://npm.pkg.github.com/", token = "$BUN_AUTH_TOKEN" }', '\'@bla-ble\' = { token = "$BUN_AUTH_TOKEN", url = "https://npm.pkg.github.com/" }', "", "[install.cache]", @@ -210,7 +210,7 @@ describe("writeBunfig", () => { "optional = true", "", "[install.scopes]", - '\'@foo-bar\' = { token = "$BUN_AUTH_TOKEN", url = "https://npm.pkg.github.com/" }', + '\'@foo-bar\' = { url = "https://npm.pkg.github.com/", token = "$BUN_AUTH_TOKEN" }', '\'@bla-ble\' = { token = "$BUN_AUTH_TOKEN", url = "https://npm.pkg.github.com/" }', "", "[install.cache]",