TC admin-app - Code and CircleCI Updates

Register
Submit a solution
The challenge is finished.

Challenge Overview

1.0. Introduction

Topcoder would like to improve the product development team's ability to deliver quick, stable releases across all key applications/services of the platform. This includes making it easy for the community to quickly participate in design, development, qa, devops, and release efforts.

2.0. Challenge Overview

The admin-app is a customer support admin app written in Angular.js.

This challenge will update the circle.yml to support multiple environments and clean up the code.
 

2.1. Background

To successfully deploy the admin-app, a couple of tools and services need to be present in your development environment:
1.0. node.js v5+
2.0. npm v3+
3.0. protractor
4.0. gulp
 

2.2. Requirements

1. Remove the hard-coded credentials from the e2e tests files: login.spec.js and dashboard.spec.js and put them inside environment variables named TEST_USER and TEST_PASSWORD. If either variable is unset, the tests should fail hinting that they must be set for the tests to run.

2. The
port number in the http://localhost:3000/ URL used in the tests should also not be hard-coded. It should be determined at run time.

3. The admin-app's circle.yml file contains an environment variable named CIRCLE_ENV which is hard-coded to the dev environment but this needs to be configurable. The proper way is to add variables on the "Environment Variables" screen of the "Build Settings" page for the project on CircleCI.

4. In addition to removing the hard-coded value for CIRCLE_ENV, the variable itself should also be removed. There is an existing environment variable for the same purpose called BUILD_ENV used in the code and on CircleCI. On CircleCI, it is currently set to "BUILD_ENV=dev" and can be set to any of "local, dev, qa, prod" based on the values present in config.json.

 

2.3. Tasks

Your responsibilities in this challenge are as follows:

1. Please update the code and README accordingly.

2. Setup and test your changes on CircleCI.

3. Provide a separate README summarizing your changes and how to verify them.

The winner will submit a pull request (PR). Please grant CircleCI access to your fork of the repo so that GitHub can indicate whether your PR changes pass on CircleCI or not.
 

3.0. Repositories

admin-app
https://github.com/appirio-tech/admin-app


Final Submission Guidelines

Please see the final submission guidelines above.

Review style

Final Review

Community Review Board

Approval

User Sign-Off

Challenge links

ID: 30057220