diff --git a/.github/workflows/fly-deploy.yml b/.github/workflows/fly-deploy.yml deleted file mode 100644 index faa74a67..00000000 --- a/.github/workflows/fly-deploy.yml +++ /dev/null @@ -1,37 +0,0 @@ -name: Fly.io Preview -on: - pull_request: - types: [opened, synchronize] - -env: - FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }} - FLY_APP: turborepo-remote-cache - FLY_URL: https://turborepo-remote-cache.fly.dev/v8/artifacts/status - -jobs: - deploy: - name: Deploy - runs-on: ubuntu-latest - steps: - - name: Checkout Github repo - uses: actions/checkout@v4 - - - name: Deploy app - uses: superfly/flyctl-actions@1.5 - with: - args: - 'deploy --app ${{ env.FLY_APP }} -c fly.toml' - - - name: Check the deployed service URL - uses: jtalk/url-health-check-action@v4 - with: - url: ${{ env.FLY_URL }} - max-attempts: 3 - retry-delay: 15s - - - name: Post link to PR Preview - uses: thollander/actions-comment-pull-request@v3 - with: - message: | - Your PR is deployed, see it [here](${{ env.FLY_URL }}) - mode: recreate diff --git a/.nvmrc b/.nvmrc index 209e3ef4..d4b7699d 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -20 +20.18.1 diff --git a/CHANGELOG.md b/CHANGELOG.md index e55951b3..b97f91ab 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [2.2.8](https://github.com/ducktors/turborepo-remote-cache/compare/v2.2.7...v2.2.8) (2024-11-29) + + +### Bug Fixes + +* update node on dockerfile ([a9dd8cb](https://github.com/ducktors/turborepo-remote-cache/commit/a9dd8cb0269c1e2f5f4dc689e214c3b1e0042fdb)) + ## [2.2.7](https://github.com/ducktors/turborepo-remote-cache/compare/v2.2.6...v2.2.7) (2024-11-27) diff --git a/Dockerfile b/Dockerfile index 1f9104b2..0dbc7e3e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM --platform=${TARGETPLATFORM} node:20.13.1-alpine3.18@sha256:53108f67824964a573ea435fed258f6cee4d88343e9859a99d356883e71b490c as build +FROM node:20.18.1-alpine3.19 AS build # set app basepath ENV HOME=/home/app @@ -7,7 +7,7 @@ ENV HOME=/home/app COPY package.json $HOME/node/ COPY pnpm-lock.yaml $HOME/node/ -# change workgin dir and install deps in quiet mode +# change working dir and install deps WORKDIR $HOME/node # enable pnpm and install deps @@ -26,18 +26,21 @@ RUN pnpm install --prod --frozen-lockfile --ignore-scripts RUN rm -rf $PROJECT_WORKDIR/.pnpm-store # start new image for lower size -FROM --platform=${TARGETPLATFORM} node:20.13.1-alpine3.18@sha256:53108f67824964a573ea435fed258f6cee4d88343e9859a99d356883e71b490c +FROM node:20.13.1-alpine3.19 -# dumb-init registers signal handlers for every signal that can be caught -RUN apk update && apk add --no-cache dumb-init +# Update OpenSSL and install dumb-init +RUN apk update && \ + apk upgrade openssl && \ + apk add --no-cache dumb-init && \ + rm -rf /var/cache/apk/* -# create use with no permissions -RUN addgroup -g 101 -S app && adduser -u 100 -S -G app -s /bin/false app +# create user with no permissions +RUN addgroup -g 101 app && adduser -u 100 -D -G app -s /bin/false app # set app basepath ENV HOME=/home/app -# copy production complied node app to the new image +# copy production compiled node app to the new image COPY --chown=app:app --from=build $HOME/node/ $HOME/node/ # run app with low permissions level user diff --git a/README.md b/README.md index c27255ba..89d0577e 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ ![remote_cache_1](https://user-images.githubusercontent.com/1620916/216358421-36a63b0e-d1f6-484f-a4ca-6a7119cc0816.jpg) -[![GitHub package.json version](https://img.shields.io/github/package-json/v/ducktors/turborepo-remote-cache)](https://github.com/ducktors/turborepo-remote-cache/releases) ![node:20.13.1](https://img.shields.io/badge/node-20.13.1-lightgreen) ![pnpm@9.14.2](https://img.shields.io/badge/pnpm-9.14.2-yellow) [![CI](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/ci.yml) [![Test](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/test.yaml/badge.svg)](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/test.yaml) [![Release](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/release.yml/badge.svg)](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/release.yml) [![Docker](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/docker.yml/badge.svg)](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/docker.yml) [![Maintainability](https://api.codeclimate.com/v1/badges/bbb26ca5247dee70dde0/maintainability)](https://codeclimate.com/github/ducktors/turborepo-remote-cache/maintainability) [![Coverage Status](https://coveralls.io/repos/github/ducktors/turborepo-remote-cache/badge.svg?branch=main)](https://coveralls.io/github/ducktors/turborepo-remote-cache?branch=main) [![Docker Pulls](https://img.shields.io/docker/pulls/ducktors/turborepo-remote-cache?logo=docker)](https://hub.docker.com/r/ducktors/turborepo-remote-cache) [![npm](https://img.shields.io/npm/dt/turborepo-remote-cache)](https://www.npmjs.com/package/turborepo-remote-cache) [![semantic-release: angular](https://img.shields.io/badge/semantic--release-angular-e10079?logo=semantic-release)](https://github.com/semantic-release/semantic-release) [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/ducktors/turborepo-remote-cache/badge)](https://securityscorecards.dev/viewer/?uri=github.com/ducktors/turborepo-remote-cache) +[![GitHub package.json version](https://img.shields.io/github/package-json/v/ducktors/turborepo-remote-cache)](https://github.com/ducktors/turborepo-remote-cache/releases) ![node:20.18.1](https://img.shields.io/badge/node-20.18.1-lightgreen) ![pnpm@9.14.2](https://img.shields.io/badge/pnpm-9.14.2-yellow) [![CI](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/ci.yml) [![Test](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/test.yaml/badge.svg)](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/test.yaml) [![Release](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/release.yml/badge.svg)](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/release.yml) [![Docker](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/docker.yml/badge.svg)](https://github.com/ducktors/turborepo-remote-cache/actions/workflows/docker.yml) [![Maintainability](https://api.codeclimate.com/v1/badges/bbb26ca5247dee70dde0/maintainability)](https://codeclimate.com/github/ducktors/turborepo-remote-cache/maintainability) [![Coverage Status](https://coveralls.io/repos/github/ducktors/turborepo-remote-cache/badge.svg?branch=main)](https://coveralls.io/github/ducktors/turborepo-remote-cache?branch=main) [![Docker Pulls](https://img.shields.io/docker/pulls/ducktors/turborepo-remote-cache?logo=docker)](https://hub.docker.com/r/ducktors/turborepo-remote-cache) [![npm](https://img.shields.io/npm/dt/turborepo-remote-cache)](https://www.npmjs.com/package/turborepo-remote-cache) [![semantic-release: angular](https://img.shields.io/badge/semantic--release-angular-e10079?logo=semantic-release)](https://github.com/semantic-release/semantic-release) [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/ducktors/turborepo-remote-cache/badge)](https://securityscorecards.dev/viewer/?uri=github.com/ducktors/turborepo-remote-cache) [![All Contributors](https://img.shields.io/badge/all_contributors-31-orange.svg?style=flat-square)](#contributors-) diff --git a/docs/custom-remote-caching.md b/docs/custom-remote-caching.md index 0cb92d1a..cf6dfd46 100644 --- a/docs/custom-remote-caching.md +++ b/docs/custom-remote-caching.md @@ -62,7 +62,7 @@ __Note: The token value must be the same as for your server's `TURBO_TOKEN` env ## Enable remote caching in Docker -To enable remote caching in Docker, you must pass `TURBO_TEAM` and `TURBO_TOKEN` inside Dockerfile as [build args](https://docs.docker.com/build/guide/build-args/) if you have *not* included them within `.turbo/config.json` or added them as parameters within `package.json` (see *Config file* above). +To enable remote caching in Docker, you must pass `TURBO_TEAM` inside Dockerfile as [build arg](https://docs.docker.com/build/guide/build-args/) and `TURBO_TOKEN` as [build secret](https://docs.docker.com/build/building/secrets/) if you have *not* included them within `.turbo/config.json` or added them as parameters within `package.json` (see *Config file* above). For example: @@ -77,13 +77,20 @@ COPY turbo.json ./ COPY .turbo/config.json ./.turbo/ RUN --mount=type=bind,source=.git,target=.git \ - pnpm turbo build + --mount=type=secret,id=TURBO_TOKEN \ + TURBO_TOKEN=$(cat /run/secrets/TURBO_TOKEN) pnpm turbo build ``` -and build your Remote Cache Server with this command: +and build your image leveraging Remote Cache Server with this command: ```sh -docker buildx build --progress=plain --platform linux/amd64,linux/arm64 -f Dockerfile . --build-arg TURBO_TEAM="ducktors" --build-arg TURBO_TOKEN="myGeneratedToken" --no-cache +# TURBO_TOKEN is an env variable preferably set from CI secrets +docker buildx build --progress=plain \ + --platform linux/amd64,linux/arm64 \ + -f Dockerfile . \ + --build-arg TURBO_TEAM="ducktors" \ + --secret id=TURBO_TOKEN,env=TURBO_TOKEN \ + --no-cache ``` ## Local environment variables diff --git a/fly.toml b/fly.toml deleted file mode 100644 index 11694dcd..00000000 --- a/fly.toml +++ /dev/null @@ -1,30 +0,0 @@ -# fly.toml app configuration file generated for turborepo-remote-cache on 2024-11-28T10:33:18+01:00 -# -# See https://fly.io/docs/reference/configuration/ for information about how to use this file. -# - -app = 'turborepo-remote-cache' -primary_region = 'ams' - -[build] - -[http_service] - internal_port = 3000 - force_https = true - auto_stop_machines = 'stop' - auto_start_machines = true - min_machines_running = 0 - processes = ['app'] - -[[vm]] - memory = '1gb' - cpu_kind = 'shared' - cpus = 1 - -[env] - NODE_ENV = "production" - PORT = "3000" - TURBO_TOKEN = "turbotoken-oss" - LOG_LEVEL = "info" - STORAGE_PATH = "local" - diff --git a/package.json b/package.json index 8a8283b4..a7516c34 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "turborepo-remote-cache", - "version": "2.2.7", + "version": "2.2.8", "description": "Turborepo remote cache server", "main": "./dist/app.js", "type": "module", @@ -64,19 +64,19 @@ }, "devDependencies": { "@biomejs/biome": "1.2.2", - "@commitlint/cli": "^19.3.0", - "@commitlint/config-conventional": "^19.2.2", - "@commitlint/prompt": "^19.3.1", + "@commitlint/cli": "^19.6.0", + "@commitlint/config-conventional": "^19.6.0", + "@commitlint/prompt": "^19.6.0", "@ducktors/tsconfig": "^1.0.0", "@semantic-release/changelog": "^6.0.3", "@semantic-release/commit-analyzer": "^13.0.0", "@semantic-release/git": "^10.0.1", - "@semantic-release/github": "^10.0.6", + "@semantic-release/github": "^10.3.5", "@semantic-release/npm": "^12.0.1", - "@semantic-release/release-notes-generator": "^14.0.0", + "@semantic-release/release-notes-generator": "^14.0.1", "@types/node": "^20.6.3", "c8": "^9.0.0", - "commitizen": "^4.3.0", + "commitizen": "^4.3.1", "commitlint-config-cz": "^0.13.3", "commitlint-plugin-function-rules": "^2.0.2", "cz-conventional-changelog": "^3.3.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 46a7d405..e4af2e71 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -61,14 +61,14 @@ importers: specifier: 1.2.2 version: 1.2.2 '@commitlint/cli': - specifier: ^19.3.0 - version: 19.3.0(@types/node@20.6.3)(typescript@5.2.2) + specifier: ^19.6.0 + version: 19.6.0(@types/node@20.6.3)(typescript@5.2.2) '@commitlint/config-conventional': - specifier: ^19.2.2 - version: 19.2.2 + specifier: ^19.6.0 + version: 19.6.0 '@commitlint/prompt': - specifier: ^19.3.1 - version: 19.3.1(@types/node@20.6.3)(typescript@5.2.2) + specifier: ^19.6.0 + version: 19.6.0(@types/node@20.6.3)(typescript@5.2.2) '@ducktors/tsconfig': specifier: ^1.0.0 version: 1.0.0(typescript@5.2.2) @@ -82,14 +82,14 @@ importers: specifier: ^10.0.1 version: 10.0.1(semantic-release@22.0.12) '@semantic-release/github': - specifier: ^10.0.6 - version: 10.0.6(semantic-release@22.0.12) + specifier: ^10.3.5 + version: 10.3.5(semantic-release@22.0.12) '@semantic-release/npm': specifier: ^12.0.1 version: 12.0.1(semantic-release@22.0.12) '@semantic-release/release-notes-generator': - specifier: ^14.0.0 - version: 14.0.0(semantic-release@22.0.12) + specifier: ^14.0.1 + version: 14.0.1(semantic-release@22.0.12) '@types/node': specifier: ^20.6.3 version: 20.6.3 @@ -97,14 +97,14 @@ importers: specifier: ^9.0.0 version: 9.0.0 commitizen: - specifier: ^4.3.0 - version: 4.3.0 + specifier: ^4.3.1 + version: 4.3.1 commitlint-config-cz: specifier: ^0.13.3 version: 0.13.3 commitlint-plugin-function-rules: specifier: ^2.0.2 - version: 2.0.2(@commitlint/lint@19.2.2) + version: 2.0.2(@commitlint/lint@19.6.0) cz-conventional-changelog: specifier: ^3.3.0 version: 3.3.0 @@ -259,97 +259,97 @@ packages: resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} - '@commitlint/cli@19.3.0': - resolution: {integrity: sha512-LgYWOwuDR7BSTQ9OLZ12m7F/qhNY+NpAyPBgo4YNMkACE7lGuUnuQq1yi9hz1KA4+3VqpOYl8H1rY/LYK43v7g==} + '@commitlint/cli@19.6.0': + resolution: {integrity: sha512-v17BgGD9w5KnthaKxXnEg6KLq6DYiAxyiN44TpiRtqyW8NSq+Kx99mkEG8Qo6uu6cI5eMzMojW2muJxjmPnF8w==} engines: {node: '>=v18'} hasBin: true - '@commitlint/config-conventional@19.2.2': - resolution: {integrity: sha512-mLXjsxUVLYEGgzbxbxicGPggDuyWNkf25Ht23owXIH+zV2pv1eJuzLK3t1gDY5Gp6pxdE60jZnWUY5cvgL3ufw==} + '@commitlint/config-conventional@19.6.0': + resolution: {integrity: sha512-DJT40iMnTYtBtUfw9ApbsLZFke1zKh6llITVJ+x9mtpHD08gsNXaIRqHTmwTZL3dNX5+WoyK7pCN/5zswvkBCQ==} engines: {node: '>=v18'} '@commitlint/config-validator@17.6.7': resolution: {integrity: sha512-vJSncmnzwMvpr3lIcm0I8YVVDJTzyjy7NZAeXbTXy+MPUdAr9pKyyg7Tx/ebOQ9kqzE6O9WT6jg2164br5UdsQ==} engines: {node: '>=v14'} - '@commitlint/config-validator@19.0.3': - resolution: {integrity: sha512-2D3r4PKjoo59zBc2auodrSCaUnCSALCx54yveOFwwP/i2kfEAQrygwOleFWswLqK0UL/F9r07MFi5ev2ohyM4Q==} + '@commitlint/config-validator@19.5.0': + resolution: {integrity: sha512-CHtj92H5rdhKt17RmgALhfQt95VayrUo2tSqY9g2w+laAXyk7K/Ef6uPm9tn5qSIwSmrLjKaXK9eiNuxmQrDBw==} engines: {node: '>=v18'} - '@commitlint/ensure@19.0.3': - resolution: {integrity: sha512-SZEpa/VvBLoT+EFZVb91YWbmaZ/9rPH3ESrINOl0HD2kMYsjvl0tF7nMHh0EpTcv4+gTtZBAe1y/SS6/OhfZzQ==} + '@commitlint/ensure@19.5.0': + resolution: {integrity: sha512-Kv0pYZeMrdg48bHFEU5KKcccRfKmISSm9MvgIgkpI6m+ohFTB55qZlBW6eYqh/XDfRuIO0x4zSmvBjmOwWTwkg==} engines: {node: '>=v18'} '@commitlint/execute-rule@17.4.0': resolution: {integrity: sha512-LIgYXuCSO5Gvtc0t9bebAMSwd68ewzmqLypqI2Kke1rqOqqDbMpYcYfoPfFlv9eyLIh4jocHWwCK5FS7z9icUA==} engines: {node: '>=v14'} - '@commitlint/execute-rule@19.0.0': - resolution: {integrity: sha512-mtsdpY1qyWgAO/iOK0L6gSGeR7GFcdW7tIjcNFxcWkfLDF5qVbPHKuGATFqRMsxcO8OUKNj0+3WOHB7EHm4Jdw==} + '@commitlint/execute-rule@19.5.0': + resolution: {integrity: sha512-aqyGgytXhl2ejlk+/rfgtwpPexYyri4t8/n4ku6rRJoRhGZpLFMqrZ+YaubeGysCP6oz4mMA34YSTaSOKEeNrg==} engines: {node: '>=v18'} - '@commitlint/format@19.3.0': - resolution: {integrity: sha512-luguk5/aF68HiF4H23ACAfk8qS8AHxl4LLN5oxPc24H+2+JRPsNr1OS3Gaea0CrH7PKhArBMKBz5RX9sA5NtTg==} + '@commitlint/format@19.5.0': + resolution: {integrity: sha512-yNy088miE52stCI3dhG/vvxFo9e4jFkU1Mj3xECfzp/bIS/JUay4491huAlVcffOoMK1cd296q0W92NlER6r3A==} engines: {node: '>=v18'} - '@commitlint/is-ignored@19.2.2': - resolution: {integrity: sha512-eNX54oXMVxncORywF4ZPFtJoBm3Tvp111tg1xf4zWXGfhBPKpfKG6R+G3G4v5CPlRROXpAOpQ3HMhA9n1Tck1g==} + '@commitlint/is-ignored@19.6.0': + resolution: {integrity: sha512-Ov6iBgxJQFR9koOupDPHvcHU9keFupDgtB3lObdEZDroiG4jj1rzky60fbQozFKVYRTUdrBGICHG0YVmRuAJmw==} engines: {node: '>=v18'} - '@commitlint/lint@19.2.2': - resolution: {integrity: sha512-xrzMmz4JqwGyKQKTpFzlN0dx0TAiT7Ran1fqEBgEmEj+PU98crOFtysJgY+QdeSagx6EDRigQIXJVnfrI0ratA==} + '@commitlint/lint@19.6.0': + resolution: {integrity: sha512-LRo7zDkXtcIrpco9RnfhOKeg8PAnE3oDDoalnrVU/EVaKHYBWYL1DlRR7+3AWn0JiBqD8yKOfetVxJGdEtZ0tg==} engines: {node: '>=v18'} '@commitlint/load@17.7.1': resolution: {integrity: sha512-S/QSOjE1ztdogYj61p6n3UbkUvweR17FQ0zDbNtoTLc+Hz7vvfS7ehoTMQ27hPSjVBpp7SzEcOQu081RLjKHJQ==} engines: {node: '>=v14'} - '@commitlint/load@19.2.0': - resolution: {integrity: sha512-XvxxLJTKqZojCxaBQ7u92qQLFMMZc4+p9qrIq/9kJDy8DOrEa7P1yx7Tjdc2u2JxIalqT4KOGraVgCE7eCYJyQ==} + '@commitlint/load@19.5.0': + resolution: {integrity: sha512-INOUhkL/qaKqwcTUvCE8iIUf5XHsEPCLY9looJ/ipzi7jtGhgmtH7OOFiNvwYgH7mA8osUWOUDV8t4E2HAi4xA==} engines: {node: '>=v18'} - '@commitlint/message@19.0.0': - resolution: {integrity: sha512-c9czf6lU+9oF9gVVa2lmKaOARJvt4soRsVmbR7Njwp9FpbBgste5i7l/2l5o8MmbwGh4yE1snfnsy2qyA2r/Fw==} + '@commitlint/message@19.5.0': + resolution: {integrity: sha512-R7AM4YnbxN1Joj1tMfCyBryOC5aNJBdxadTZkuqtWi3Xj0kMdutq16XQwuoGbIzL2Pk62TALV1fZDCv36+JhTQ==} engines: {node: '>=v18'} - '@commitlint/parse@19.0.3': - resolution: {integrity: sha512-Il+tNyOb8VDxN3P6XoBBwWJtKKGzHlitEuXA5BP6ir/3loWlsSqDr5aecl6hZcC/spjq4pHqNh0qPlfeWu38QA==} + '@commitlint/parse@19.5.0': + resolution: {integrity: sha512-cZ/IxfAlfWYhAQV0TwcbdR1Oc0/r0Ik1GEessDJ3Lbuma/MRO8FRQX76eurcXtmhJC//rj52ZSZuXUg0oIX0Fw==} engines: {node: '>=v18'} - '@commitlint/prompt@19.3.1': - resolution: {integrity: sha512-HmKyDgDag2xA/4jNLxP1rVJ4ePbGs1ZVrBl2hEeF55RvfnIRIcAklVytOD7ETphlWna8n88HlWupr82OUYvekg==} + '@commitlint/prompt@19.6.0': + resolution: {integrity: sha512-hkFRhbsfEJ4LxQhXu8hJjNc8tgLufP8pH+cxI6WSywJrOJ39ySHsRUx3qJToNax1B1KgJWSpSKQI1KlbE17KXw==} engines: {node: '>=v18'} - '@commitlint/read@19.2.1': - resolution: {integrity: sha512-qETc4+PL0EUv7Q36lJbPG+NJiBOGg7SSC7B5BsPWOmei+Dyif80ErfWQ0qXoW9oCh7GTpTNRoaVhiI8RbhuaNw==} + '@commitlint/read@19.5.0': + resolution: {integrity: sha512-TjS3HLPsLsxFPQj6jou8/CZFAmOP2y+6V4PGYt3ihbQKTY1Jnv0QG28WRKl/d1ha6zLODPZqsxLEov52dhR9BQ==} engines: {node: '>=v18'} '@commitlint/resolve-extends@17.6.7': resolution: {integrity: sha512-PfeoAwLHtbOaC9bGn/FADN156CqkFz6ZKiVDMjuC2N5N0740Ke56rKU7Wxdwya8R8xzLK9vZzHgNbuGhaOVKIg==} engines: {node: '>=v14'} - '@commitlint/resolve-extends@19.1.0': - resolution: {integrity: sha512-z2riI+8G3CET5CPgXJPlzftH+RiWYLMYv4C9tSLdLXdr6pBNimSKukYP9MS27ejmscqCTVA4almdLh0ODD2KYg==} + '@commitlint/resolve-extends@19.5.0': + resolution: {integrity: sha512-CU/GscZhCUsJwcKTJS9Ndh3AKGZTNFIOoQB2n8CmFnizE0VnEuJoum+COW+C1lNABEeqk6ssfc1Kkalm4bDklA==} engines: {node: '>=v18'} - '@commitlint/rules@19.0.3': - resolution: {integrity: sha512-TspKb9VB6svklxNCKKwxhELn7qhtY1rFF8ls58DcFd0F97XoG07xugPjjbVnLqmMkRjZDbDIwBKt9bddOfLaPw==} + '@commitlint/rules@19.6.0': + resolution: {integrity: sha512-1f2reW7lbrI0X0ozZMesS/WZxgPa4/wi56vFuJENBmed6mWq5KsheN/nxqnl/C23ioxpPO/PL6tXpiiFy5Bhjw==} engines: {node: '>=v18'} - '@commitlint/to-lines@19.0.0': - resolution: {integrity: sha512-vkxWo+VQU5wFhiP9Ub9Sre0FYe019JxFikrALVoD5UGa8/t3yOJEpEhxC5xKiENKKhUkTpEItMTRAjHw2SCpZw==} + '@commitlint/to-lines@19.5.0': + resolution: {integrity: sha512-R772oj3NHPkodOSRZ9bBVNq224DOxQtNef5Pl8l2M8ZnkkzQfeSTr4uxawV2Sd3ui05dUVzvLNnzenDBO1KBeQ==} engines: {node: '>=v18'} - '@commitlint/top-level@19.0.0': - resolution: {integrity: sha512-KKjShd6u1aMGNkCkaX4aG1jOGdn7f8ZI8TR1VEuNqUOjWTOdcDSsmglinglJ18JTjuBX5I1PtjrhQCRcixRVFQ==} + '@commitlint/top-level@19.5.0': + resolution: {integrity: sha512-IP1YLmGAk0yWrImPRRc578I3dDUI5A2UBJx9FbSOjxe9sTlzFiwVJ+zeMLgAtHMtGZsC8LUnzmW1qRemkFU4ng==} engines: {node: '>=v18'} '@commitlint/types@17.4.4': resolution: {integrity: sha512-amRN8tRLYOsxRr6mTnGGGvB5EmW/4DDjLMgiwK3CCVEmN6Sr/6xePGEpWaspKkckILuUORCwe6VfDBw6uj4axQ==} engines: {node: '>=v14'} - '@commitlint/types@19.0.3': - resolution: {integrity: sha512-tpyc+7i6bPG9mvaBbtKUeghfyZSDgWquIDfMgqYtTbmZ9Y9VzEm2je9EYcQ0aoz5o7NvGS+rcDec93yO08MHYA==} + '@commitlint/types@19.5.0': + resolution: {integrity: sha512-DSHae2obMSMkAtTBSOulg5X7/z+rGLxcXQIkg3OmWvY6wifojge5uVMydfhUvs7yQj+V7jNmRZ2Xzl8GJyqRgg==} engines: {node: '>=v18'} '@cspotcode/source-map-support@0.8.1': @@ -616,6 +616,9 @@ packages: '@octokit/openapi-types@18.0.0': resolution: {integrity: sha512-V8GImKs3TeQRxRtXFpG2wl19V7444NIOTDF24AWuIbmNaNYOQMWRbjcGDXV5B+0n887fgDcuMNOmlul+k+oJtw==} + '@octokit/openapi-types@20.0.0': + resolution: {integrity: sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==} + '@octokit/openapi-types@22.2.0': resolution: {integrity: sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==} @@ -625,11 +628,11 @@ packages: peerDependencies: '@octokit/core': '>=6' - '@octokit/plugin-paginate-rest@8.0.0': - resolution: {integrity: sha512-2xZ+baZWUg+qudVXnnvXz7qfrTmDeYPCzangBVq/1gXxii/OiS//4shJp9dnCCvj1x+JAm9ji1Egwm1BA47lPQ==} + '@octokit/plugin-paginate-rest@9.2.1': + resolution: {integrity: sha512-wfGhE/TAkXZRLjksFXuDZdmGnJQHvtU/joFQdweXUgzo1XwvBCD4o4+75NtFfjfLK5IwLf9vHTfSiU3sLRYpRw==} engines: {node: '>= 18'} peerDependencies: - '@octokit/core': '>=5' + '@octokit/core': '5' '@octokit/plugin-retry@6.0.0': resolution: {integrity: sha512-a1/A4A+PB1QoAHQfLJxGHhLfSAT03bR1jJz3GgQJZvty2ozawFWs93MiBQXO7SL2YbO7CIq0Goj4qLOBj8JeMQ==} @@ -643,8 +646,8 @@ packages: peerDependencies: '@octokit/core': '>=6' - '@octokit/plugin-throttling@7.0.0': - resolution: {integrity: sha512-KL2k/d0uANc8XqP5S64YcNFCudR3F5AaKO39XWdUtlJIjT9Ni79ekWJ6Kj5xvAw87udkOMEPcVf9xEge2+ahew==} + '@octokit/plugin-throttling@8.2.0': + resolution: {integrity: sha512-nOpWtLayKFpgqmgD0y3GqXafMFuKcA4tRPZIfu7BArd2lEZeb1988nhWhwx4aZWmjDmUfdgVf7W+Tt4AmvRmMQ==} engines: {node: '>= 18'} peerDependencies: '@octokit/core': ^5.0.0 @@ -674,6 +677,9 @@ packages: '@octokit/types@11.1.0': resolution: {integrity: sha512-Fz0+7GyLm/bHt8fwEqgvRBWwIV1S6wRRyq+V6exRKLVWaKGsuy6H9QFYeBVDV7rK6fO3XwHgQOPxv+cLj2zpXQ==} + '@octokit/types@12.6.0': + resolution: {integrity: sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==} + '@octokit/types@13.5.0': resolution: {integrity: sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ==} @@ -720,14 +726,14 @@ packages: peerDependencies: semantic-release: '>=18.0.0' - '@semantic-release/github@10.0.6': - resolution: {integrity: sha512-sS4psqZacGTFEN49UQGqwFNG6Jyx2/RX1BhhDGn/2WoPbhAHislohOY05/5r+JoL4gJMWycfH7tEm1eGVutYeg==} + '@semantic-release/github@10.3.5': + resolution: {integrity: sha512-svvRglGmvqvxjmDgkXhrjf0lC88oZowFhOfifTldbgX9Dzj0inEtMLaC+3/MkDEmxmaQjWmF5Q/0CMIvPNSVdQ==} engines: {node: '>=20.8.1'} peerDependencies: semantic-release: '>=20.1.0' - '@semantic-release/github@9.0.6': - resolution: {integrity: sha512-GBGt9c3c2UdSvso4jcyQQSUpZA9hbfHqGQerZKN9WvVzCIkaBy8xkhOyiFVX08LjRHHT/H221SJNBLtuihX5iw==} + '@semantic-release/github@9.2.6': + resolution: {integrity: sha512-shi+Lrf6exeNZF+sBhK+P011LSbhmIAoUEgEY6SsxF8irJ+J2stwI5jkyDQ+4gzYyDImzV6LCKdYB9FXnQRWKA==} engines: {node: '>=18'} peerDependencies: semantic-release: '>=20.1.0' @@ -744,14 +750,14 @@ packages: peerDependencies: semantic-release: '>=20.1.0' - '@semantic-release/release-notes-generator@12.0.0': - resolution: {integrity: sha512-m7Ds8ComP1KJgA2Lke2xMwE1TOOU40U7AzP4lT8hJ2tUAeicziPz/1GeDFmRkTOkMFlfHvE6kuvMkvU+mIzIDQ==} + '@semantic-release/release-notes-generator@12.1.0': + resolution: {integrity: sha512-g6M9AjUKAZUZnxaJZnouNBeDNTCUrJ5Ltj+VJ60gJeDaRRahcHsry9HW8yKrnKkKNkx5lbWiEP1FPMqVNQz8Kg==} engines: {node: ^18.17 || >=20.6.1} peerDependencies: semantic-release: '>=20.1.0' - '@semantic-release/release-notes-generator@14.0.0': - resolution: {integrity: sha512-XRxwr4e46yUMaXT8KGFBlRJlp5+NOMaufdq8qaEWlcJ7cT4Pn/iRmDGglZ2TgDe6GVP+u1boXFEnSs7N8Yzhng==} + '@semantic-release/release-notes-generator@14.0.1': + resolution: {integrity: sha512-K0w+5220TM4HZTthE5dDpIuFrnkN1NfTGPidJFm04ULT1DEZ9WG89VNXN7F0c+6nMEpWgqmPvb7vY7JkB2jyyA==} engines: {node: '>=20.8.1'} peerDependencies: semantic-release: '>=20.1.0' @@ -787,8 +793,8 @@ packages: '@tsconfig/node16@1.0.3': resolution: {integrity: sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==} - '@types/conventional-commits-parser@5.0.0': - resolution: {integrity: sha512-loB369iXNmAZglwWATL+WRe+CRMmmBPtpolYzIebFaX4YA3x+BEfLqhUAV9WanycKI3TG1IMr5bMJDajDKLlUQ==} + '@types/conventional-commits-parser@5.0.1': + resolution: {integrity: sha512-7uz5EHdzz2TqoMfV7ee61Egf5y6NkcO4FB/1iCCQnbeiI1F3xzv3vK5dBCXUCLQgGYS+mUeigK1iKQzvED+QnQ==} '@types/istanbul-lib-coverage@2.0.4': resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==} @@ -847,10 +853,6 @@ packages: resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} engines: {node: '>=8'} - aggregate-error@4.0.1: - resolution: {integrity: sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==} - engines: {node: '>=12'} - aggregate-error@5.0.0: resolution: {integrity: sha512-gOsf2YwSlleG6IjRYG2A7k0HmBMEo6qVNk9Bp/EaLgAJT5ngH6PXbqa4ItvnEwCm/velL5jAnQgsHsWnjhGmvw==} engines: {node: '>=18'} @@ -1036,10 +1038,6 @@ packages: resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} engines: {node: '>=6'} - clean-stack@4.2.0: - resolution: {integrity: sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==} - engines: {node: '>=12'} - clean-stack@5.2.0: resolution: {integrity: sha512-TyUIUJgdFnCISzG5zu3291TAsE77ddchd0bepon1VVQrKLGKFED4iXFEDQ24mIPdPBbyE16PK3F8MYE1CmcBEQ==} engines: {node: '>=14.16'} @@ -1112,8 +1110,8 @@ packages: resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==} engines: {node: '>= 6'} - commitizen@4.3.0: - resolution: {integrity: sha512-H0iNtClNEhT0fotHvGV3E9tDejDeS04sN1veIebsKYGMuGscFaswRoYJKmT3eW85eIJAs0F28bG2+a/9wCOfPw==} + commitizen@4.3.1: + resolution: {integrity: sha512-gwAPAVTy/j5YcOOebcCRIijn+mSjWJC+IYKivTu6aG8Ei/scoXgfsMRnuAk6b0GRste2J4NGxVdMN3ZpfNaVaw==} engines: {node: '>= 12'} hasBin: true @@ -1213,8 +1211,8 @@ packages: ts-node: '>=10' typescript: '>=4' - cosmiconfig-typescript-loader@5.0.0: - resolution: {integrity: sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA==} + cosmiconfig-typescript-loader@5.1.0: + resolution: {integrity: sha512-7PtBB+6FdsOvZyJtlF3hEPpACq7RQX6BVGsgC7/lfVXnKMvNCu/XY3ykreqG5w/rBNdu2z8LCIKoF3kpHHdHlA==} engines: {node: '>=v16'} peerDependencies: '@types/node': '*' @@ -1482,10 +1480,6 @@ packages: fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - fast-glob@3.3.1: - resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} - engines: {node: '>=8.6.0'} - fast-glob@3.3.2: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} @@ -1577,10 +1571,6 @@ packages: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} - find-up@6.3.0: - resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - find-up@7.0.0: resolution: {integrity: sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==} engines: {node: '>=18'} @@ -1736,14 +1726,14 @@ packages: resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} engines: {node: '>= 0.4'} - globby@13.2.2: - resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - globby@14.0.1: resolution: {integrity: sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==} engines: {node: '>=18'} + globby@14.0.2: + resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==} + engines: {node: '>=18'} + google-auth-library@8.7.0: resolution: {integrity: sha512-1M0NG5VDIvJZEnstHbRdckLZESoJwguinwN8Dhae0j2ZKIQFIV63zxm6Fo6nM4xkgqUr2bbMtV5Dgo+Hy6oo0Q==} engines: {node: '>=12'} @@ -1895,6 +1885,10 @@ packages: resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} engines: {node: '>= 4'} + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} @@ -2114,8 +2108,8 @@ packages: resolution: {integrity: sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==} engines: {node: '>= 0.6.0'} - jiti@1.21.3: - resolution: {integrity: sha512-uy2bNX5zQ+tESe+TiC7ilGRz8AtRGmnJH55NC5S0nSUjvvvM2hJHmefHErugGXN4pNv4Qx7vLsnNw9qJ9mtIsw==} + jiti@1.21.6: + resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} hasBin: true jmespath@0.16.0: @@ -2363,6 +2357,11 @@ packages: engines: {node: '>=16'} hasBin: true + mime@4.0.4: + resolution: {integrity: sha512-v8yqInVjhXyqP6+Kw4fV3ZzeMRqEW6FotRsKXjRS5VMTNIuXsdRoAvklpoRgSqXm6o9VNH4/C0mgedko9DdLsQ==} + engines: {node: '>=16'} + hasBin: true + mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} @@ -2657,10 +2656,6 @@ packages: resolution: {integrity: sha512-lastgtAdoH9YaLyDa5i5z64q+kzOcQHsQ5SsZJD3q0VEyI8mq872S3geuNbRUQLVAE9siMfgKrpj7MloKFHruw==} engines: {node: '>=12'} - p-filter@3.0.0: - resolution: {integrity: sha512-QtoWLjXAW++uTX67HZQz1dbTpqBfiidsB6VtQUC9iR85S120+s0T5sO6s+B5MLzFcZkrEd/DGMmCjR+f2Qpxwg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - p-filter@4.1.0: resolution: {integrity: sha512-37/tPdZ3oJwHaS3gNJdenCDB3Tz26i9sjhnguBtvN0vYlRIiDNnvTWkuh+0hETV9rLPdJ3rlL3yVOYPIAnM8rw==} engines: {node: '>=18'} @@ -2693,10 +2688,6 @@ packages: resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - p-map@5.5.0: - resolution: {integrity: sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==} - engines: {node: '>=12'} - p-map@7.0.2: resolution: {integrity: sha512-z4cYYMMdKHzw4O5UkWJImbZynVIo0lSGTXc7bzB1e/rrDqkgGUNysK/o4bTr+0+xKvvLoTyGqYC4Fgljy9qe1Q==} engines: {node: '>=18'} @@ -2871,9 +2862,9 @@ packages: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true - read-pkg-up@10.1.0: - resolution: {integrity: sha512-aNtBq4jR8NawpKJQldrQcSW9y/d+KWH4v24HWkHljOZ7H0av+YTGANBzRh9A5pw7v/bLVsLVPpOhJ7gHNVy8lA==} - engines: {node: '>=16'} + read-package-up@11.0.0: + resolution: {integrity: sha512-MbgfoNPANMdb4oRBNg5eqLbB2t2r+o5Ua1pNt8BqGp4I0FJZhuVSOj3PaBPni4azWuSzEdNn2evevzVmEk1ohQ==} + engines: {node: '>=18'} read-pkg-up@11.0.0: resolution: {integrity: sha512-LOVbvF1Q0SZdjClSefZ0Nz5z8u+tIE7mV5NibzmE9VYmDe9CaBbAVtz1veOSZbofrdsilxuDAYnFenukZVp8/Q==} @@ -3057,6 +3048,11 @@ packages: engines: {node: '>=10'} hasBin: true + semver@7.6.3: + resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} + engines: {node: '>=10'} + hasBin: true + set-cookie-parser@2.6.0: resolution: {integrity: sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==} @@ -3107,10 +3103,6 @@ packages: resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==} engines: {node: '>=8'} - slash@4.0.0: - resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} - engines: {node: '>=12'} - slash@5.1.0: resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} engines: {node: '>=14.16'} @@ -3274,6 +3266,9 @@ packages: through@2.3.8: resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} + tinyexec@0.3.1: + resolution: {integrity: sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==} + tmp@0.0.33: resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} engines: {node: '>=0.6.0'} @@ -3348,8 +3343,8 @@ packages: resolution: {integrity: sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==} engines: {node: '>=16'} - type-fest@4.3.1: - resolution: {integrity: sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==} + type-fest@4.29.0: + resolution: {integrity: sha512-RPYt6dKyemXJe7I6oNstcH24myUGSReicxcHTvCLgzm4e0n8y05dGvcGB15/SoPRBmhlMthWQ9pvKyL81ko8nQ==} engines: {node: '>=16'} type-is@1.6.18: @@ -3532,8 +3527,8 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} - yocto-queue@1.0.0: - resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} + yocto-queue@1.1.1: + resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} engines: {node: '>=12.20'} yoctocolors@2.0.2: @@ -3692,22 +3687,22 @@ snapshots: '@colors/colors@1.5.0': {} - '@commitlint/cli@19.3.0(@types/node@20.6.3)(typescript@5.2.2)': + '@commitlint/cli@19.6.0(@types/node@20.6.3)(typescript@5.2.2)': dependencies: - '@commitlint/format': 19.3.0 - '@commitlint/lint': 19.2.2 - '@commitlint/load': 19.2.0(@types/node@20.6.3)(typescript@5.2.2) - '@commitlint/read': 19.2.1 - '@commitlint/types': 19.0.3 - execa: 8.0.1 + '@commitlint/format': 19.5.0 + '@commitlint/lint': 19.6.0 + '@commitlint/load': 19.5.0(@types/node@20.6.3)(typescript@5.2.2) + '@commitlint/read': 19.5.0 + '@commitlint/types': 19.5.0 + tinyexec: 0.3.1 yargs: 17.7.2 transitivePeerDependencies: - '@types/node' - typescript - '@commitlint/config-conventional@19.2.2': + '@commitlint/config-conventional@19.6.0': dependencies: - '@commitlint/types': 19.0.3 + '@commitlint/types': 19.5.0 conventional-changelog-conventionalcommits: 7.0.2 '@commitlint/config-validator@17.6.7': @@ -3716,14 +3711,14 @@ snapshots: ajv: 8.12.0 optional: true - '@commitlint/config-validator@19.0.3': + '@commitlint/config-validator@19.5.0': dependencies: - '@commitlint/types': 19.0.3 + '@commitlint/types': 19.5.0 ajv: 8.12.0 - '@commitlint/ensure@19.0.3': + '@commitlint/ensure@19.5.0': dependencies: - '@commitlint/types': 19.0.3 + '@commitlint/types': 19.5.0 lodash.camelcase: 4.3.0 lodash.kebabcase: 4.1.1 lodash.snakecase: 4.1.1 @@ -3733,24 +3728,24 @@ snapshots: '@commitlint/execute-rule@17.4.0': optional: true - '@commitlint/execute-rule@19.0.0': {} + '@commitlint/execute-rule@19.5.0': {} - '@commitlint/format@19.3.0': + '@commitlint/format@19.5.0': dependencies: - '@commitlint/types': 19.0.3 + '@commitlint/types': 19.5.0 chalk: 5.3.0 - '@commitlint/is-ignored@19.2.2': + '@commitlint/is-ignored@19.6.0': dependencies: - '@commitlint/types': 19.0.3 - semver: 7.6.2 + '@commitlint/types': 19.5.0 + semver: 7.6.3 - '@commitlint/lint@19.2.2': + '@commitlint/lint@19.6.0': dependencies: - '@commitlint/is-ignored': 19.2.2 - '@commitlint/parse': 19.0.3 - '@commitlint/rules': 19.0.3 - '@commitlint/types': 19.0.3 + '@commitlint/is-ignored': 19.6.0 + '@commitlint/parse': 19.5.0 + '@commitlint/rules': 19.6.0 + '@commitlint/types': 19.5.0 '@commitlint/load@17.7.1': dependencies: @@ -3773,15 +3768,15 @@ snapshots: - '@swc/wasm' optional: true - '@commitlint/load@19.2.0(@types/node@20.6.3)(typescript@5.2.2)': + '@commitlint/load@19.5.0(@types/node@20.6.3)(typescript@5.2.2)': dependencies: - '@commitlint/config-validator': 19.0.3 - '@commitlint/execute-rule': 19.0.0 - '@commitlint/resolve-extends': 19.1.0 - '@commitlint/types': 19.0.3 + '@commitlint/config-validator': 19.5.0 + '@commitlint/execute-rule': 19.5.0 + '@commitlint/resolve-extends': 19.5.0 + '@commitlint/types': 19.5.0 chalk: 5.3.0 cosmiconfig: 9.0.0(typescript@5.2.2) - cosmiconfig-typescript-loader: 5.0.0(@types/node@20.6.3)(cosmiconfig@9.0.0(typescript@5.2.2))(typescript@5.2.2) + cosmiconfig-typescript-loader: 5.1.0(@types/node@20.6.3)(cosmiconfig@9.0.0(typescript@5.2.2))(typescript@5.2.2) lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 lodash.uniq: 4.5.0 @@ -3789,32 +3784,32 @@ snapshots: - '@types/node' - typescript - '@commitlint/message@19.0.0': {} + '@commitlint/message@19.5.0': {} - '@commitlint/parse@19.0.3': + '@commitlint/parse@19.5.0': dependencies: - '@commitlint/types': 19.0.3 + '@commitlint/types': 19.5.0 conventional-changelog-angular: 7.0.0 conventional-commits-parser: 5.0.0 - '@commitlint/prompt@19.3.1(@types/node@20.6.3)(typescript@5.2.2)': + '@commitlint/prompt@19.6.0(@types/node@20.6.3)(typescript@5.2.2)': dependencies: - '@commitlint/ensure': 19.0.3 - '@commitlint/load': 19.2.0(@types/node@20.6.3)(typescript@5.2.2) - '@commitlint/types': 19.0.3 + '@commitlint/ensure': 19.5.0 + '@commitlint/load': 19.5.0(@types/node@20.6.3)(typescript@5.2.2) + '@commitlint/types': 19.5.0 chalk: 5.3.0 inquirer: 9.2.23 transitivePeerDependencies: - '@types/node' - typescript - '@commitlint/read@19.2.1': + '@commitlint/read@19.5.0': dependencies: - '@commitlint/top-level': 19.0.0 - '@commitlint/types': 19.0.3 - execa: 8.0.1 + '@commitlint/top-level': 19.5.0 + '@commitlint/types': 19.5.0 git-raw-commits: 4.0.0 minimist: 1.2.8 + tinyexec: 0.3.1 '@commitlint/resolve-extends@17.6.7': dependencies: @@ -3826,26 +3821,25 @@ snapshots: resolve-global: 1.0.0 optional: true - '@commitlint/resolve-extends@19.1.0': + '@commitlint/resolve-extends@19.5.0': dependencies: - '@commitlint/config-validator': 19.0.3 - '@commitlint/types': 19.0.3 + '@commitlint/config-validator': 19.5.0 + '@commitlint/types': 19.5.0 global-directory: 4.0.1 import-meta-resolve: 4.1.0 lodash.mergewith: 4.6.2 resolve-from: 5.0.0 - '@commitlint/rules@19.0.3': + '@commitlint/rules@19.6.0': dependencies: - '@commitlint/ensure': 19.0.3 - '@commitlint/message': 19.0.0 - '@commitlint/to-lines': 19.0.0 - '@commitlint/types': 19.0.3 - execa: 8.0.1 + '@commitlint/ensure': 19.5.0 + '@commitlint/message': 19.5.0 + '@commitlint/to-lines': 19.5.0 + '@commitlint/types': 19.5.0 - '@commitlint/to-lines@19.0.0': {} + '@commitlint/to-lines@19.5.0': {} - '@commitlint/top-level@19.0.0': + '@commitlint/top-level@19.5.0': dependencies: find-up: 7.0.0 @@ -3854,9 +3848,9 @@ snapshots: chalk: 4.1.2 optional: true - '@commitlint/types@19.0.3': + '@commitlint/types@19.5.0': dependencies: - '@types/conventional-commits-parser': 5.0.0 + '@types/conventional-commits-parser': 5.0.1 chalk: 5.3.0 '@cspotcode/source-map-support@0.8.1': @@ -4094,6 +4088,8 @@ snapshots: '@octokit/openapi-types@18.0.0': {} + '@octokit/openapi-types@20.0.0': {} + '@octokit/openapi-types@22.2.0': {} '@octokit/plugin-paginate-rest@11.3.0(@octokit/core@6.1.2)': @@ -4101,10 +4097,10 @@ snapshots: '@octokit/core': 6.1.2 '@octokit/types': 13.5.0 - '@octokit/plugin-paginate-rest@8.0.0(@octokit/core@5.0.0)': + '@octokit/plugin-paginate-rest@9.2.1(@octokit/core@5.0.0)': dependencies: '@octokit/core': 5.0.0 - '@octokit/types': 11.1.0 + '@octokit/types': 12.6.0 '@octokit/plugin-retry@6.0.0(@octokit/core@5.0.0)': dependencies: @@ -4120,10 +4116,10 @@ snapshots: '@octokit/types': 13.5.0 bottleneck: 2.19.5 - '@octokit/plugin-throttling@7.0.0(@octokit/core@5.0.0)': + '@octokit/plugin-throttling@8.2.0(@octokit/core@5.0.0)': dependencies: '@octokit/core': 5.0.0 - '@octokit/types': 11.1.0 + '@octokit/types': 12.6.0 bottleneck: 2.19.5 '@octokit/plugin-throttling@9.3.0(@octokit/core@6.1.2)': @@ -4161,6 +4157,10 @@ snapshots: dependencies: '@octokit/openapi-types': 18.0.0 + '@octokit/types@12.6.0': + dependencies: + '@octokit/openapi-types': 20.0.0 + '@octokit/types@13.5.0': dependencies: '@octokit/openapi-types': 22.2.0 @@ -4229,7 +4229,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@semantic-release/github@10.0.6(semantic-release@22.0.12)': + '@semantic-release/github@10.3.5(semantic-release@22.0.12)': dependencies: '@octokit/core': 6.1.2 '@octokit/plugin-paginate-rest': 11.3.0(@octokit/core@6.1.2) @@ -4251,23 +4251,23 @@ snapshots: transitivePeerDependencies: - supports-color - '@semantic-release/github@9.0.6(semantic-release@22.0.12)': + '@semantic-release/github@9.2.6(semantic-release@22.0.12)': dependencies: '@octokit/core': 5.0.0 - '@octokit/plugin-paginate-rest': 8.0.0(@octokit/core@5.0.0) + '@octokit/plugin-paginate-rest': 9.2.1(@octokit/core@5.0.0) '@octokit/plugin-retry': 6.0.0(@octokit/core@5.0.0) - '@octokit/plugin-throttling': 7.0.0(@octokit/core@5.0.0) + '@octokit/plugin-throttling': 8.2.0(@octokit/core@5.0.0) '@semantic-release/error': 4.0.0 aggregate-error: 5.0.0 debug: 4.3.4 dir-glob: 3.0.1 - globby: 13.2.2 + globby: 14.0.2 http-proxy-agent: 7.0.0 https-proxy-agent: 7.0.1 issue-parser: 6.0.0 lodash-es: 4.17.21 - mime: 3.0.0 - p-filter: 3.0.0 + mime: 4.0.4 + p-filter: 4.1.0 semantic-release: 22.0.12 url-join: 5.0.0 transitivePeerDependencies: @@ -4307,7 +4307,7 @@ snapshots: semver: 7.5.4 tempy: 3.1.0 - '@semantic-release/release-notes-generator@12.0.0(semantic-release@22.0.12)': + '@semantic-release/release-notes-generator@12.1.0(semantic-release@22.0.12)': dependencies: conventional-changelog-angular: 7.0.0 conventional-changelog-writer: 7.0.1 @@ -4315,15 +4315,15 @@ snapshots: conventional-commits-parser: 5.0.0 debug: 4.3.4 get-stream: 7.0.1 - import-from: 4.0.0 + import-from-esm: 1.3.4 into-stream: 7.0.0 lodash-es: 4.17.21 - read-pkg-up: 10.1.0 + read-pkg-up: 11.0.0 semantic-release: 22.0.12 transitivePeerDependencies: - supports-color - '@semantic-release/release-notes-generator@14.0.0(semantic-release@22.0.12)': + '@semantic-release/release-notes-generator@14.0.1(semantic-release@22.0.12)': dependencies: conventional-changelog-angular: 8.0.0 conventional-changelog-writer: 8.0.0 @@ -4334,7 +4334,7 @@ snapshots: import-from-esm: 1.3.4 into-stream: 7.0.0 lodash-es: 4.17.21 - read-pkg-up: 11.0.0 + read-package-up: 11.0.0 semantic-release: 22.0.12 transitivePeerDependencies: - supports-color @@ -4361,7 +4361,7 @@ snapshots: '@tsconfig/node16@1.0.3': optional: true - '@types/conventional-commits-parser@5.0.0': + '@types/conventional-commits-parser@5.0.1': dependencies: '@types/node': 20.6.3 @@ -4419,11 +4419,6 @@ snapshots: clean-stack: 2.2.0 indent-string: 4.0.0 - aggregate-error@4.0.1: - dependencies: - clean-stack: 4.2.0 - indent-string: 5.0.0 - aggregate-error@5.0.0: dependencies: clean-stack: 5.2.0 @@ -4613,10 +4608,6 @@ snapshots: clean-stack@2.2.0: {} - clean-stack@4.2.0: - dependencies: - escape-string-regexp: 5.0.0 - clean-stack@5.2.0: dependencies: escape-string-regexp: 5.0.0 @@ -4682,7 +4673,7 @@ snapshots: commander@5.1.0: {} - commitizen@4.3.0: + commitizen@4.3.1: dependencies: cachedir: 2.3.0 cz-conventional-changelog: 3.3.0 @@ -4707,9 +4698,9 @@ snapshots: app-root-path: 3.0.0 lodash.clonedeep: 4.5.0 - commitlint-plugin-function-rules@2.0.2(@commitlint/lint@19.2.2): + commitlint-plugin-function-rules@2.0.2(@commitlint/lint@19.6.0): dependencies: - '@commitlint/lint': 19.2.2 + '@commitlint/lint': 19.6.0 compare-func@2.0.0: dependencies: @@ -4798,11 +4789,11 @@ snapshots: typescript: 5.2.2 optional: true - cosmiconfig-typescript-loader@5.0.0(@types/node@20.6.3)(cosmiconfig@9.0.0(typescript@5.2.2))(typescript@5.2.2): + cosmiconfig-typescript-loader@5.1.0(@types/node@20.6.3)(cosmiconfig@9.0.0(typescript@5.2.2))(typescript@5.2.2): dependencies: '@types/node': 20.6.3 cosmiconfig: 9.0.0(typescript@5.2.2) - jiti: 1.21.3 + jiti: 1.21.6 typescript: 5.2.2 cosmiconfig@8.2.0: @@ -4845,7 +4836,7 @@ snapshots: cz-conventional-changelog@3.3.0: dependencies: chalk: 2.4.2 - commitizen: 4.3.0 + commitizen: 4.3.1 conventional-commit-types: 3.0.0 lodash.map: 4.6.0 longest: 2.0.1 @@ -5123,14 +5114,6 @@ snapshots: fast-deep-equal@3.1.3: {} - fast-glob@3.3.1: - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.8 - fast-glob@3.3.2: dependencies: '@nodelib/fs.stat': 2.0.5 @@ -5243,11 +5226,6 @@ snapshots: locate-path: 6.0.0 path-exists: 4.0.0 - find-up@6.3.0: - dependencies: - locate-path: 7.2.0 - path-exists: 5.0.0 - find-up@7.0.0: dependencies: locate-path: 7.2.0 @@ -5451,19 +5429,20 @@ snapshots: dependencies: define-properties: 1.1.4 - globby@13.2.2: + globby@14.0.1: dependencies: - dir-glob: 3.0.1 - fast-glob: 3.3.1 + '@sindresorhus/merge-streams': 2.3.0 + fast-glob: 3.3.2 ignore: 5.2.4 - merge2: 1.4.1 - slash: 4.0.0 + path-type: 5.0.0 + slash: 5.1.0 + unicorn-magic: 0.1.0 - globby@14.0.1: + globby@14.0.2: dependencies: '@sindresorhus/merge-streams': 2.3.0 fast-glob: 3.3.2 - ignore: 5.2.4 + ignore: 5.3.2 path-type: 5.0.0 slash: 5.1.0 unicorn-magic: 0.1.0 @@ -5628,6 +5607,8 @@ snapshots: ignore@5.2.4: {} + ignore@5.3.2: {} + import-fresh@3.3.0: dependencies: parent-module: 1.0.1 @@ -5854,7 +5835,7 @@ snapshots: java-properties@1.0.2: {} - jiti@1.21.3: {} + jiti@1.21.6: {} jmespath@0.16.0: {} @@ -6092,6 +6073,8 @@ snapshots: mime@4.0.3: {} + mime@4.0.4: {} + mimic-fn@2.1.0: {} mimic-fn@4.0.0: {} @@ -6236,10 +6219,6 @@ snapshots: p-each-series@3.0.0: {} - p-filter@3.0.0: - dependencies: - p-map: 5.5.0 - p-filter@4.1.0: dependencies: p-map: 7.0.2 @@ -6256,7 +6235,7 @@ snapshots: p-limit@4.0.0: dependencies: - yocto-queue: 1.0.0 + yocto-queue: 1.1.1 p-locate@2.0.0: dependencies: @@ -6270,10 +6249,6 @@ snapshots: dependencies: p-limit: 4.0.0 - p-map@5.5.0: - dependencies: - aggregate-error: 4.0.1 - p-map@7.0.2: {} p-reduce@2.1.0: {} @@ -6435,11 +6410,11 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 - read-pkg-up@10.1.0: + read-package-up@11.0.0: dependencies: - find-up: 6.3.0 - read-pkg: 8.1.0 - type-fest: 4.3.1 + find-up-simple: 1.0.0 + read-pkg: 9.0.1 + type-fest: 4.29.0 read-pkg-up@11.0.0: dependencies: @@ -6458,7 +6433,7 @@ snapshots: '@types/normalize-package-data': 2.4.1 normalize-package-data: 6.0.0 parse-json: 7.1.0 - type-fest: 4.3.1 + type-fest: 4.29.0 read-pkg@9.0.1: dependencies: @@ -6630,9 +6605,9 @@ snapshots: dependencies: '@semantic-release/commit-analyzer': 11.0.0(semantic-release@22.0.12) '@semantic-release/error': 4.0.0 - '@semantic-release/github': 9.0.6(semantic-release@22.0.12) + '@semantic-release/github': 9.2.6(semantic-release@22.0.12) '@semantic-release/npm': 11.0.0(semantic-release@22.0.12) - '@semantic-release/release-notes-generator': 12.0.0(semantic-release@22.0.12) + '@semantic-release/release-notes-generator': 12.1.0(semantic-release@22.0.12) aggregate-error: 5.0.0 cosmiconfig: 8.2.0 debug: 4.3.4 @@ -6674,6 +6649,8 @@ snapshots: semver@7.6.2: {} + semver@7.6.3: {} + set-cookie-parser@2.6.0: {} set-function-length@1.2.2: @@ -6725,8 +6702,6 @@ snapshots: dependencies: unicode-emoji-modifier-base: 1.0.0 - slash@4.0.0: {} - slash@5.1.0: {} sonic-boom@4.2.0: @@ -6886,6 +6861,8 @@ snapshots: through@2.3.8: {} + tinyexec@0.3.1: {} + tmp@0.0.33: dependencies: os-tmpdir: 1.0.2 @@ -6965,7 +6942,7 @@ snapshots: type-fest@4.20.0: {} - type-fest@4.3.1: {} + type-fest@4.29.0: {} type-is@1.6.18: dependencies: @@ -7157,6 +7134,6 @@ snapshots: yocto-queue@0.1.0: {} - yocto-queue@1.0.0: {} + yocto-queue@1.1.1: {} yoctocolors@2.0.2: {} diff --git a/src/plugins/remote-cache/routes/get-status.ts b/src/plugins/remote-cache/routes/get-status.ts index a5db7f90..4e4bdaa8 100644 --- a/src/plugins/remote-cache/routes/get-status.ts +++ b/src/plugins/remote-cache/routes/get-status.ts @@ -1,4 +1,7 @@ +import { readFileSync } from 'fs' import type { Server } from 'http' +import { dirname, join } from 'path' +import { fileURLToPath } from 'url' import type { RawReplyDefaultExpression, RawRequestDefaultExpression, @@ -7,6 +10,13 @@ import type { import { type Params, type Querystring } from './schema.js' import { statusRouteSchema } from './status-schema.js' +// Get package.json version +const __filename = fileURLToPath(import.meta.url) +const __dirname = dirname(__filename) +const packageJson = JSON.parse( + readFileSync(join(__dirname, '../../../../package.json'), 'utf8'), +) + export const getStatus: RouteOptions< Server, RawRequestDefaultExpression, @@ -21,6 +31,9 @@ export const getStatus: RouteOptions< schema: statusRouteSchema, logLevel: 'error', async handler(req, reply) { - reply.send({ status: 'enabled' }) + reply.send({ + status: 'enabled', + version: packageJson.version, + }) }, } diff --git a/test/local.ts b/test/local.ts index 0940de4b..130ef1ce 100644 --- a/test/local.ts +++ b/test/local.ts @@ -1,9 +1,15 @@ import assert from 'node:assert/strict' import crypto from 'node:crypto' +import { readFileSync } from 'node:fs' import { tmpdir } from 'node:os' import { join } from 'node:path' +import { join as pathJoin } from 'node:path' import { test } from 'node:test' +const packageJson = JSON.parse( + readFileSync(pathJoin(process.cwd(), 'package.json'), 'utf8'), +) + const testEnv = { NODE_ENV: 'test', PORT: 3000, @@ -196,7 +202,7 @@ test('local storage', async (t) => { ) await t.test( - 'should return 200 when GET artifacts/status is calle with auth header', + 'should return 200 when GET artifacts/status is called with auth header', async () => { const response = await app.inject({ method: 'GET', @@ -206,19 +212,25 @@ test('local storage', async (t) => { }, }) assert.equal(response.statusCode, 200) - assert.deepEqual(response.json(), { status: 'enabled' }) + assert.deepEqual(response.json(), { + status: 'enabled', + version: packageJson.version, + }) }, ) await t.test( - 'should return 200 when GET artifacts/status is calle without auth header', + 'should return 200 when GET artifacts/status is called without auth header', async () => { const response = await app.inject({ method: 'GET', url: '/v8/artifacts/status', }) assert.equal(response.statusCode, 200) - assert.deepEqual(response.json(), { status: 'enabled' }) + assert.deepEqual(response.json(), { + status: 'enabled', + version: packageJson.version, + }) }, ) })