From e3be76fb951531f1f856dea0e379ea2687f492b3 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Tue, 24 Sep 2019 12:20:08 +0200 Subject: [PATCH] move IPFS config for client & server --- .travis.yml | 6 ++++++ client/.env.local.example | 3 ++- client/src/config.ts | 3 +++ client/src/routes/Publish/Files/Ipfs/Form.tsx | 8 ++++++- .../Publish/Files/Ipfs/Status.module.scss | 14 ++++++++++--- .../src/routes/Publish/Files/Ipfs/Status.tsx | 10 +++++++-- .../src/routes/Publish/Files/Ipfs/index.tsx | 21 ++++++++++++------- server/.env.example | 2 +- server/src/config.ts | 2 +- server/src/routes/UrlCheckRouter.ts | 2 +- 10 files changed, 54 insertions(+), 17 deletions(-) diff --git a/.travis.yml b/.travis.yml index 895dc4f..13491a8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -26,6 +26,12 @@ env: - REACT_APP_SECRET_STORE_URI="http://localhost:12001" - REACT_APP_FAUCET_URI="http://localhost:3001" - REACT_APP_BRIZO_ADDRESS="0x068ed00cf0441e4829d9784fcbe7b9e26d4bd8d0" + + # IPFS client & server config + - REACT_APP_IPFS_GATEWAY_URI="https://ipfs.dev-ocean.com" + # - REACT_APP_IPFS_NODE_URI="https://ipfs.dev-ocean.com:5050" + - IPFS_GATEWAY_URI="https://ipfs.dev-ocean.com" + # start Barge with these versions - BRIZO_VERSION=v0.4.4 - AQUARIUS_VERSION=v0.3.8 diff --git a/client/.env.local.example b/client/.env.local.example index afc8d91..e60bf8f 100644 --- a/client/.env.local.example +++ b/client/.env.local.example @@ -59,4 +59,5 @@ REACT_APP_REPORT_EMAIL="test@example.com" # REACT_APP_SHOW_CHANNELS=true # REACT_APP_ALLOW_PRICING=true # REACT_APP_SHOW_REQUEST_TOKENS_BUTTON=true -# REACT_APP_IPFS_GATEWAY_URI="https://gateway.ipfs.io" +# REACT_APP_IPFS_GATEWAY_URI="https://ipfs.oceanprotocol.com" +# REACT_APP_IPFS_NODE_URI="https://ipfs.oceanprotocol.com:5050" diff --git a/client/src/config.ts b/client/src/config.ts index 9439cab..67809d6 100644 --- a/client/src/config.ts +++ b/client/src/config.ts @@ -38,3 +38,6 @@ export const showRequestTokens = // https://ipfs.github.io/public-gateway-checker/ export const ipfsGatewayUri = process.env.REACT_APP_IPFS_GATEWAY_URI || 'https://gateway.ipfs.io' + +export const ipfsNodeUri = + process.env.REACT_APP_IPFS_NODE_URI || 'https://ipfs.infura.io:5001' diff --git a/client/src/routes/Publish/Files/Ipfs/Form.tsx b/client/src/routes/Publish/Files/Ipfs/Form.tsx index c70e86b..94bba00 100644 --- a/client/src/routes/Publish/Files/Ipfs/Form.tsx +++ b/client/src/routes/Publish/Files/Ipfs/Form.tsx @@ -7,11 +7,13 @@ export default function Form({ children, ipfsMessage, ipfsError, + isIpfsReady, error }: { children: any ipfsMessage: string ipfsError?: string + isIpfsReady: boolean error?: string }) { return ( @@ -20,7 +22,11 @@ export default function Form({ Add File To IPFS {children} - + ) } diff --git a/client/src/routes/Publish/Files/Ipfs/Status.module.scss b/client/src/routes/Publish/Files/Ipfs/Status.module.scss index 5f39cff..2e12931 100644 --- a/client/src/routes/Publish/Files/Ipfs/Status.module.scss +++ b/client/src/routes/Publish/Files/Ipfs/Status.module.scss @@ -10,10 +10,18 @@ width: .5rem; height: .5rem; display: inline-block; - background: $green; + background: $yellow; border-radius: 50%; - margin-right: $spacer / 4; - margin-bottom: .05rem; + margin-right: $spacer / 6; + margin-bottom: .1rem; + } +} + +.success { + composes: message; + + &:before { + background: $green; } } diff --git a/client/src/routes/Publish/Files/Ipfs/Status.tsx b/client/src/routes/Publish/Files/Ipfs/Status.tsx index 7475436..a6c1b8c 100644 --- a/client/src/routes/Publish/Files/Ipfs/Status.tsx +++ b/client/src/routes/Publish/Files/Ipfs/Status.tsx @@ -3,11 +3,17 @@ import styles from './Status.module.scss' export default function Status({ message, - error + error, + isIpfsReady }: { message: string error?: string + isIpfsReady: boolean }) { - const classes = error ? styles.error : styles.message + const classes = isIpfsReady + ? styles.success + : error + ? styles.error + : styles.message return
{message}
} diff --git a/client/src/routes/Publish/Files/Ipfs/index.tsx b/client/src/routes/Publish/Files/Ipfs/index.tsx index c6cd6ed..0a2455d 100644 --- a/client/src/routes/Publish/Files/Ipfs/index.tsx +++ b/client/src/routes/Publish/Files/Ipfs/index.tsx @@ -4,17 +4,19 @@ import useIpfsApi, { IpfsConfig } from '../../../../hooks/use-ipfs-api' import Spinner from '../../../../components/atoms/Spinner' import Dropzone from '../../../../components/molecules/Dropzone' import { formatBytes, pingUrl, readFileAsync } from '../../../../utils/utils' -import { ipfsGatewayUri } from '../../../../config' +import { ipfsGatewayUri, ipfsNodeUri } from '../../../../config' import Form from './Form' -const config: IpfsConfig = { - host: 'ipfs.infura.io', - port: '5001', - protocol: 'https' +const { hostname, port, protocol } = new URL(ipfsNodeUri) + +const ipfsConfig: IpfsConfig = { + host: hostname, + port, + protocol: protocol.replace(':', '') } export default function Ipfs({ addFile }: { addFile(url: string): void }) { - const { ipfs, isIpfsReady, ipfsError, ipfsMessage } = useIpfsApi(config) + const { ipfs, isIpfsReady, ipfsError, ipfsMessage } = useIpfsApi(ipfsConfig) const [loading, setLoading] = useState(false) const [message, setMessage] = useState('') const [fileSize, setFileSize] = useState('') @@ -80,7 +82,12 @@ export default function Ipfs({ addFile }: { addFile(url: string): void }) { } return ( -
+ {loading ? ( ) : ( diff --git a/server/.env.example b/server/.env.example index 53927a2..58cf1cc 100644 --- a/server/.env.example +++ b/server/.env.example @@ -1,2 +1,2 @@ SENDGRID_API_KEY='xxx' -IPFS_GATEWAY_URL='https://gateway.ipfs.io' +IPFS_GATEWAY_URI='https://ipfs.dev-ocean.com' diff --git a/server/src/config.ts b/server/src/config.ts index 9f44d55..751b86b 100644 --- a/server/src/config.ts +++ b/server/src/config.ts @@ -3,7 +3,7 @@ import 'dotenv/config' const config = { app: { port: 4000 }, sendgridApiKey: process.env.SENDGRID_API_KEY, - ipfsGatewayUrl: process.env.IPFS_GATEWAY_URL || 'https://gateway.ipfs.io' + ipfsGatewayUri: process.env.IPFS_GATEWAY_URI || 'https://gateway.ipfs.io' } export default config diff --git a/server/src/routes/UrlCheckRouter.ts b/server/src/routes/UrlCheckRouter.ts index 533f18e..39364f5 100644 --- a/server/src/routes/UrlCheckRouter.ts +++ b/server/src/routes/UrlCheckRouter.ts @@ -22,7 +22,7 @@ export class UrlCheckRouter { // map native IPFS URLs to gateway URLs if (url.includes('ipfs://')) { const cid = url.split('ipfs://')[1] - url = `${config.ipfsGatewayUrl}/ipfs/${cid}` + url = `${config.ipfsGatewayUri}/ipfs/${cid}` } request(