Skip to content

Commit 8105feb

Browse files
authored
use npm config (#96)
1 parent a776ac8 commit 8105feb

File tree

3 files changed

+15
-28
lines changed

3 files changed

+15
-28
lines changed

changelog.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
## Unreleased
44

5+
- Add support for `.npmrc` ([#96](https://github.com/hasura/ndc-open-api-lambda/pull/96))
6+
57
## [[1.6.1](https://github.com/hasura/ndc-open-api-lambda/releases/tag/v1.6.1)] 2025-05-12
68

79
- Update dependencies. Also update ndc-nodejs-lambda to `v1.14.0` ([#93](https://github.com/hasura/ndc-open-api-lambda/pull/93))

src/app/context.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,6 @@ export enum LogLevel {
2929
PANIC = "panic",
3030
}
3131

32-
const NDC_NODEJS_LAMBDA_SDK_VERSION = "v1.8.0";
33-
3432
const PACKAGE_JSON_FILENAME = "package.json";
3533
const TS_CONFIG_FILENAME = "tsconfig.json";
3634

@@ -185,10 +183,6 @@ export class Context {
185183
return FUNCTIONS_TS_FILE_TEMPLATE_FILE_NAME;
186184
}
187185

188-
public getNdcNodeJsLambdaSdkVersion(): SemVer {
189-
return new SemVer(NDC_NODEJS_LAMBDA_SDK_VERSION);
190-
}
191-
192186
public getNodeVersion(): string {
193187
return NODE_VERSION;
194188
}

src/app/writer/package-json-writer.ts

Lines changed: 13 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,11 @@ import * as fs from "fs";
33
import * as context from "../context";
44
import * as logger from "../../util/logger";
55
import { SemVer } from "semver";
6-
import NPMCliPackageJson, * as PackageJson from "@npmcli/package-json";
6+
import NPMCliPackageJson from "@npmcli/package-json";
7+
import { exit } from "process";
78

89
export async function writeToFileSystem() {
9-
const ndcNodeJsLambdaSdkVersion = await getNdcNodeJsLambdaSdkVersion();
10+
const ndcNodeJsLambdaSdkVersion = await getLatestNdcNodeJsLambdaSdkVersion();
1011

1112
if (packageJsonExists()) {
1213
logger.info(
@@ -82,29 +83,19 @@ function packageJsonExists(): boolean {
8283
return fs.existsSync(context.getInstance().getPackageJsonFilePath());
8384
}
8485

85-
async function getNdcNodeJsLambdaSdkVersion(): Promise<SemVer> {
86+
async function getLatestNdcNodeJsLambdaSdkVersion(): Promise<SemVer> {
8687
try {
87-
await pacote.manifest(
88-
`@hasura/ndc-lambda-sdk@${context.getInstance().getNdcNodeJsLambdaSdkVersion()}`,
89-
{},
88+
const ndcNodeJsLambdaPackageManifest = await pacote.manifest(
89+
`@hasura/ndc-lambda-sdk`,
90+
{
91+
// this is required for custom registry support via .npmrc file (and other npm config options)
92+
where: context.getInstance().getUserMountedFilePath(), // Use pacote's where option for npm config resolution (.npmrc file)
93+
},
9094
);
9195

92-
return context.getInstance().getNdcNodeJsLambdaSdkVersion();
96+
return new SemVer(ndcNodeJsLambdaPackageManifest.version);
9397
} catch (e) {
94-
const latestNdcNodeJsLambdaSdkVersion =
95-
getLatestNdcNodeJsLambdaSdkVersion();
96-
logger.error(
97-
`Error while fetching NDC NodeJS Lambda SDK Version: ${context.getInstance().getNdcNodeJsLambdaSdkVersion()}. Using the latest version (${latestNdcNodeJsLambdaSdkVersion}) instead`,
98-
);
99-
return latestNdcNodeJsLambdaSdkVersion;
98+
logger.fatal("Error while downloading dependency @hasura/ndc-lambda-sdk", e);
99+
exit(1);
100100
}
101101
}
102-
103-
async function getLatestNdcNodeJsLambdaSdkVersion(): Promise<SemVer> {
104-
const ndcNodeJsLambdaPackageManifest = await pacote.manifest(
105-
`@hasura/ndc-lambda-sdk`,
106-
{},
107-
);
108-
109-
return new SemVer(ndcNodeJsLambdaPackageManifest.version);
110-
}

0 commit comments

Comments
 (0)