1.0.0 • Published 6 years ago

agri-portal v1.0.0

Weekly downloads
6
License
-
Repository
github
Last release
6 years ago

Informa Agri Portal App

Dev Environment Setup

Installation

Ensure that NodeJS is installed.

Install the dependencies from the project root /src/Informa.Agri.Portal.App:

npm install
npm install -g gulp jspm

Install the client-side dependencies with jspm:

jspm install -y

Note: jspm queries GitHub to install semver packages, but GitHub has a rate limit on anonymous API requests. It is advised that you configure jspm with your GitHub credentials in order to avoid problems. You can do this by executing jspm registry config github and following the prompts. If you choose to authorize jspm by an access token instead of giving your password (see GitHub Settings > Personal Access Tokens), public_repo access for the token is required.

Note: Windows users, if you experience an error of "unknown command unzip" you can solve this problem by doing npm install -g unzip and then re-running jspm install.

Running the App

gulp watch

Browse to http://localhost:9000 to see the app. You can make changes in the code found under src and the browser should auto-refresh itself as you save files.

The Skeleton App uses BrowserSync for automated page refreshes on code/markup changes concurrently across multiple browsers. If you prefer to disable the mirroring feature set the ghostMode option to false

API config

If you do not have the identity-server-web app running locally you can update the paths to the API in config/config.json from .local to .com e.g.

https://identity.dev.informa-agri-labs.local/connect/authorize

Becomes

https://identity.dev.informa-agri-labs.com/connect/authorize

You should then be able to login with:

email: richard.lee@informa.com password: informa-ee

Bundling

Bundling is performed by Aurelia Bundler. A gulp task is already configured for that. Use the following command to bundle the app:

  gulp bundle

You can also unbundle using the command bellow:

  gulp unbundle

To start the bundled app, execute the following command:

  gulp serve-bundle

Configuration

The configuration is done by bundles.js file.

Optional

Under options of dist/aurelia add rev: true to add bundle file revision/version.

Running The Unit Tests

To run the unit tests, first ensure that you have followed the steps above in order to install all dependencies and successfully build the library. Once you have done that, proceed with these additional steps:

  1. Ensure that the Karma CLI is installed. If you need to install it, use the following command:

    npm install -g karma-cli
  2. Install Aurelia libs for test visibility:

    jspm install aurelia-framework
    jspm install aurelia-http-client
    jspm install aurelia-router
  3. You can now run the tests with this command:

    karma start

Running The E2E Tests

Integration tests are performed with Protractor.

  1. Place your E2E-Tests into the folder test/e2e/src
  2. Install the necessary webdriver

    gulp webdriver-update
  3. Configure the path to the webdriver by opening the file protractor.conf.js and adjusting the seleniumServerJar property. Typically its only needed to adjust the version number.

  4. Make sure your app runs and is accessible

    gulp watch
  5. In another console run the E2E-Tests

    gulp e2e

Exporting bundled production version

A gulp task is already configured for that. Use the following command to export the app:

  gulp export

The app will be exported into export directory preserving the directory structure.

Configuration

The configuration is done by bundles.js file. In addition, export.js file is available for including individual files.

Exporting the agri-tables package

Build

cd ./src/exports/agri-tables

npm install

gulp build

Publish

gulp bump-version

npm login

Username: agridevelopers Password: Informa123 Email: andy.winter@informa.com

npm publish

Reset

Clean the node_modules and dist folders so that they don't interfere with running the portal.

gulp reset

Run as Fertecon site

gulp watch --app fertecon
1.0.0

6 years ago