Move node to >=12.14.1

Currently, OpenBMC uses node 12.14.1.
https://github.com/openbmc/openbmc/blob/master/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.14.1.bb
OpenBMC gets this recipe from meta-openembedded.

Moved the node required to ">=12.14.1" to allow this.

https://github.com/openbmc/webui-vue/commit/b346406f3aa407869a3c868fb14322fc529673a3
moved to node 12.16.x.

Without this change was seeing (when building an image with
webui-vue replacing phosphor-webui):
| > check-node-version --package && vue-cli-service build
|
| node: 12.14.1
| Wanted node version 12.16.x (>=12.16.0 <12.17.0)
| To install node, see https://nodejs.org/download/release/v12.16.0/
| npm ERR! code ELIFECYCLE
| npm ERR! errno 1
| npm ERR! webui-vue@0.1.0 build: `check-node-version --package && vue-cli-service build`
| npm ERR! Exit status 1
| npm ERR!
| npm ERR! Failed at the webui-vue@0.1.0 build script.

Tested: Built and loaded on a Witherspoon.
        No regressions observed.

Change-Id: I20fc81ccebc9a1eb37294e3966dc657836f08064
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
1 file changed
tree: a4c9515a172b07ca18dd6fd03b25865662543641
  1. .github/
  2. docs/
  3. public/
  4. src/
  5. tests/
  6. .browserslistrc
  7. .env.openpower
  8. .eslintrc.js
  9. .gitignore
  10. .npmrc
  11. babel.config.js
  12. CONTRIBUTING.md
  13. jest.config.js
  14. LICENSE
  15. MAINTAINERS
  16. package-lock.json
  17. package.json
  18. postcss.config.js
  19. README.md
  20. vue.config.js
README.md

webui-vue

webui-vue is a web-based user interface for the OpenBMC firmware stack built on Vue.js.

Hold on... What happened to phosphor-webui?

phosphor-webui was built on AngularJS and AngularJS goes End of Life June 30, 2021, so this repository is hopefully its replacement. At this time, phosphor-webui still contains more features and you should consider using it.

When will this new Vue.js application reach feature parity with phosphor-webui?

The current plan is by June 2020!

Why will this application be better?

As mentioned, this application is built using Vue.js, a modern open-source Model-View-ViewModel JavaScript framework supported by an active community and strong documentation. It has been architected to allow organizations to easily update the theme to support their brand. This rewrite takes advantage of front-end development best practices and does not suffer from some of the anti-patterns that exist in phosphor-webui today.

How can I get involved?

Visit the CONTRIBUTING.md for more on how to contribute code, review some code in Gerrit, or join us in the GUI design workgroup meeting.

Project setup

Install Dependencies

npm install

Create a .env file

  1. Create the following file in the root directory
    • .env.development.local
  2. Add the following environment variable
    • BASE_URL="https://"`

Compiles and hot-reloads for development

npm run serve

Compiles and minifies for production

npm run build

Run your unit tests

npm run test:unit

Lints and fixes files

npm run lint

Customize configuration

See Configuration Reference.

Documentation

The documentation for coding standards and components is located in the docs directory. It is created using the VuePress static site generator. Information about how to write documentation can be found on the VuePress website.

Running Locally

Run npm docs:serve