Challenge Overview
OVERVIEW
In this challenge we will be updating the ConfigProxy server to handle Jira specific REST requests from the mobile client. It will act as a broker to Jira for most requests. There will also be a specific endpoint for queuing jobs that will create an issue. There will be a queuing mechanism for the issue creation as this can be a fairly long running process so we want to be able to post the create request, then check up on the status from the client while the issue is being created by a background process. For this challenge the creation requests will only queue the message and provide the endpoint for checking the status of a job. The worker to process the job and update the status will be done in a different challenge.
Requirements:
- Below is the description of the main functions provided by the server:
- For all calls to the server not described below the query should be brokered directly to Jira.
A POST endpoint /api/ticket/create where the payload will be added to a Kue/Redis queue for consumption by a worker. A job Id will be returned so that the client may check on the job status.
When the call is made to query tickets from jira the issues returned any 'unsynchronized - awaiting or in process create' jobs should be added to the list of tickets for the user and returned. Be sure to maintain the structure of the response so the the mobile client can properly process it.
- For all calls to the server not described below the query should be brokered directly to Jira.
SETUP & REFERENCE:
- Request access to the Gitlab repo group here by posting on the forums or email gbockus.
Once added to the team, fork the repository and work off this branch.
Use Kue/Redis for the datastore.
Jira credentials can be found in the forum.
Test should be written for all added or modified code.
All tasks defined in the gulp file should pass (lint and test).
Questions
- Please post any questions or concerns you have to the forum. They will be addressed in a timely manner.
Final Submission Guidelines
- Deploy your solution to Heroku and make sure to include your working Heroku instance URL as part of your documentation.
Provide your code and documentation in a single zip file. Make sure you include steps to deploy to Heroku.
Add lazybaer and gbockus as members of your forked repository.
Provide a video overview of your submission. Please describe what you did in the video.
Winner will be required to submit a merge request on gitlab against the branch specified!