From fb1fb5eaa38d3a444b49d8af4360e0ace26a7081 Mon Sep 17 00:00:00 2001 From: Troy McConaghy Date: Thu, 29 Nov 2018 09:12:09 +0100 Subject: [PATCH 1/7] Removed only instance of "Tribe" in this repo @dgossen said he's not comfortable using "tribe" and I agree. @aaitor When I asked Trent about this, he said we might use "tribe" internally and informally, but it shouldn't be used in official communications. --- content/concepts/terminology.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/concepts/terminology.md b/content/concepts/terminology.md index 61dcf15e..194077b8 100644 --- a/content/concepts/terminology.md +++ b/content/concepts/terminology.md @@ -23,7 +23,7 @@ Note: Initially, most publishers will also be the owners of the data assets they Someone who wants assets. An example is a data scientist working at an economic think tank. -## Marketplace or Tribe +## Marketplace A service where publishers can list what assets they have, and consumers can see what's available then buy it (or get it for free). The Ocean network supports many marketplaces/tribes. From 8436c3d884ea1cd9937c2595abe5f83aa4cab025 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Thu, 29 Nov 2018 10:36:57 +0100 Subject: [PATCH 2/7] activate indexing --- src/components/Seo.jsx | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/components/Seo.jsx b/src/components/Seo.jsx index f39a235f..883468f8 100644 --- a/src/components/Seo.jsx +++ b/src/components/Seo.jsx @@ -83,8 +83,6 @@ const MetaTags = ({ {title && {title}} - - {/* General tags */} From d3e75d7f54df188ede2d50078aecf2ddac5de898 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Thu, 29 Nov 2018 10:37:58 +0100 Subject: [PATCH 3/7] activate search engine ping on live deployments --- scripts/deploy.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/deploy.sh b/scripts/deploy.sh index 1f668938..e67584fa 100755 --- a/scripts/deploy.sh +++ b/scripts/deploy.sh @@ -51,9 +51,9 @@ elif [ "$TRAVIS_BRANCH" == "master" ] && [ "$TRAVIS_PULL_REQUEST" == "false" ] | # ping search engines # returns: HTTP_STATUSCODE URL - # curl -sL -w "%{http_code} %{url_effective}\\n" \ - # "http://www.google.com/webmasters/tools/ping?sitemap=$SITEMAP_URL" -o /dev/null \ - # "http://www.bing.com/webmaster/ping.aspx?siteMap=$SITEMAP_URL" -o /dev/null + curl -sL -w "%{http_code} %{url_effective}\\n" \ + "http://www.google.com/webmasters/tools/ping?sitemap=$SITEMAP_URL" -o /dev/null \ + "http://www.bing.com/webmaster/ping.aspx?siteMap=$SITEMAP_URL" -o /dev/null echo "---------------------------------------------" echo " ✓ done deployment " From 524174a7c0c4a0a5f9ac5f000b24dc6d5fd3a240 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Thu, 29 Nov 2018 10:47:42 +0100 Subject: [PATCH 4/7] create redirects for root of sections * ref #32 --- config.js | 16 +++++++++++++++- gatsby-node.js | 18 +++++++++++++++++- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/config.js b/config.js index 469a07bb..61d93973 100644 --- a/config.js +++ b/config.js @@ -18,5 +18,19 @@ module.exports = { githubContentPath: 'https://github.com/oceanprotocol/docs/blob/master/content', githubDevOceanPath: - 'https://github.com/oceanprotocol/dev-ocean/blob/master/doc' + 'https://github.com/oceanprotocol/dev-ocean/blob/master/doc', + redirects: [ + { + from: '/concepts/', + to: '/concepts/introduction/' + }, + { + from: '/setup/', + to: '/setup/quickstart/' + }, + { + from: '/tutorials/', + to: '/tutorials/introduction/' + } + ] } diff --git a/gatsby-node.js b/gatsby-node.js index f393bf48..a9b002f1 100755 --- a/gatsby-node.js +++ b/gatsby-node.js @@ -1,5 +1,8 @@ +/* eslint-disable no-console */ + const path = require('path') const { createFilePath } = require('gatsby-source-filesystem') +const { redirects } = require('./config') exports.onCreateNode = ({ node, getNode, actions }) => { const { createNodeField } = actions @@ -34,7 +37,20 @@ exports.onCreateNode = ({ node, getNode, actions }) => { } exports.createPages = ({ graphql, actions }) => { - const { createPage } = actions + const { createPage, createRedirect } = actions + + // + // create redirects + // + redirects.forEach(({ from, to }) => { + createRedirect({ + fromPath: from, + redirectInBrowser: true, + toPath: to + }) + + console.log('Create redirect: ' + from + ' --> ' + to) + }) return new Promise((resolve, reject) => { resolve( From 01b692fab0c30358850bc9868d49bec271778f37 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Thu, 29 Nov 2018 10:53:35 +0100 Subject: [PATCH 5/7] move redirects into promise resolver --- gatsby-node.js | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/gatsby-node.js b/gatsby-node.js index a9b002f1..875525fd 100755 --- a/gatsby-node.js +++ b/gatsby-node.js @@ -39,19 +39,6 @@ exports.onCreateNode = ({ node, getNode, actions }) => { exports.createPages = ({ graphql, actions }) => { const { createPage, createRedirect } = actions - // - // create redirects - // - redirects.forEach(({ from, to }) => { - createRedirect({ - fromPath: from, - redirectInBrowser: true, - toPath: to - }) - - console.log('Create redirect: ' + from + ' --> ' + to) - }) - return new Promise((resolve, reject) => { resolve( graphql( @@ -138,6 +125,19 @@ exports.createPages = ({ graphql, actions }) => { }) }) + // + // create redirects + // + redirects.forEach(({ from, to }) => { + createRedirect({ + fromPath: from, + redirectInBrowser: true, + toPath: to + }) + + console.log('Create redirect: ' + from + ' --> ' + to) + }) + resolve() }) ) From 50f1381307be699410a603c7d95c911203478291 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Thu, 29 Nov 2018 10:59:38 +0100 Subject: [PATCH 6/7] pages cleanup, remove /test from sitemap --- gatsby-config.js | 7 ++++- src/pages/setup.js | 57 ---------------------------------------- src/pages/tutorials.js | 59 ------------------------------------------ 3 files changed, 6 insertions(+), 117 deletions(-) delete mode 100644 src/pages/setup.js delete mode 100644 src/pages/tutorials.js diff --git a/gatsby-config.js b/gatsby-config.js index 6464be02..05268c46 100755 --- a/gatsby-config.js +++ b/gatsby-config.js @@ -128,7 +128,12 @@ module.exports = { }, 'gatsby-plugin-catch-links', 'gatsby-plugin-react-helmet', - 'gatsby-plugin-sitemap', + { + resolve: 'gatsby-plugin-sitemap', + options: { + exclude: ['/test/'] + } + }, { resolve: 'gatsby-plugin-manifest', options: { diff --git a/src/pages/setup.js b/src/pages/setup.js deleted file mode 100644 index 8b036448..00000000 --- a/src/pages/setup.js +++ /dev/null @@ -1,57 +0,0 @@ -import React from 'react' -import PropTypes from 'prop-types' -import { Link, graphql } from 'gatsby' -import Layout from '../components/Layout' -import HeaderSection from '../components/HeaderSection' -import Content from '../components/Content' - -const SetupIndexPage = ({ data, location }) => { - const { edges } = data.allMarkdownRemark - - const SetupList = edges.map(({ node }) => { - const { title } = node.frontmatter - const { slug } = node.fields - - return ( -
  • - {title} -
  • - ) - }) - - return ( - - - -
      {SetupList}
    -
    -
    - ) -} - -export default SetupIndexPage - -SetupIndexPage.propTypes = { - data: PropTypes.object.isRequired, - location: PropTypes.object.isRequired -} - -export const indexQuery = graphql` - query { - allMarkdownRemark(filter: { fields: { section: { eq: "setup" } } }) { - edges { - node { - id - html - excerpt(pruneLength: 250) - frontmatter { - title - } - fields { - slug - } - } - } - } - } -` diff --git a/src/pages/tutorials.js b/src/pages/tutorials.js deleted file mode 100644 index 5981d70c..00000000 --- a/src/pages/tutorials.js +++ /dev/null @@ -1,59 +0,0 @@ -import React from 'react' -import PropTypes from 'prop-types' -import { Link, graphql } from 'gatsby' -import Layout from '../components/Layout' -import HeaderSection from '../components/HeaderSection' -import Content from '../components/Content' - -const TutorialsIndexPage = ({ data, location }) => { - const { edges } = data.allMarkdownRemark - - const TutorialsList = edges.map(({ node }) => { - const { title } = node.frontmatter - const { slug } = node.fields - - return ( -
  • - {title} -
  • - ) - }) - - return ( - - - -
      {TutorialsList}
    -
    -
    - ) -} - -export default TutorialsIndexPage - -TutorialsIndexPage.propTypes = { - data: PropTypes.object.isRequired, - location: PropTypes.object.isRequired -} - -export const indexQuery = graphql` - query { - allMarkdownRemark( - filter: { fields: { section: { eq: "tutorials" } } } - ) { - edges { - node { - id - html - excerpt(pruneLength: 250) - frontmatter { - title - } - fields { - slug - } - } - } - } - } -` From 9920d75ac41bfa35cfced4fac7c23984a72ec338 Mon Sep 17 00:00:00 2001 From: Troy McConaghy Date: Thu, 29 Nov 2018 11:17:44 +0100 Subject: [PATCH 7/7] Add caveat re/ marketplace setup Also update what's said about the testnets, and link to the new page about testnets. --- content/setup/marketplace.md | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/content/setup/marketplace.md b/content/setup/marketplace.md index ade6ca6c..592fe3c1 100644 --- a/content/setup/marketplace.md +++ b/content/setup/marketplace.md @@ -8,7 +8,9 @@ If you want to set up and run a marketplace in the Ocean network, then at a tech 1. Develop a marketplace application (app). 2. Run your marketplace app in production. -**Note: In the early days of the Ocean network, there won't be many marketplaces or publishers, so marketplaces will often also act as publishers.** +**Note 1: At the time of writing (late November 2018), it was _possible_ to start developing a marketplace, but very challenging. We anticipate that it will become much easier in December 2018, especially once the docker-images scripts and Docker Compose files are refactored.** + +**Note 2: In the early days of the Ocean network, there won't be many marketplaces or publishers, so marketplaces will often also act as publishers.** ## Develop a Marketplace App @@ -39,16 +41,11 @@ Of course, you could always write your own Squid library in the language of your ## Run Your Marketplace App in Production -Before running your marketplace app in production on the Ocean Mainnet, you may want to test it on the Ocean Testnet. -The Ocean Testnet is similar to the Ocean Mainnet. -The main difference is that there is less risk on the Ocean Testnet. +Before running your marketplace app in production with the Ocean Mainnet, you may want to test it with an Ocean Testnet. +The Ocean Testnets are similar to the Ocean Mainnet. +The main difference is that there is less risk on the Ocean Testnets. -**Note: At the time of writing, the Ocean Mainnet hadn't gone live yet, but the Trilobite Testnet was about to go live.** - -Some technical differences between local testing and connecting to a live external test/mainnet are: - -- Local Keeper nodes (Parity user nodes) must connect to the live network of Keepers. -- Your Aquarius and Brizo instances must connect to the live Ocean Secret Store network. +**Note: At the time of writing, the Ocean Mainnet hadn't gone live yet, but the testnets were about to go live. See [the page about testnets](/concepts/testnets/).** Of course, there are many other things that must be handled for live production apps: