From 4352fcdf214628dcb1b058af24c0d7c0cec3e4da Mon Sep 17 00:00:00 2001 From: Lucas Date: Wed, 20 Mar 2024 21:04:01 +0100 Subject: [PATCH] feat: Backstage 1.34.1 --- .github/workflows/test.yaml | 3 +- .gitignore | 2 +- Dockerfile | 8 +- backstage.json | 2 +- lerna.json | 6 - package.json | 12 +- packages/app/package.json | 62 +- packages/app/public/index.html | 2 +- packages/app/src/components/Root/Root.tsx | 3 +- packages/backend/package.json | 68 +- packages/backend/src/index.test.ts | 8 - packages/backend/src/index.ts | 34 +- packages/backend/src/plugins/auth.ts | 88 - packages/backend/src/plugins/catalog.ts | 71 - packages/backend/src/types.ts | 25 - .../.eslintrc.js | 1 + .../README.md | 6 + .../package.json | 43 + .../src/index.ts | 8 + .../src/module.ts | 50 + .../package.json | 18 +- tsconfig.json | 2 + yarn.lock | 5502 ++++------------- 23 files changed, 1318 insertions(+), 4706 deletions(-) delete mode 100644 lerna.json delete mode 100644 packages/backend/src/index.test.ts delete mode 100644 packages/backend/src/plugins/auth.ts delete mode 100644 packages/backend/src/plugins/catalog.ts delete mode 100644 packages/backend/src/types.ts create mode 100644 plugins/catalog-backend-module-transformer/.eslintrc.js create mode 100644 plugins/catalog-backend-module-transformer/README.md create mode 100644 plugins/catalog-backend-module-transformer/package.json create mode 100644 plugins/catalog-backend-module-transformer/src/index.ts create mode 100644 plugins/catalog-backend-module-transformer/src/module.ts diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 1b98ae4..627bf28 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -22,7 +22,7 @@ jobs: id-token: none strategy: matrix: - node-version: [20] + node-version: [22] steps: - uses: actions/checkout@v4 with: @@ -41,4 +41,5 @@ jobs: report-json: "eslint_report.json" only-pr-files: false continue-on-error: true + - run: yarn tsc - run: yarn test diff --git a/.gitignore b/.gitignore index 9267554..17acc2b 100644 --- a/.gitignore +++ b/.gitignore @@ -15,7 +15,7 @@ coverage # Dependencies node_modules -# Yarn 3 files +# Yarn files .pnp.* .yarn/* !.yarn/patches diff --git a/Dockerfile b/Dockerfile index 8bc124f..5a4a4d2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # Stage 1 - Install dependencies -FROM registry.access.redhat.com/ubi9/nodejs-20:latest AS deps +FROM registry.access.redhat.com/ubi9/nodejs-22:latest AS deps USER 0 # Install yarn and libs for building isolated-vm with node-gyp @@ -19,7 +19,7 @@ RUN yarn install --immutable --network-timeout 600000 RUN chown 1001:0 ".yarn/install-state.gz" # Stage 2 - Build packages -FROM registry.access.redhat.com/ubi9/nodejs-20:latest AS build +FROM registry.access.redhat.com/ubi9/nodejs-22:latest AS build USER 0 # Install yarn @@ -34,14 +34,14 @@ RUN yarn tsc RUN yarn build:backend # Stage 3 - Build the actual backend image and install production dependencies -FROM ghcr.io/radiorabe/ubi9-minimal:0.6.6 +FROM ghcr.io/radiorabe/ubi9-minimal:0.8.0 ENV APP_ROOT=/opt/app-root \ # The $HOME is not set by default, but some applications need this variable HOME=/opt/app-root/src \ NPM_RUN=start \ PLATFORM="el9" \ - NODEJS_VERSION=20 \ + NODEJS_VERSION=22 \ NPM_RUN=start \ NAME=backstage diff --git a/backstage.json b/backstage.json index ce16faf..d105b59 100644 --- a/backstage.json +++ b/backstage.json @@ -1,3 +1,3 @@ { - "version": "1.26.4" + "version": "1.34.1" } diff --git a/lerna.json b/lerna.json deleted file mode 100644 index 529a62f..0000000 --- a/lerna.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "packages": ["packages/*", "plugins/*"], - "npmClient": "yarn", - "version": "0.1.0", - "$schema": "node_modules/lerna/schemas/lerna-schema.json" -} diff --git a/package.json b/package.json index 0a9db4e..292e0f3 100644 --- a/package.json +++ b/package.json @@ -3,10 +3,10 @@ "version": "1.0.0", "private": true, "engines": { - "node": "18 || 20" + "node": "22" }, "scripts": { - "dev": "concurrently \"yarn start\" \"yarn start-backend\"", + "dev": "yarn workspaces foreach -A --include backend --include app --parallel -v -i run start", "start": "yarn workspace app start", "start-backend": "yarn workspace backend start", "build:backend": "yarn workspace backend build", @@ -32,20 +32,18 @@ "@backstage/cli": "^0.29.4", "@backstage/e2e-test-utils": "^0.1.1", "@playwright/test": "^1.41.2", - "@spotify/prettier-config": "^15.0.0", "@types/react": "^18", "@types/react-dom": "^18", - "concurrently": "^8.2.2", - "lerna": "^8.1.2", + "eslint-plugin-jest": "^28.10.0", "node-gyp": "^10.0.1", "prettier": "^3.2.5", - "typescript": "~5.4.2" + "typescript": "~5.7.2" }, "resolutions": { "@types/react": "^18", "@types/react-dom": "^18" }, - "prettier": "@spotify/prettier-config", + "prettier": "@backstage/cli/config/prettier", "lint-staged": { "*.{js,jsx,ts,tsx,mjs,cjs}": [ "eslint --fix", diff --git a/packages/app/package.json b/packages/app/package.json index 090dcb2..fdb255b 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -17,51 +17,49 @@ "@backstage-community/plugin-github-actions": "^0.6.16", "@backstage-community/plugin-github-pull-requests-board": "^0.2.1", "@backstage-community/plugin-todo": "^0.2.39", - "@backstage/app-defaults": "^1.5.4", - "@backstage/catalog-model": "^1.4.5", + "@backstage/app-defaults": "^1.5.15", + "@backstage/catalog-model": "^1.7.2", "@backstage/cli": "^0.29.4", - "@backstage/core-app-api": "^1.12.4", - "@backstage/core-components": "^0.14.5", - "@backstage/core-plugin-api": "^1.9.2", - "@backstage/integration-react": "^1.1.26", - "@backstage/plugin-api-docs": "^0.11.4", - "@backstage/plugin-catalog": "^1.19.0", - "@backstage/plugin-catalog-common": "^1.0.22", - "@backstage/plugin-catalog-graph": "^0.4.4", - "@backstage/plugin-catalog-import": "^0.10.10", - "@backstage/plugin-catalog-react": "^1.11.3", - "@backstage/plugin-catalog-unprocessed-entities": "^0.2.3", - "@backstage/plugin-devtools": "^0.1.13", - "@backstage/plugin-devtools-common": "^0.1.9", - "@backstage/plugin-home": "^0.7.3", - "@backstage/plugin-org": "^0.6.24", - "@backstage/plugin-permission-react": "^0.4.22", - "@backstage/plugin-scaffolder": "^1.19.3", - "@backstage/plugin-search": "^1.4.10", - "@backstage/plugin-search-react": "^1.7.10", - "@backstage/plugin-techdocs": "^1.10.4", - "@backstage/plugin-techdocs-module-addons-contrib": "^1.1.9", - "@backstage/plugin-techdocs-react": "^1.2.3", - "@backstage/plugin-user-settings": "^0.8.5", - "@backstage/theme": "^0.5.3", + "@backstage/core-app-api": "^1.15.3", + "@backstage/core-components": "^0.16.2", + "@backstage/core-plugin-api": "^1.10.2", + "@backstage/integration-react": "^1.2.2", + "@backstage/plugin-api-docs": "^0.12.2", + "@backstage/plugin-catalog": "^1.26.0", + "@backstage/plugin-catalog-common": "^1.1.2", + "@backstage/plugin-catalog-graph": "^0.4.14", + "@backstage/plugin-catalog-import": "^0.12.8", + "@backstage/plugin-catalog-react": "^1.15.0", + "@backstage/plugin-catalog-unprocessed-entities": "^0.2.12", + "@backstage/plugin-devtools": "^0.1.22", + "@backstage/plugin-devtools-common": "^0.1.14", + "@backstage/plugin-home": "^0.8.3", + "@backstage/plugin-org": "^0.6.34", + "@backstage/plugin-permission-react": "^0.4.29", + "@backstage/plugin-scaffolder": "^1.27.3", + "@backstage/plugin-search": "^1.4.21", + "@backstage/plugin-search-react": "^1.8.4", + "@backstage/plugin-techdocs": "^1.12.0", + "@backstage/plugin-techdocs-module-addons-contrib": "^1.1.19", + "@backstage/plugin-techdocs-react": "^1.2.12", + "@backstage/plugin-user-settings": "^0.8.17", + "@backstage/theme": "^0.6.3", "@material-ui/core": "^4.12.4", "@material-ui/icons": "^4.11.3", - "@roadiehq/backstage-plugin-github-insights": "^2.3.28", - "history": "^5.3.0", + "@roadiehq/backstage-plugin-github-insights": "^2.5.1", "react": "^18.2.0", "react-dom": "^18.2.0", "react-router": "^6.22.1", - "react-router-dom": "^6.22.1", - "react-use": "^17.5.0" + "react-router-dom": "^6.22.1" }, "devDependencies": { - "@backstage/test-utils": "^1.5.4", + "@backstage/test-utils": "^1.7.3", "@playwright/test": "^1.41.2", "@testing-library/dom": "^10.0.0", "@testing-library/jest-dom": "^6.4.2", "@testing-library/react": "^16.1.0", "@testing-library/user-event": "^14.5.2", - "@types/node": "^20", + "@types/node": "^22", "@types/react": "^18", "@types/react-dom": "^18", "cross-env": "^7.0.3" diff --git a/packages/app/public/index.html b/packages/app/public/index.html index 18da7c4..0c5fc4b 100644 --- a/packages/app/public/index.html +++ b/packages/app/public/index.html @@ -6,7 +6,7 @@