Skip to content

Commit

Permalink
cardano-graphql 5 with ogmios.
Browse files Browse the repository at this point in the history
  • Loading branch information
jbgi committed Jul 22, 2021
1 parent 1e4906c commit 1a5d9ad
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 15 deletions.
4 changes: 2 additions & 2 deletions globals-defaults.nix
Expand Up @@ -36,13 +36,13 @@ in {
explorerActiveBackends = [ "a" ];
explorer9 = {
cardano-db-sync = sourcePaths.cardano-db-sync-9;
cardano-explorer-app = sourcePaths."cardano-explorer-app-1.5";
cardano-graphql = sourcePaths.cardano-graphql-4;
cardano-explorer-app = sourcePaths."cardano-explorer-app-1.5";
};
explorer10 = {
cardano-db-sync = sourcePaths.cardano-db-sync-10;
cardano-graphql = sourcePaths.cardano-graphql-5;
cardano-explorer-app = sourcePaths.cardano-explorer-app-next;
cardano-graphql = sourcePaths.cardano-graphql-next;
};
explorerBackendsInContainers = false;

Expand Down
28 changes: 20 additions & 8 deletions nix/sources.json
Expand Up @@ -77,10 +77,10 @@
"homepage": "",
"owner": "input-output-hk",
"repo": "cardano-explorer-app",
"rev": "351acc63df0b67be3762a189f7e344dcb729ca36",
"sha256": "04z68rrishc8xr6nwrml00lhq6b8w227c0x18chgikc5gl6idb0y",
"rev": "e724b49dd6eb19f3a9cb891ec416245a24bfcc18",
"sha256": "1vjzva3y4ml74zx3rsdqqlkkhszvx69fx3zy4n82v17mh7al4475",
"type": "tarball",
"url": "https://github.com/input-output-hk/cardano-explorer-app/archive/351acc63df0b67be3762a189f7e344dcb729ca36.tar.gz",
"url": "https://github.com/input-output-hk/cardano-explorer-app/archive/e724b49dd6eb19f3a9cb891ec416245a24bfcc18.tar.gz",
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
},
"cardano-faucet": {
Expand Down Expand Up @@ -108,16 +108,16 @@
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz",
"version": "cc7f4ddf78182fb14c8d34516e6c72408ad3eb35o"
},
"cardano-graphql-next": {
"branch": "chore/cardano-db-sync-10-compat",
"cardano-graphql-5": {
"branch": "5-0-stable",
"description": "GraphQL API for Cardano",
"homepage": "",
"owner": "input-output-hk",
"repo": "cardano-graphql",
"rev": "efa008c3ea0a2c98bee2aa40afeaeba2b5b3e3f3",
"sha256": "10dd4zsbz2nhv4s2x5yf1zkfw1kskvr8nswikdlb5lc9r73igs5f",
"rev": "5bf38f09a5758709616f76986c10d5d6ffbf33d8",
"sha256": "1kdnbibf5ah2y9l70sxz0ddm1878f9r8jjsnfl0hizj5hhnlksf7",
"type": "tarball",
"url": "https://github.com/input-output-hk/cardano-graphql/archive/efa008c3ea0a2c98bee2aa40afeaeba2b5b3e3f3.tar.gz",
"url": "https://github.com/input-output-hk/cardano-graphql/archive/5bf38f09a5758709616f76986c10d5d6ffbf33d8.tar.gz",
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz",
"version": "cc7f4ddf78182fb14c8d34516e6c72408ad3eb35o"
},
Expand Down Expand Up @@ -193,6 +193,18 @@
"url": "https://github.com/input-output-hk/offchain-metadata-tools/archive/dd052829f0f070f91edd67cffe073db1622ea55d.tar.gz",
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
},
"ogmios": {
"branch": "refs/tags/v4.0.0-beta.4",
"description": " ❇️ A JSON-WSP WebSocket bridge for cardano-node",
"homepage": "https://ogmios.dev",
"owner": "CardanoSolutions",
"repo": "ogmios",
"rev": "a2a92ee54b08e9b8b3c8cc95ea4f4c4d83904579",
"sha256": "1qgrqw31wd0jpxcn0jaih8dmsr6446rqcy8zqgh2wrylfncpznap",
"type": "tarball",
"url": "https://github.com/CardanoSolutions/ogmios/archive/a2a92ee54b08e9b8b3c8cc95ea4f4c4d83904579.tar.gz",
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
},
"ops-lib": {
"branch": "master",
"description": "NixOps deployment configuration library for IOHK devops ",
Expand Down
27 changes: 22 additions & 5 deletions roles/explorer.nix
Expand Up @@ -5,9 +5,12 @@ let
maintenanceMode = false;
cfg = config.services.cardano-db-sync;
nodeCfg = config.services.cardano-node;
ogmiosCfg = config.services.cardano-ogmios;
nodeId = config.node.nodeId;
getSrc = name: variant.${name} or sourcePaths.${name};

cardanoNodeConfigPath = builtins.toFile "cardano-node-config.json" (builtins.toJSON nodeCfg.nodeConfig);

dbSyncPkgs = let s = getSrc "cardano-db-sync"; in import (s + "/nix") { gitrev = s.rev; };
inherit (dbSyncPkgs) cardanoDbSyncHaskellPackages;
inherit (cardanoDbSyncHaskellPackages.cardano-db-sync.components.exes) cardano-db-sync;
Expand All @@ -18,11 +21,12 @@ let
cardano-explorer-app-pkgs = import (getSrc "cardano-explorer-app");
in {
imports = [
((getSrc "cardano-graphql") + "/nix/nixos")
cardano-ops.modules.cardano-postgres
cardano-ops.modules.base-service
((sourcePaths.cardano-db-sync-service or (getSrc "cardano-db-sync")) + "/nix/nixos")
((getSrc "ogmios") + "/nix/nixos")
((getSrc "cardano-graphql") + "/nix/nixos")
((getSrc "cardano-rosetta") + "/nix/nixos")
cardano-ops.modules.base-service
cardano-ops.modules.cardano-postgres
];

environment.systemPackages = with pkgs; [
Expand Down Expand Up @@ -51,15 +55,23 @@ in {
'';
};

services.cardano-ogmios = {
enable = true;
nodeConfig = cardanoNodeConfigPath;
nodeSocketPath = nodeCfg.socketPath;
hostAddr = "127.0.0.1";
};

services.graphql-engine.enable = true;
services.cardano-graphql = {
enable = true;
inherit cardanoNodeConfigPath;
genesisByron = nodeCfg.nodeConfig.ByronGenesisFile;
genesisShelley = nodeCfg.nodeConfig.ShelleyGenesisFile;
allowListPath = cardano-explorer-app-pkgs.allowList;
cardanoNodeSocketPath = nodeCfg.socketPath;
cardanoNodeConfigPath = builtins.toFile "cardano-node-config.json" (builtins.toJSON nodeCfg.nodeConfig);
metadataServerUri = globals.environmentConfig.metadataUrl or null;
ogmiosHost = ogmiosCfg.hostAddr;
ogmiosPort = ogmiosCfg.port;
};

services.cardano-rosetta-server = {
Expand Down Expand Up @@ -109,6 +121,11 @@ in {
RestartSec = "30s";
};

systemd.services.cardano-ogmios.serviceConfig = {
User = "cexplorer";
SupplementaryGroups = "cardano-node";
};

systemd.services.cardano-rosetta-server.serviceConfig = {
User = "cexplorer";
SupplementaryGroups = "cardano-node";
Expand Down

0 comments on commit 1a5d9ad

Please sign in to comment.