Challenge Overview
Welcome to Topcoder Change Download URL in Direct Application challenge.
1. Update TC Direct application to allow download of submission from Amazon S3 links
2. Fix TC Direct to allow download of all Studio Files
Online Review Setup
Open direct-app https://cockpit.cloud.topcoder.com/direct/ and login with 'hefan/password' to create project and challenges.
Wait autopilot to run and open Online Review http://tcs.cloud.topcoder.com/review. Some more information on how to setup OR locally will be provided in forum.
You will need to create a deployment guide (README.md) and validation document (Validation.md).
The Validation.md created must show all the steps necessary to verify the application:
Challenge Objectives
- For this contest, we are looking at updating Topcoder's Direct site.
Project Background
- Topcoder is updating its submission api. The idea is to prepare the migration to a new system to replace Online Review.
- We have updated Online Review system to allow download from Amazon S3 url and also fixed Studio design submissions.
Technology Stack
- Java
- Ant
- Maven
- Docker
Individual requirements
1. Update TC Direct application to allow download of submission from Amazon S3 links- Submission page: https://cockpit.topcoder.cloud.com/direct/contest/softwareSubmissions.action?projectId=30052879.
- Check Online Review implementation (see initially https://github.com/topcoder-platform/tc-online-review/blob/85feb44e7129e4cd9e7fded63bf0e8c1435c9ca0/src/java/main/com/cronos/onlinereview/actions/projectdetails/BaseProjectDetailsAction.java#L198)
- Hint: upload table has url column. The url column holds the S3 link of the file to download. If not null should use Amazon S3 to download otherwise do normal download. Amazon AWS credentials, along with bucket name, must be configurable (check Online Review configurable parameters).
2. Fix TC Direct to allow download of all Studio Files
- Submission page: http://cockpit.topcoder.cloud.com/direct/contest/submissions.action?projectId=30052873&formData.viewType=GRID&formData.roundType=CHECKPOINT and https://cockpit.topcoder.cloud.com/direct/contest/submissions.action?projectId=30052873&formData.viewType=LIST&formData.roundType=CHECKPOINT.
- Check online review for implementation details on how to download Studio design submission file.
- Also check old studio site code for more information - https://github.com/topcoder-platform/tc-website/tree/dev/src/main/com/topcoder/web/studio
Online Review Setup
Repository
Online Review repository: https://github.com/topcoder-platform/tc-online-review
Please use the dev branch.
TC Direct repository: https://github.com/appirio-tech/direct-app.git
Please use the dev branch.
Local Setup
Please follow https://github.com/appirio-tech/tc-common-tutorials/tree/master/docker/online_review to build and run the online review locally. Make sure to use the correct Online Review branch - see above.
Download direct-app code base: https://github.com/appirio-tech/direct-app.git. Branch: dev.
To build and run direct-app with docker please consult https://github.com/appirio-tech/tc-common-tutorials/tree/master/docker/direct-app#build-and-run-with-docker-compose.
Enter in /etc/hosts files the following entry:
Please follow https://github.com/appirio-tech/tc-common-tutorials/tree/master/docker/online_review to build and run the online review locally. Make sure to use the correct Online Review branch - see above.
Download direct-app code base: https://github.com/appirio-tech/direct-app.git. Branch: dev.
To build and run direct-app with docker please consult https://github.com/appirio-tech/tc-common-tutorials/tree/master/docker/direct-app#build-and-run-with-docker-compose.
Enter in /etc/hosts files the following entry:
127.0.0.1 cockpit.cloud.topcoder.com tc-api.cloud.topcoder.com tcs.cloud.topcoder.com
Open direct-app https://cockpit.cloud.topcoder.com/direct/ and login with 'hefan/password' to create project and challenges.
Wait autopilot to run and open Online Review http://tcs.cloud.topcoder.com/review. Some more information on how to setup OR locally will be provided in forum.
Deployment guide and validation document
You will need to create a deployment guide (README.md) and validation document (Validation.md).
The README.md created must show how to:
- Configure the application (maven repo, etc)
- Build application
The Validation.md created must show all the steps necessary to verify the application:
- Build the code in new system, start OR and Direct (see details above)
- Create challenges in OR
- Verify system is usable
Final Submission Guidelines
- Patch file against repository - don't forget to provide the commit hash used
- Documentation