Name | NEU ID | Email Address |
---|---|---|
Shubhankar Dandekar | 001439467 | [email protected] |
Jayesh Iyer | 001472726 | [email protected] |
Mitali Salvi | 001630137 | [email protected] |
Neha Gaikwad | 001886361 | [email protected] |
- Java SpringBoot for REST API
- Eclipse IDE
- MariaDB for Database
- Postman to test REST endpoints
- Clone repository
- Import maven project restapi in the webapp directory into eclipse
- Right Click restapi > Maven > Update Maven Project > OK
- Create a new database named 'CSYE6225' in MariaDB.
create database CSYE6225
- Add below mysql user to allow application to connect to the database
grant all privileges on CSYE6225.* to 'csye6225' identified by 'csye6225'
Note : If using different MySQL credentials, you need to input the correct credentials in file webapp/src/main/resources/application.properties
- Run Eclipse project imported in above steps as SpringBoot Application
- Run the restapi project imported in Eclipse as JUnit Test
-
Register New user This api registers a new user in the system
POST /users {user object}
-
Add new note
This api creates a new note in the system.POST /note {note Object}
-
Retreive notes from the system This api retreives list of all notes available for the logged in user.
GET /note
This api retreived a particular note authorized for the logged in user.
GET /note/{NoteId}
-
Update Existing Note
This api updates an existing note in the system authorized to the logged in user.PUT /note/{NoteId}
-
Delete Existing Note
This api deletes an existing note from the system authorized to the logged in user.DELETE /note/{NoteId}
-
Add new attachemnt to note
This api adds a new attachment to the note in the system.POST /{NoteId}/attachments
-
Retrieve all attachments from note
This api gets all the attachments to the note in the system.GET /{NoteId}/attachments
-
Update attachment
This api updates the attachment to the note in the system.PUT /{NoteId}/attachments/{AttachmentId}
-
Delete attachment
This api deleted the attachment to the note in the system.DELETE /{NoteId}/attachments/{AttachmentId}
-
Currently using Cirle CI tools to build new artifacts on each commit on GitHub and upload new succeeded builds to Amazon S3 bucket.
-
Configure your webapp repository in Circle CI and follow the project.
-
Configure below variables in Circle CI environment variables for the webapp project.
-- AWS_ACCESS_KEY_ID -- AWS_BUCKET_NAME
-- AWS_DEFAULT_REGION
-- AWS_SECRET_ACCESS_KEY -
Create circleci user in AWS IAM.
-
Create New S3 Bucket to hold the build artifacts.
-
Assign appropriate policies to allow circleci user to access and upload artifacts in S3 Bucket.
-
Create Code Deploy Application to deploy new revisions onto EC2 instances for each new build.