Browse Source

Organized all env in env.js file. It allows us to overwrite these values.

pull/7/head
Roman Axelrod 3 years ago
parent
commit
cdbb4d3064
  1. 18
      env.js
  2. 12
      helpers.js
  3. 10
      package.json
  4. 3
      server.js

18
env.js

@ -0,0 +1,18 @@
import path from 'path';
/**
* Since this file overwrites environment variables from `config` lib.
* It's important to "import" this file before all scripts in entry point file, especially before `config`.
*/
process.env.NODE_CONFIG_DIR = path.join(process.env.PROJECT_PATH ?? '', process.env.BLOCK_NAME ?? '', 'config');
/**
* Export constant variables
*/
export const PRODUCTION_REGISTRY_URL = 'https://blocks-registery.axe-web.com';
export const IS_DEV = process.env.NODE_ENV === 'development';
export const BLOCK_NAME = process.env.BLOCK_NAME;
export const MODULE_PATH = process.env.MODULE_PATH ?? 'node_modules/block-dev-tool';
export const PROJECT_PATH = process.env.PROJECT_PATH ? path.join(process.env.PROJECT_PATH, BLOCK_NAME) : '';

12
helpers.js

@ -1,4 +1,5 @@
import path from 'path';
import {BLOCK_NAME, IS_DEV, MODULE_PATH, PROJECT_PATH} from "./env.js";
import config from 'config';
import {fileURLToPath} from 'url';
import memFs from 'mem-fs';
@ -13,14 +14,11 @@ const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
export function getConfigs() {
const isDev = process.env.NODE_ENV === 'development'; // Check README file in case you get "missing files" error.
const developmentBlockName = process.env.BLOCK_NAME;
return {
isDev,
developmentBlockName,
modulesPath: process.env.MODULE_PATH ?? (isDev ? '' : 'node_modules/block-dev-tool'),
projectPath: process.env.PROJECT_PATH ?? (isDev ? path.join('blocks', developmentBlockName) : ''),
isDev: IS_DEV,
developmentBlockName: BLOCK_NAME,
modulesPath: MODULE_PATH,
projectPath: PROJECT_PATH,
};
}

10
package.json

@ -7,13 +7,11 @@
"url": "https://axe-web.com/"
},
"scripts": {
"start": "component-dev",
"info": "node debug.js",
"dev": "NODE_ENV=development NODE_CONFIG_DIR=blocks/header/config BLOCK_NAME=header node server.js",
"build": "rollup --config rollup.config.js",
"build-platform": "NODE_ENV=development NODE_CONFIG_DIR=blocks/header/config BLOCK_NAME=header node ./build.js",
"build-platform-cli": "component-build",
"dev-js": "NODE_ENV=development rollup --config rollup.config.js --watch"
"dev": "NODE_ENV=development BLOCK_NAME=header MODULE_PATH= PROJECT_PATH=blocks node server.js",
"build-platform": "NODE_ENV=development BLOCK_NAME=header MODULE_PATH= PROJECT_PATH=blocks node ./build.js",
"dev-dev-tool": "NODE_ENV=development rollup --config rollup.config.js --watch",
"build-dev-tool": "rollup --config rollup.config.js"
},
"license": "ISC",
"type": "module",

3
server.js

@ -1,5 +1,6 @@
#!/usr/bin/env node
import {PRODUCTION_REGISTRY_URL} from "./env.js";
import path from 'path';
import fetch from "node-fetch";
import express from 'express';
@ -25,8 +26,6 @@ import PluginError from 'plugin-error';
* Constants
*/
const PRODUCTION_REGISTRY_URL = 'https://blocks-registery.axe-web.com';
const {isDev, modulesPath, projectPath, developmentBlockName} = getConfigs();
const blocksRegistry = isDev ? 'http://localhost:3020' : PRODUCTION_REGISTRY_URL;

Loading…
Cancel
Save