diff --git a/src/cli/commands/repo/version.js b/src/cli/commands/repo/version.js index 462a571da2..4975a2692e 100644 --- a/src/cli/commands/repo/version.js +++ b/src/cli/commands/repo/version.js @@ -10,11 +10,12 @@ module.exports = { builder: {}, handler (argv) { - argv.ipfs.repo.version(function (err, version) { + argv.ipfs.repo.version((err, data) => { if (err) { throw err } - print(version) + + print(data.Version) }) } } diff --git a/src/http/api/resources/repo.js b/src/http/api/resources/repo.js index ccacec309b..daaf4b14d3 100644 --- a/src/http/api/resources/repo.js +++ b/src/http/api/resources/repo.js @@ -1 +1,20 @@ 'use strict' + +exports = module.exports + +exports.version = (request, reply) => { + const ipfs = request.server.app.ipfs + + ipfs.repo.version((err, version) => { + if (err) { + return reply({ + Message: err.toString(), + Code: 0 + }).code(500) + } + + reply({ + Version: version + }) + }) +} diff --git a/src/http/api/routes/index.js b/src/http/api/routes/index.js index 6e26962908..4c6d333d0f 100644 --- a/src/http/api/routes/index.js +++ b/src/http/api/routes/index.js @@ -6,7 +6,7 @@ module.exports = (server) => { require('./bootstrap')(server) require('./block')(server) require('./object')(server) - // require('./repo')(server) + require('./repo')(server) require('./config')(server) require('./swarm')(server) require('./bitswap')(server) diff --git a/src/http/api/routes/repo.js b/src/http/api/routes/repo.js index f42f03bfc1..1dca9b6596 100644 --- a/src/http/api/routes/repo.js +++ b/src/http/api/routes/repo.js @@ -2,13 +2,16 @@ const resources = require('./../resources') -// TODO module.exports = (server) => { const api = server.select('API') api.route({ method: '*', - path: '/api/v0/repo', - handler: resources.repo + path: '/api/v0/repo/version', + config: { + handler: resources.repo.version + } }) + + // TODO: implement the missing spec https://github.com/ipfs/interface-ipfs-core/blob/master/SPEC/REPO.md }