Skip to content

nannanli/explorer-jes

 
 

Repository files navigation

explorer-jes

Quality Gate Status

The issues for the JES explorer are tracked under the Zowe Zlux repository, https://github.com/zowe/zlux and tagged accordingly with the 'explorer-jes' label. Open issues tagged with 'explorer-jes' can be found here.

App Development Workflow

Configure NPM Registry

This is required for explorer-ui-server, orion-editor-component and explorer-fvt-utilities. These modules are only published on Zowe Artifactory.

npm config set registry https://zowe.jfrog.io/zowe/api/npm/npm-release

Install Dependencies

Configure your npm registry to pickup Zowe dependencies

npm config set registry https://zowe.jfrog.io/zowe/api/npm/npm-release/
npm install

Build for Development

Modify the host variable in WebContent/js/utilities/urlUtils.js to a host and port that has the Zowe Jobs API server available

npm run dev 

Then you can visit http://localhost:8080 to test. When testing you may see errors with API calls do to CORS (Cross origin resource sharing), to work around this you may disable CORS checking in your browser for local development.

Run unit tests

npm run test

Run fvt/selenium tests

See README

Build for Production

npm run prod

Prepare for commit (Run linting, tests and production build)

npm run preCommit

Prepare PAX Packaging Workspace

./scripts/prepare-workspace.sh

Start With explorer-ui-server

After preparing PAX workspace, you can serve the explorer UI with explorer-ui-server:

node .pax/ascii/server/src/index.js --config .pax/ascii/server/configs/config.json

Run SonarQube Code Analysis

Install SonarQube Scanner.

If you are using Mac, try install with HomeBrew sonar-scanner formula, then update the configuration of SonarQube server at /usr/local/Cellar/sonar-scanner/<version>/libexec/conf/sonar-scanner.properties.

Example scanner configurations:

sonar.host.url=https://jayne.zowe.org:9000
sonar.login=<hash>

Then you can run sonar-scanner to start code analysis.

Build pipeline has embedded the SonarQube code analysis stage.

Build and install as plugin in local zlux development environment

Modify explorer-jes/Webcontent/index.html
Change relative path for iframe-adapter.js & logger.js to absolute path.
Append with your API Gateway Hostname and Port

For example:

  <script type="text/javascript" src="https://mymainframe.com:7554/ui/v1/zlux/lib/org.zowe.zlux.logger/0.9.0/logger.js"></script>
  <script type="text/javascript" src="https://mymainframe.com:7554/ui/v1/zlux/ZLUX/plugins/org.zowe.zlux.bootstrap/web/iframe-adapter.js"></script>

Build web folder

cd explorer-jes
# root folder
npm install
# This will create web folder
npm run build

Install as ZLUX App/Plugin

# install in zlux locally
cd zlux/zlux-app-server/bin
./install-app.sh <path-to-explorer-jes>

explorer-jes root already have sample pluginDefinition.json & will have web folder after build.

Enable Redux logs

Either use Redux Dev Tool Browser Extension in your browser Or enable redux logs by setting enableReduxLogger variable true in your local storage.

Add Redux Logger

While explore app is open in browser:

  1. Run this in browser console
window.localStorage.setItem('ZoweJes.enableReduxLogger', true);
  1. And refresh browser
    So as long as this value remains true in browser local storage,
    you will see redux logs in console.

Remove Redux Logger

While explore app is open in browser:

  1. Run either window.localStorage.setItem('ZoweJes.enableReduxLogger', false)
    or window.localStorage.removeItem('ZoweJes.enableReduxLogger')
    or clear storage manually in browser dev tools under Application tab

  2. And refresh browser to stop seeing redux console logs.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 70.8%
  • TypeScript 20.6%
  • Shell 6.5%
  • CSS 1.7%
  • HTML 0.4%