Skip to content

Commit 56d4f5a

Browse files
Merge pull request #2124 from contentstack/fix/DX-3539
fix: refresh token issue with custom region(dev, stage)
2 parents ffcc0bb + 68b7ef6 commit 56d4f5a

File tree

5 files changed

+29
-6
lines changed

5 files changed

+29
-6
lines changed

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/contentstack-utilities/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@contentstack/cli-utilities",
3-
"version": "1.14.1",
3+
"version": "1.14.2",
44
"description": "Utilities for contentstack projects",
55
"main": "lib/index.js",
66
"types": "lib/index.d.ts",

packages/contentstack-utilities/src/auth-handler.ts

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,12 @@ class AuthHandler {
3737
private oauthHandler: any;
3838
private managementAPIClient: ContentstackClient;
3939
private isRefreshingToken: boolean = false; // Flag to track if a refresh operation is in progress
40+
private cmaHost: string;
4041

4142
set host(contentStackHost) {
4243
this._host = contentStackHost;
44+
// Update cmaHost when host is set
45+
this.cmaHost = this.getCmaHost();
4346
}
4447

4548
constructor() {
@@ -76,6 +79,24 @@ class AuthHandler {
7679
this.authorisationTypeKeyName,
7780
],
7881
};
82+
this.cmaHost = this.getCmaHost();
83+
}
84+
85+
private getCmaHost(): string {
86+
if (this._host) {
87+
return this._host;
88+
}
89+
90+
const cma = configHandler.get('region')?.cma;
91+
if (cma && cma.startsWith('http')) {
92+
try {
93+
const u = new URL(cma);
94+
if (u.host) return u.host;
95+
} catch (error) {
96+
// If URL parsing fails, return the original cma value
97+
}
98+
}
99+
return cma;
79100
}
80101
initLog() {
81102
this.logger = new LoggerService(process.cwd(), 'cli-log');
@@ -91,7 +112,9 @@ class AuthHandler {
91112
}
92113

93114
async initSDK() {
94-
this.managementAPIClient = await managementSDKClient({ host: this._host });
115+
// Ensure we have a valid host for the SDK initialization
116+
const host = this._host || this.getCmaHost();
117+
this.managementAPIClient = await managementSDKClient({ host });
95118
this.oauthHandler = this.managementAPIClient.oauth({
96119
appId: this.OAuthAppId,
97120
clientId: this.OAuthClientId,

packages/contentstack/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
"@contentstack/cli-config": "~1.15.2",
3939
"@contentstack/cli-launch": "^1.9.2",
4040
"@contentstack/cli-migration": "~1.8.1",
41-
"@contentstack/cli-utilities": "~1.14.1",
41+
"@contentstack/cli-utilities": "~1.14.2",
4242
"@contentstack/cli-variants": "~1.3.1",
4343
"@contentstack/management": "~1.22.0",
4444
"@oclif/core": "^4.3.0",

pnpm-lock.yaml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)