diff --git a/packages/cli/package.json b/packages/cli/package.json index 0cdbc2c86df5..657068a160bb 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -19,6 +19,7 @@ "concurrently": "^5.1.0", "core-js": "3.6.4", "dotenv-defaults": "^1.1.1", + "envinfo": "^7.5.0", "execa": "^4.0.0", "listr": "^0.14.3", "listr-verbose-renderer": "^0.6.0", diff --git a/packages/cli/src/commands/info.js b/packages/cli/src/commands/info.js new file mode 100644 index 000000000000..9235f79a1873 --- /dev/null +++ b/packages/cli/src/commands/info.js @@ -0,0 +1,23 @@ +// inspired by gatsby/packages/gatsby-cli/src/create-cli.js and +// and gridsome/packages/cli/lib/commands/info.js +import envinfo from 'envinfo' + +export const command = 'info' +export const desc = 'Prints your system environment information' +export const handler = async () => { + try { + const output = await envinfo.run({ + System: ['OS', 'Shell'], + Binaries: ['Node', 'Yarn'], + Browsers: ['Chrome', 'Edge', 'Firefox', 'Safari'], + // yarn workspaces not supported :-/ + npmPackages: ['@redwoodjs/core'], + Databases: ['SQLite'], + }) + console.log(output) + } catch (e) { + console.log('Error: Cannot access environment info') + console.log(e) + process.exit(1) + } +} diff --git a/yarn.lock b/yarn.lock index 4f5d6a66165c..a31abb6e45d2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6011,7 +6011,7 @@ env-paths@2.2.0, env-paths@^2.2.0: resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.0.tgz#cdca557dc009152917d6166e2febe1f039685e43" integrity sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA== -envinfo@^7.3.1: +envinfo@^7.3.1, envinfo@^7.5.0: version "7.5.0" resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.5.0.tgz#91410bb6db262fb4f1409bd506e9ff57e91023f4" integrity sha512-jDgnJaF/Btomk+m3PZDTTCb5XIIIX3zYItnCRfF73zVgvinLoRomuhi75Y4su0PtQxWz4v66XnLLckyvyJTOIQ==