From 98b21c24f2a1a3c35a662ff3a5ee7e15cf9cdffa Mon Sep 17 00:00:00 2001 From: Tracey Date: Fri, 17 Mar 2023 14:54:22 -0700 Subject: [PATCH] updated action id, added a comment and addressed other changes suggested during code reivew Signed-off-by: Tracey --- .../.eslintrc.js | 0 .../README.md | 4 +- .../package.json | 3 +- .../confluence/confluenceToMarkdown.test.ts | 2 +- .../confluence/confluenceToMarkdown.ts | 5 +- .../src/actions/confluence/helpers.ts | 0 .../src/actions/confluence/index.ts | 0 .../src/actions/index.ts | 0 .../src/index.ts | 0 yarn.lock | 113 ++++-------------- 10 files changed, 32 insertions(+), 95 deletions(-) rename plugins/{scaffolder-backend-module-confluence-to-markdowwn => scaffolder-backend-module-confluence-to-markdown}/.eslintrc.js (100%) rename plugins/{scaffolder-backend-module-confluence-to-markdowwn => scaffolder-backend-module-confluence-to-markdown}/README.md (96%) rename plugins/{scaffolder-backend-module-confluence-to-markdowwn => scaffolder-backend-module-confluence-to-markdown}/package.json (97%) rename plugins/{scaffolder-backend-module-confluence-to-markdowwn => scaffolder-backend-module-confluence-to-markdown}/src/actions/confluence/confluenceToMarkdown.test.ts (99%) rename plugins/{scaffolder-backend-module-confluence-to-markdowwn => scaffolder-backend-module-confluence-to-markdown}/src/actions/confluence/confluenceToMarkdown.ts (94%) rename plugins/{scaffolder-backend-module-confluence-to-markdowwn => scaffolder-backend-module-confluence-to-markdown}/src/actions/confluence/helpers.ts (100%) rename plugins/{scaffolder-backend-module-confluence-to-markdowwn => scaffolder-backend-module-confluence-to-markdown}/src/actions/confluence/index.ts (100%) rename plugins/{scaffolder-backend-module-confluence-to-markdowwn => scaffolder-backend-module-confluence-to-markdown}/src/actions/index.ts (100%) rename plugins/{scaffolder-backend-module-confluence-to-markdowwn => scaffolder-backend-module-confluence-to-markdown}/src/index.ts (100%) diff --git a/plugins/scaffolder-backend-module-confluence-to-markdowwn/.eslintrc.js b/plugins/scaffolder-backend-module-confluence-to-markdown/.eslintrc.js similarity index 100% rename from plugins/scaffolder-backend-module-confluence-to-markdowwn/.eslintrc.js rename to plugins/scaffolder-backend-module-confluence-to-markdown/.eslintrc.js diff --git a/plugins/scaffolder-backend-module-confluence-to-markdowwn/README.md b/plugins/scaffolder-backend-module-confluence-to-markdown/README.md similarity index 96% rename from plugins/scaffolder-backend-module-confluence-to-markdowwn/README.md rename to plugins/scaffolder-backend-module-confluence-to-markdown/README.md index 56ca4afffc..7f526db553 100644 --- a/plugins/scaffolder-backend-module-confluence-to-markdowwn/README.md +++ b/plugins/scaffolder-backend-module-confluence-to-markdown/README.md @@ -1,6 +1,6 @@ # @backstage/plugin-scaffolder-backend-module-confluence-to-markdown -Welcome to the `transform:confluence-to-markdown` action for the `scaffolder-backend`. +Welcome to the `confluence:transform:markdown` action for the `scaffolder-backend`. ## Getting started @@ -99,7 +99,7 @@ spec: steps: - id: create-docs name: Get markdown file created and update markdown.yaml file - action: transform:confluence-to-markdown + action: confluence:transform:markdown input: confluenceUrls: ${{ parameters.confluenceUrls }} repoUrl: ${{ parameters.repoUrl }} diff --git a/plugins/scaffolder-backend-module-confluence-to-markdowwn/package.json b/plugins/scaffolder-backend-module-confluence-to-markdown/package.json similarity index 97% rename from plugins/scaffolder-backend-module-confluence-to-markdowwn/package.json rename to plugins/scaffolder-backend-module-confluence-to-markdown/package.json index 595b39ee83..7ad5f127f6 100644 --- a/plugins/scaffolder-backend-module-confluence-to-markdowwn/package.json +++ b/plugins/scaffolder-backend-module-confluence-to-markdown/package.json @@ -33,7 +33,6 @@ "@backstage/types": "workspace:^", "fs-extra": "10.1.0", "git-url-parse": "^13.1.0", - "jest": "^29.5.0", "node-fetch": "^2.6.7", "node-html-markdown": "^1.3.0", "yaml": "^2.0.0" @@ -42,7 +41,7 @@ "@backstage/cli": "workspace:^", "@backstage/test-utils": "workspace:^", "mock-fs": "^5.2.0", - "msw": "^1.0.0", + "msw": "^1.0.0" }, "files": [ "dist" diff --git a/plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/confluence/confluenceToMarkdown.test.ts b/plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/confluence/confluenceToMarkdown.test.ts similarity index 99% rename from plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/confluence/confluenceToMarkdown.test.ts rename to plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/confluence/confluenceToMarkdown.test.ts index ae98c38c03..a7d0ea7b25 100644 --- a/plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/confluence/confluenceToMarkdown.test.ts +++ b/plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/confluence/confluenceToMarkdown.test.ts @@ -39,7 +39,7 @@ jest.mock('fs-extra', () => ({ writeStream: jest.fn(), })); -describe('transform:confluence-to-markdown', () => { +describe('confluence:transform:markdown', () => { const baseUrl = `https://nodomain.confluence.com`; const worker = setupServer(); setupRequestMockHandlers(worker); diff --git a/plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/confluence/confluenceToMarkdown.ts b/plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/confluence/confluenceToMarkdown.ts similarity index 94% rename from plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/confluence/confluenceToMarkdown.ts rename to plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/confluence/confluenceToMarkdown.ts index 2a7d28048a..6cbf4da53a 100644 --- a/plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/confluence/confluenceToMarkdown.ts +++ b/plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/confluence/confluenceToMarkdown.ts @@ -45,7 +45,7 @@ export const createConfluenceToMarkdownAction = (options: { confluenceUrls: string[]; repoUrl: string; }>({ - id: 'transform:confluence-to-markdown', + id: 'confluence:transform:markdown', schema: { input: { properties: { @@ -154,7 +154,8 @@ export const createConfluenceToMarkdownAction = (options: { const markdownToPublish = NodeHtmlMarkdown.translate(html); let newString: string = markdownToPublish; productArray.forEach((product: string[]) => { - const regex = product[1].includes('pdf') + // This regex is looking for either [](link to confluence) or ![](link to confluence) in the newly created markdown doc and updating it to point to the versions saved(in ./docs/img) in the local version of GitHub Repo during getAndWriteAttachments + const regex = product[0].includes('pdf') ? new RegExp(`(\\[.*?\\]\\()(.*?${product[0]}.*?)(\\))`, 'gi') : new RegExp(`(\\!\\[.*?\\]\\()(.*?${product[0]}.*?)(\\))`, 'gi'); newString = newString.replace(regex, `$1./img/${product[1]}$3`); diff --git a/plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/confluence/helpers.ts b/plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/confluence/helpers.ts similarity index 100% rename from plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/confluence/helpers.ts rename to plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/confluence/helpers.ts diff --git a/plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/confluence/index.ts b/plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/confluence/index.ts similarity index 100% rename from plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/confluence/index.ts rename to plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/confluence/index.ts diff --git a/plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/index.ts b/plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/index.ts similarity index 100% rename from plugins/scaffolder-backend-module-confluence-to-markdowwn/src/actions/index.ts rename to plugins/scaffolder-backend-module-confluence-to-markdown/src/actions/index.ts diff --git a/plugins/scaffolder-backend-module-confluence-to-markdowwn/src/index.ts b/plugins/scaffolder-backend-module-confluence-to-markdown/src/index.ts similarity index 100% rename from plugins/scaffolder-backend-module-confluence-to-markdowwn/src/index.ts rename to plugins/scaffolder-backend-module-confluence-to-markdown/src/index.ts diff --git a/yarn.lock b/yarn.lock index 4514e3757b..e4434d5168 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7651,9 +7651,9 @@ __metadata: languageName: unknown linkType: soft -"@backstage/plugin-scaffolder-backend-module-confluence-to-markdown@workspace:plugins/scaffolder-backend-module-confluence-to-markdowwn": +"@backstage/plugin-scaffolder-backend-module-confluence-to-markdown@workspace:plugins/scaffolder-backend-module-confluence-to-markdown": version: 0.0.0-use.local - resolution: "@backstage/plugin-scaffolder-backend-module-confluence-to-markdown@workspace:plugins/scaffolder-backend-module-confluence-to-markdowwn" + resolution: "@backstage/plugin-scaffolder-backend-module-confluence-to-markdown@workspace:plugins/scaffolder-backend-module-confluence-to-markdown" dependencies: "@backstage/backend-common": "workspace:^" "@backstage/cli": "workspace:^" @@ -7664,16 +7664,13 @@ __metadata: "@backstage/plugin-scaffolder-node": "workspace:^" "@backstage/test-utils": "workspace:^" "@backstage/types": "workspace:^" - fs-extra: ^11.1.0 + fs-extra: 10.1.0 git-url-parse: ^13.1.0 - jest: ^29.5.0 mock-fs: ^5.2.0 - msw: ^1.1.0 - node-fetch: 2.6.7 + msw: ^1.0.0 + node-fetch: ^2.6.7 node-html-markdown: ^1.3.0 - os: ^0.1.2 - ts-jest: ^29.0.5 - yaml: ^2.2.1 + yaml: ^2.0.0 languageName: unknown linkType: soft @@ -18363,15 +18360,6 @@ __metadata: languageName: node linkType: hard -"bs-logger@npm:0.x": - version: 0.2.6 - resolution: "bs-logger@npm:0.2.6" - dependencies: - fast-json-stable-stringify: 2.x - checksum: d34bdaf68c64bd099ab97c3ea608c9ae7d3f5faa1178b3f3f345acd94e852e608b2d4f9103fb2e503f5e69780e98293df41691b84be909b41cf5045374d54606 - languageName: node - linkType: hard - "bser@npm:2.1.1": version: 2.1.1 resolution: "bser@npm:2.1.1" @@ -23317,7 +23305,7 @@ __metadata: languageName: node linkType: hard -"fast-json-stable-stringify@npm:2.x, fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": +"fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" checksum: b191531e36c607977e5b1c47811158733c34ccb3bfde92c44798929e9b4154884378536d26ad90dfecd32e1ffc09c545d23535ad91b3161a27ddbb8ebe0cbecb @@ -23953,17 +23941,6 @@ __metadata: languageName: node linkType: hard -"fs-extra@npm:^11.1.0": - version: 11.1.0 - resolution: "fs-extra@npm:11.1.0" - dependencies: - graceful-fs: ^4.2.0 - jsonfile: ^6.0.1 - universalify: ^2.0.0 - checksum: 5ca476103fa1f5ff4a9b3c4f331548f8a3c1881edaae323a4415d3153b5dc11dc6a981c8d1dd93eec8367ceee27b53f8bd27eecbbf66ffcdd04927510c171e7f - languageName: node - linkType: hard - "fs-extra@npm:^7.0.1, fs-extra@npm:~7.0.1": version: 7.0.1 resolution: "fs-extra@npm:7.0.1" @@ -27161,7 +27138,7 @@ __metadata: languageName: node linkType: hard -"jest-util@npm:^29.0.0, jest-util@npm:^29.4.3, jest-util@npm:^29.5.0": +"jest-util@npm:^29.4.3, jest-util@npm:^29.5.0": version: 29.5.0 resolution: "jest-util@npm:29.5.0" dependencies: @@ -27248,7 +27225,7 @@ __metadata: languageName: node linkType: hard -"jest@npm:^29.0.2, jest@npm:^29.5.0": +"jest@npm:^29.0.2": version: 29.5.0 resolution: "jest@npm:29.5.0" dependencies: @@ -27761,7 +27738,7 @@ __metadata: languageName: node linkType: hard -"json5@npm:^2.1.2, json5@npm:^2.1.3, json5@npm:^2.2.0, json5@npm:^2.2.1, json5@npm:^2.2.3": +"json5@npm:^2.1.2, json5@npm:^2.1.3, json5@npm:^2.2.0, json5@npm:^2.2.1": version: 2.2.3 resolution: "json5@npm:2.2.3" bin: @@ -28731,7 +28708,7 @@ __metadata: languageName: node linkType: hard -"lodash.memoize@npm:4.x, lodash.memoize@npm:^4.1.2": +"lodash.memoize@npm:^4.1.2": version: 4.1.2 resolution: "lodash.memoize@npm:4.1.2" checksum: 9ff3942feeccffa4f1fafa88d32f0d24fdc62fd15ded5a74a5f950ff5f0c6f61916157246744c620173dddf38d37095a92327d5fd3861e2063e736a5c207d089 @@ -29015,7 +28992,7 @@ __metadata: languageName: node linkType: hard -"make-error@npm:1.x, make-error@npm:^1.1.1": +"make-error@npm:^1.1.1": version: 1.3.6 resolution: "make-error@npm:1.3.6" checksum: b86e5e0e25f7f777b77fabd8e2cbf15737972869d852a22b7e73c17623928fccb826d8e46b9951501d3f20e51ad74ba8c59ed584f610526a48f8ccf88aaec402 @@ -30263,7 +30240,7 @@ __metadata: languageName: node linkType: hard -"msw@npm:^1.0.0, msw@npm:^1.0.1, msw@npm:^1.1.0": +"msw@npm:^1.0.0, msw@npm:^1.0.1": version: 1.1.0 resolution: "msw@npm:1.1.0" dependencies: @@ -31363,13 +31340,6 @@ __metadata: languageName: node linkType: hard -"os@npm:^0.1.2": - version: 0.1.2 - resolution: "os@npm:0.1.2" - checksum: dc2d99759eef13f5dc47ddb12c67b9760a7196fd83a35a7aec2d75b82f91163ca1d4e8872238f8c2a35f4cddd5adf5ce6638a234c0563c748d3cd1d69a9f7153 - languageName: node - linkType: hard - "ospath@npm:^1.2.2": version: 1.2.2 resolution: "ospath@npm:1.2.2" @@ -35434,7 +35404,16 @@ __metadata: languageName: node linkType: hard -"semver@npm:7.x, semver@npm:^7.1.1, semver@npm:^7.1.2, semver@npm:^7.1.3, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:~7.3.0": +"semver@npm:^6.0.0, semver@npm:^6.1.1, semver@npm:^6.1.2, semver@npm:^6.3.0": + version: 6.3.0 + resolution: "semver@npm:6.3.0" + bin: + semver: ./bin/semver.js + checksum: 1b26ecf6db9e8292dd90df4e781d91875c0dcc1b1909e70f5d12959a23c7eebb8f01ea581c00783bbee72ceeaad9505797c381756326073850dc36ed284b21b9 + languageName: node + linkType: hard + +"semver@npm:^7.1.1, semver@npm:^7.1.2, semver@npm:^7.1.3, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:~7.3.0": version: 7.3.8 resolution: "semver@npm:7.3.8" dependencies: @@ -35445,15 +35424,6 @@ __metadata: languageName: node linkType: hard -"semver@npm:^6.0.0, semver@npm:^6.1.1, semver@npm:^6.1.2, semver@npm:^6.3.0": - version: 6.3.0 - resolution: "semver@npm:6.3.0" - bin: - semver: ./bin/semver.js - checksum: 1b26ecf6db9e8292dd90df4e781d91875c0dcc1b1909e70f5d12959a23c7eebb8f01ea581c00783bbee72ceeaad9505797c381756326073850dc36ed284b21b9 - languageName: node - linkType: hard - "send@npm:0.18.0": version: 0.18.0 resolution: "send@npm:0.18.0" @@ -37631,39 +37601,6 @@ __metadata: languageName: node linkType: hard -"ts-jest@npm:^29.0.5": - version: 29.0.5 - resolution: "ts-jest@npm:29.0.5" - dependencies: - bs-logger: 0.x - fast-json-stable-stringify: 2.x - jest-util: ^29.0.0 - json5: ^2.2.3 - lodash.memoize: 4.x - make-error: 1.x - semver: 7.x - yargs-parser: ^21.0.1 - peerDependencies: - "@babel/core": ">=7.0.0-beta.0 <8" - "@jest/types": ^29.0.0 - babel-jest: ^29.0.0 - jest: ^29.0.0 - typescript: ">=4.3" - peerDependenciesMeta: - "@babel/core": - optional: true - "@jest/types": - optional: true - babel-jest: - optional: true - esbuild: - optional: true - bin: - ts-jest: cli.js - checksum: f60f129c2287f4c963d9ee2677132496c5c5a5d39c27ad234199a1140c26318a7d5bda34890ab0e30636ec42a8de28f84487c09e9dcec639c9c67812b3a38373 - languageName: node - linkType: hard - "ts-log@npm:^2.2.3": version: 2.2.3 resolution: "ts-log@npm:2.2.3" @@ -39592,7 +39529,7 @@ __metadata: languageName: node linkType: hard -"yaml@npm:^2.0.0, yaml@npm:^2.1.1, yaml@npm:^2.1.3, yaml@npm:^2.2.1": +"yaml@npm:^2.0.0, yaml@npm:^2.1.1, yaml@npm:^2.1.3": version: 2.2.1 resolution: "yaml@npm:2.2.1" checksum: 84f68cbe462d5da4e7ded4a8bded949ffa912bc264472e5a684c3d45b22d8f73a3019963a32164023bdf3d83cfb6f5b58ff7b2b10ef5b717c630f40bd6369a23 @@ -39616,7 +39553,7 @@ __metadata: languageName: node linkType: hard -"yargs-parser@npm:^21.0.0, yargs-parser@npm:^21.0.1": +"yargs-parser@npm:^21.0.0": version: 21.1.1 resolution: "yargs-parser@npm:21.1.1" checksum: ed2d96a616a9e3e1cc7d204c62ecc61f7aaab633dcbfab2c6df50f7f87b393993fe6640d017759fe112d0cb1e0119f2b4150a87305cc873fd90831c6a58ccf1c