@form8ion/codecov 7.1.0 → 7.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.js +36 -16
- package/lib/index.js.map +1 -1
- package/package.json +1 -1
package/lib/index.js
CHANGED
|
@@ -62,34 +62,54 @@ function stepIsCodecovAction(step) {
|
|
|
62
62
|
return ACTION_NAME === actionName;
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
+
function liftAction(action) {
|
|
66
|
+
return {
|
|
67
|
+
...action,
|
|
68
|
+
with: {
|
|
69
|
+
// eslint-disable-next-line no-template-curly-in-string
|
|
70
|
+
token: '${{ secrets.CODECOV_TOKEN }}'
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
|
|
65
75
|
function codecovActionExistsInSteps(steps) {
|
|
66
76
|
return !!steps.find(step => stepIsCodecovAction(step));
|
|
67
77
|
}
|
|
68
78
|
|
|
79
|
+
function liftSteps(steps) {
|
|
80
|
+
if (!codecovActionExistsInSteps(steps)) {
|
|
81
|
+
const stepsWithLegacyReportingRemoved = steps.filter(({run}) => 'npm run coverage:report' !== run);
|
|
82
|
+
|
|
83
|
+
return [...stepsWithLegacyReportingRemoved, scaffoldAction()];
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
return steps.map(step => {
|
|
87
|
+
if (stepIsCodecovAction(step)) return liftAction(step);
|
|
88
|
+
|
|
89
|
+
return step;
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
|
|
69
93
|
async function lift$1({projectRoot}) {
|
|
70
94
|
const ciWorkflowName = 'node-ci';
|
|
71
95
|
|
|
72
96
|
const workflowDetails = await loadWorkflowFile({projectRoot, name: ciWorkflowName});
|
|
73
97
|
const {jobs: {verify: {steps}}} = workflowDetails;
|
|
74
98
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
verify: {
|
|
86
|
-
...workflowDetails.jobs.verify,
|
|
87
|
-
steps: [...stepsWithLegacyReportingRemoved, scaffoldAction()]
|
|
88
|
-
}
|
|
99
|
+
await writeWorkflowFile({
|
|
100
|
+
projectRoot,
|
|
101
|
+
name: ciWorkflowName,
|
|
102
|
+
config: {
|
|
103
|
+
...workflowDetails,
|
|
104
|
+
jobs: {
|
|
105
|
+
...workflowDetails.jobs,
|
|
106
|
+
verify: {
|
|
107
|
+
...workflowDetails.jobs.verify,
|
|
108
|
+
steps: liftSteps(steps)
|
|
89
109
|
}
|
|
90
110
|
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
111
|
+
}
|
|
112
|
+
});
|
|
93
113
|
}
|
|
94
114
|
|
|
95
115
|
async function removeCodecovAction({projectRoot}) {
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/scaffolder.js","../src/badge/repository-details-fetcher.js","../src/badge/scaffolder.js","../src/reporter/ci-providers/github-workflows/codecov-action.js","../src/reporter/ci-providers/github-workflows/action/scaffolder.js","../src/reporter/ci-providers/github-workflows/action/tester.js","../src/reporter/ci-providers/github-workflows/lifter.js","../src/reporter/ci-providers/github-workflows/remover.js","../src/reporter/ci-providers/github-workflows/predicate.js","../src/reporter/lifter.js","../src/lifter.js","../src/remover.js"],"sourcesContent":["export async function scaffold() {\n return {};\n}\n","import got from 'got';\n\nexport default async function fetchRepositoryDetails({vcs, apiAccessToken}) {\n const {body: {repo}} = await got(\n `https://codecov.io/api/gh/${vcs.owner}/${vcs.name}`,\n {headers: {Authorization: apiAccessToken}, responseType: 'json'}\n );\n\n return repo;\n}\n","import fetchRepositoryDetails from './repository-details-fetcher.js';\n\nexport async function scaffold({vcs, apiAccessToken}) {\n return {\n ...['github', 'gitlab', 'bitbucket'].includes(vcs?.host) && {\n badges: {\n status: {\n coverage: {\n img: `https://img.shields.io/codecov/c/${vcs.host}/${vcs.owner}/${vcs.name}?logo=codecov${\n apiAccessToken\n ? `&token=${(await fetchRepositoryDetails({vcs, apiAccessToken})).image_token}`\n : ''\n }`,\n link: `https://codecov.io/${vcs.host}/${vcs.owner}/${vcs.name}`,\n text: 'Codecov'\n }\n }\n }\n }\n };\n}\n","import {removeActionFromJobs} from '@form8ion/github-workflows-core';\n\nexport const ACTION_NAME = 'codecov/codecov-action';\n\nexport function removeCodecovActionFrom(jobs) {\n return removeActionFromJobs(jobs, ACTION_NAME);\n}\n","import {ACTION_NAME} from '../codecov-action.js';\n\nexport default function scaffoldAction() {\n return {\n uses: `${ACTION_NAME}@v5.5.2`,\n with: {\n // eslint-disable-next-line no-template-curly-in-string\n token: '${{ secrets.CODECOV_TOKEN }}'\n }\n };\n}\n","import {ACTION_NAME} from '../codecov-action.js';\n\nfunction stepIsCodecovAction(step) {\n if (!step.uses) return false;\n\n const [actionName] = step.uses.split('@');\n\n return ACTION_NAME === actionName;\n}\n\nexport default function codecovActionExistsInSteps(steps) {\n return !!steps.find(step => stepIsCodecovAction(step));\n}\n","import {loadWorkflowFile, writeWorkflowFile} from '@form8ion/github-workflows-core';\n\nimport {test as codecovActionExistsInSteps, scaffold as scaffoldAction} from './action/index.js';\n\nexport async function lift({projectRoot}) {\n const ciWorkflowName = 'node-ci';\n\n const workflowDetails = await loadWorkflowFile({projectRoot, name: ciWorkflowName});\n const {jobs: {verify: {steps}}} = workflowDetails;\n\n if (!codecovActionExistsInSteps(steps)) {\n const stepsWithLegacyReportingRemoved = steps.filter(({run}) => 'npm run coverage:report' !== run);\n\n await writeWorkflowFile({\n projectRoot,\n name: ciWorkflowName,\n config: {\n ...workflowDetails,\n jobs: {\n ...workflowDetails.jobs,\n verify: {\n ...workflowDetails.jobs.verify,\n steps: [...stepsWithLegacyReportingRemoved, scaffoldAction()]\n }\n }\n }\n });\n }\n}\n","import {loadWorkflowFile, writeWorkflowFile} from '@form8ion/github-workflows-core';\nimport {removeCodecovActionFrom} from './codecov-action.js';\n\nexport default async function removeCodecovAction({projectRoot}) {\n const existingConfig = await loadWorkflowFile({projectRoot, name: 'node-ci'});\n existingConfig.jobs = removeCodecovActionFrom(existingConfig.jobs);\n\n await writeWorkflowFile({projectRoot, name: 'node-ci', config: existingConfig});\n}\n","import {workflowFileExists} from '@form8ion/github-workflows-core';\n\nexport default function ciWorkflowExists({projectRoot}) {\n return workflowFileExists({projectRoot, name: 'node-ci'});\n}\n","import {promises as fs} from 'node:fs';\nimport {writePackageJson} from '@form8ion/javascript-core';\n\nimport {execa} from 'execa';\nimport {lift as liftCiProvider, test as ciProviderIsLiftable} from './ci-providers/index.js';\n\nexport default async function liftReporter({projectRoot, packageManager}) {\n const pathToPackageJson = `${projectRoot}/package.json`;\n\n const [ciProviderCanBeLifted, existingPackageContents] = await Promise.all([\n ciProviderIsLiftable({projectRoot}),\n fs.readFile(pathToPackageJson, 'utf-8')\n ]);\n const parsedPackageContents = JSON.parse(existingPackageContents);\n const {scripts} = parsedPackageContents;\n const {'coverage:report': reportCoverageScript, ...otherScripts} = scripts;\n\n if (ciProviderCanBeLifted) await liftCiProvider({projectRoot});\n\n if (scripts['coverage:report']) {\n parsedPackageContents.scripts = otherScripts;\n await writePackageJson({projectRoot, config: parsedPackageContents});\n\n await execa(packageManager, ['remove', 'codecov']);\n\n return {\n ...!ciProviderCanBeLifted && {\n nextSteps: [{\n summary: 'Configure modern reporting to Codecov on your CI service',\n description: 'Configure the [Codecov Uploader](https://docs.codecov.com/docs/codecov-uploader) appropriately'\n + ' for your CI Provider. If available for your provider, prefer one of the dedicated wrappers.'\n }]\n }\n };\n }\n\n return {};\n}\n","import deepmerge from 'deepmerge';\n\nimport {scaffold as scaffoldBadge} from './badge/index.js';\nimport {lift as liftReporting} from './reporter/index.js';\n\nexport async function lift({projectRoot, packageManager, vcs}) {\n const [reportingResults, badgeResults] = await Promise.all([\n liftReporting({projectRoot, packageManager}),\n scaffoldBadge({vcs})\n ]);\n\n return deepmerge.all([reportingResults, badgeResults]);\n}\n","import {remove as removeAction, test as githubWorkflowExists} from './reporter/ci-providers/github-workflows/index.js';\n\nexport default async function removeCodecov({projectRoot}) {\n if (await githubWorkflowExists({projectRoot})) {\n await removeAction({projectRoot});\n }\n\n return {};\n}\n"],"names":["scaffold","lift","ciProviderIsLiftable","fs","liftCiProvider","liftReporting","scaffoldBadge","githubWorkflowExists","removeAction"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/scaffolder.js","../src/badge/repository-details-fetcher.js","../src/badge/scaffolder.js","../src/reporter/ci-providers/github-workflows/codecov-action.js","../src/reporter/ci-providers/github-workflows/action/scaffolder.js","../src/reporter/ci-providers/github-workflows/action/tester.js","../src/reporter/ci-providers/github-workflows/action/lifter.js","../src/reporter/ci-providers/github-workflows/steps/tester.js","../src/reporter/ci-providers/github-workflows/steps/lifter.js","../src/reporter/ci-providers/github-workflows/lifter.js","../src/reporter/ci-providers/github-workflows/remover.js","../src/reporter/ci-providers/github-workflows/predicate.js","../src/reporter/lifter.js","../src/lifter.js","../src/remover.js"],"sourcesContent":["export async function scaffold() {\n return {};\n}\n","import got from 'got';\n\nexport default async function fetchRepositoryDetails({vcs, apiAccessToken}) {\n const {body: {repo}} = await got(\n `https://codecov.io/api/gh/${vcs.owner}/${vcs.name}`,\n {headers: {Authorization: apiAccessToken}, responseType: 'json'}\n );\n\n return repo;\n}\n","import fetchRepositoryDetails from './repository-details-fetcher.js';\n\nexport async function scaffold({vcs, apiAccessToken}) {\n return {\n ...['github', 'gitlab', 'bitbucket'].includes(vcs?.host) && {\n badges: {\n status: {\n coverage: {\n img: `https://img.shields.io/codecov/c/${vcs.host}/${vcs.owner}/${vcs.name}?logo=codecov${\n apiAccessToken\n ? `&token=${(await fetchRepositoryDetails({vcs, apiAccessToken})).image_token}`\n : ''\n }`,\n link: `https://codecov.io/${vcs.host}/${vcs.owner}/${vcs.name}`,\n text: 'Codecov'\n }\n }\n }\n }\n };\n}\n","import {removeActionFromJobs} from '@form8ion/github-workflows-core';\n\nexport const ACTION_NAME = 'codecov/codecov-action';\n\nexport function removeCodecovActionFrom(jobs) {\n return removeActionFromJobs(jobs, ACTION_NAME);\n}\n","import {ACTION_NAME} from '../codecov-action.js';\n\nexport default function scaffoldAction() {\n return {\n uses: `${ACTION_NAME}@v5.5.2`,\n with: {\n // eslint-disable-next-line no-template-curly-in-string\n token: '${{ secrets.CODECOV_TOKEN }}'\n }\n };\n}\n","import {ACTION_NAME} from '../codecov-action.js';\n\nexport default function stepIsCodecovAction(step) {\n if (!step.uses) return false;\n\n const [actionName] = step.uses.split('@');\n\n return ACTION_NAME === actionName;\n}\n","export default function liftAction(action) {\n return {\n ...action,\n with: {\n // eslint-disable-next-line no-template-curly-in-string\n token: '${{ secrets.CODECOV_TOKEN }}'\n }\n };\n}\n","import {test as stepIsCodecovAction} from '../action/index.js';\n\nexport default function codecovActionExistsInSteps(steps) {\n return !!steps.find(step => stepIsCodecovAction(step));\n}\n","import {scaffold as scaffoldAction, lift as liftAction, test as stepIsCodecovAction} from '../action/index.js';\nimport codecovActionExistsInSteps from './tester.js';\n\nexport default function liftSteps(steps) {\n if (!codecovActionExistsInSteps(steps)) {\n const stepsWithLegacyReportingRemoved = steps.filter(({run}) => 'npm run coverage:report' !== run);\n\n return [...stepsWithLegacyReportingRemoved, scaffoldAction()];\n }\n\n return steps.map(step => {\n if (stepIsCodecovAction(step)) return liftAction(step);\n\n return step;\n });\n}\n","import {loadWorkflowFile, writeWorkflowFile} from '@form8ion/github-workflows-core';\n\nimport {lift as liftSteps} from './steps/index.js';\n\nexport async function lift({projectRoot}) {\n const ciWorkflowName = 'node-ci';\n\n const workflowDetails = await loadWorkflowFile({projectRoot, name: ciWorkflowName});\n const {jobs: {verify: {steps}}} = workflowDetails;\n\n await writeWorkflowFile({\n projectRoot,\n name: ciWorkflowName,\n config: {\n ...workflowDetails,\n jobs: {\n ...workflowDetails.jobs,\n verify: {\n ...workflowDetails.jobs.verify,\n steps: liftSteps(steps)\n }\n }\n }\n });\n}\n","import {loadWorkflowFile, writeWorkflowFile} from '@form8ion/github-workflows-core';\nimport {removeCodecovActionFrom} from './codecov-action.js';\n\nexport default async function removeCodecovAction({projectRoot}) {\n const existingConfig = await loadWorkflowFile({projectRoot, name: 'node-ci'});\n existingConfig.jobs = removeCodecovActionFrom(existingConfig.jobs);\n\n await writeWorkflowFile({projectRoot, name: 'node-ci', config: existingConfig});\n}\n","import {workflowFileExists} from '@form8ion/github-workflows-core';\n\nexport default function ciWorkflowExists({projectRoot}) {\n return workflowFileExists({projectRoot, name: 'node-ci'});\n}\n","import {promises as fs} from 'node:fs';\nimport {writePackageJson} from '@form8ion/javascript-core';\n\nimport {execa} from 'execa';\nimport {lift as liftCiProvider, test as ciProviderIsLiftable} from './ci-providers/index.js';\n\nexport default async function liftReporter({projectRoot, packageManager}) {\n const pathToPackageJson = `${projectRoot}/package.json`;\n\n const [ciProviderCanBeLifted, existingPackageContents] = await Promise.all([\n ciProviderIsLiftable({projectRoot}),\n fs.readFile(pathToPackageJson, 'utf-8')\n ]);\n const parsedPackageContents = JSON.parse(existingPackageContents);\n const {scripts} = parsedPackageContents;\n const {'coverage:report': reportCoverageScript, ...otherScripts} = scripts;\n\n if (ciProviderCanBeLifted) await liftCiProvider({projectRoot});\n\n if (scripts['coverage:report']) {\n parsedPackageContents.scripts = otherScripts;\n await writePackageJson({projectRoot, config: parsedPackageContents});\n\n await execa(packageManager, ['remove', 'codecov']);\n\n return {\n ...!ciProviderCanBeLifted && {\n nextSteps: [{\n summary: 'Configure modern reporting to Codecov on your CI service',\n description: 'Configure the [Codecov Uploader](https://docs.codecov.com/docs/codecov-uploader) appropriately'\n + ' for your CI Provider. If available for your provider, prefer one of the dedicated wrappers.'\n }]\n }\n };\n }\n\n return {};\n}\n","import deepmerge from 'deepmerge';\n\nimport {scaffold as scaffoldBadge} from './badge/index.js';\nimport {lift as liftReporting} from './reporter/index.js';\n\nexport async function lift({projectRoot, packageManager, vcs}) {\n const [reportingResults, badgeResults] = await Promise.all([\n liftReporting({projectRoot, packageManager}),\n scaffoldBadge({vcs})\n ]);\n\n return deepmerge.all([reportingResults, badgeResults]);\n}\n","import {remove as removeAction, test as githubWorkflowExists} from './reporter/ci-providers/github-workflows/index.js';\n\nexport default async function removeCodecov({projectRoot}) {\n if (await githubWorkflowExists({projectRoot})) {\n await removeAction({projectRoot});\n }\n\n return {};\n}\n"],"names":["scaffold","lift","ciProviderIsLiftable","fs","liftCiProvider","liftReporting","scaffoldBadge","githubWorkflowExists","removeAction"],"mappings":"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"}
|