Skip to content

Commit 84e6163

Browse files
authored
Merge pull request #160 from gitopia/fallback-storage-provider
Fallback storage provider
2 parents fa12ee6 + 387fc95 commit 84e6163

4 files changed

Lines changed: 24 additions & 2 deletions

File tree

.env.development

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,5 @@ NEXT_PUBLIC_REWARD_SERVICE_URL=http://$BASE_ADDRESS:10500
2727
NEXT_PUBLIC_REWARD_START=1694802600
2828
NEXT_PUBLIC_REWARD_DEADLINE=1700073000
2929
NEXT_PUBLIC_FEE_GRANTER=gitopia12sjhqc3rqgvu3zpg8ekmwl005rp4ys58ekqg89
30-
NEXT_PUBLIC_NETWORK_TYPE=testnet
30+
NEXT_PUBLIC_NETWORK_TYPE=testnet
31+
NEXT_PUBLIC_FALLBACK_STORAGE_PROVIDER=gitopia15nv5vf6fmww8cxr6emrzxjvj36x5n8xvsxsqpw

.env.production

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,5 @@ NEXT_PUBLIC_REWARD_SERVICE_URL=
2828
NEXT_PUBLIC_REWARD_START=1694802600
2929
NEXT_PUBLIC_REWARD_DEADLINE=1700073000
3030
NEXT_PUBLIC_FEE_GRANTER=
31-
NEXT_PUBLIC_NETWORK_TYPE=mainnet
31+
NEXT_PUBLIC_NETWORK_TYPE=mainnet
32+
NEXT_PUBLIC_FALLBACK_STORAGE_PROVIDER=gitopia15nv5vf6fmww8cxr6emrzxjvj36x5n8xvsxsqpw

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
## Changelog
22

3+
### v4.1.0 - 16th Sep 2025
4+
5+
- Implement fallback storage provider
6+
37
### v4.0.0 - 8th Sep 2025
48

59
- Upgrade to gitopia-js v3.0.0

context/ApiClientContext.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,22 @@ export const ApiClientProvider = ({ children }) => {
104104
return provider;
105105
}
106106
}
107+
108+
// Fallback to specific storage provider when no active provider is found
109+
try {
110+
const fallbackAddress = process.env.NEXT_PUBLIC_FALLBACK_STORAGE_PROVIDER;
111+
if (fallbackAddress) {
112+
const fallbackRes = await client.queryProvider(fallbackAddress);
113+
if (fallbackRes.data.provider) {
114+
const fallbackProvider = fallbackRes.data.provider;
115+
setActiveStorageProvider(fallbackProvider);
116+
return fallbackProvider;
117+
}
118+
}
119+
} catch (error) {
120+
console.warn("Failed to query fallback storage provider:", error);
121+
}
122+
107123
return null;
108124
};
109125

0 commit comments

Comments
 (0)