Code Monkey home page Code Monkey logo

devops-capstone-project's People

Contributors

howsen82 avatar

Watchers

 avatar

Forkers

aliyabeishenaly

devops-capstone-project's Issues

Update an account in the service

As a User
I need a service to update an account
So that I can update an account information

Details and Assumptions

* Need a way to update an account
* Need a way to get updated information    

Acceptance Criteria

    Given I need to update account
    When I click on Update button
    Then information being updated and notification to inform user

Containerize your microservice using Docker

As a developer
I need to containerize my microservice using Docker
So that I can deploy it easily with all of its dependencies

Assumptions

  • Create a Dockerfile for repeatable builds
  • Use a Python:3.9-slim image as the base
  • It must install all of the Python requirements
  • It should not run as root
  • It should use the gunicorn wsgi server as an entry point

Acceptance Criteria

Given the Docker image named accounts has been created
When I use docker run accounts
Then I should see the accounts service running in Docker

Set up the development environment

As a Developer Team
I need to set up the development environment for the project
So that everything was ready for the project

Details and Assumptions

* Need to do initial setup for the project environment
* Prepare python environment ready for installing required dependencies and requirements.     

Acceptance Criteria

    Given a startup python project
    When need to setup for the python development environment
    Then do it in cloud IDE

List all accounts in the service

As a User
I need a service to display and list all accounts
So that I can see any accounts available inside the application

Details and Assumptions

* Need a way to see all accounts information
* All account records display on the system

Acceptance Criteria

    Given I need to list all accounts
    When I click on **Account** button
    Then all accounts details being show on the system.

Read an account from the service

As a Developer
I need read an account from the service
So that I get can information from the Account to do authentication

Details and Assumptions

* Access right to read an account
* Authenticate user    

Acceptance Criteria

    Given application need to access account information
    When I click on the application
    Then user being read and authenticated.

Deploy your Docker image to Kubernetes

As a service provider
I need my service to run on Kubernetes
So that I can easily scale and manage the service

Assumptions

  • Kubernetes manifests will be created in yaml format
  • These manifests could be useful to create a CD pipeline
  • The actual deployment will be to OpenShift

Acceptance Criteria

Given the Kubernetes manifests have been created
When I use the oc command to apply the manifests
Then the service should be deployed and run in Kubernetes

Need to add security headers and CORS policies

**As a** service provider
**I need** my service to use security headers and CORS policies
**So that** my web site is not vulnerable to CORS attacks

#### Assumptions
* Flask-Talisman will be used for security headers
* Flask-Cors will be used to establish cross-origin resource sharing (CORS) policies

#### Acceptance Criteria
```gherkin
Given the site is secured
When a REST API request is made
Then secure headers and a CORS policy should be returned
```

Create a CD pipeline to automate deployment to Kubernetes

As a developer
I need to create a CD pipeline to automate deployment to Kubernetes
So that the developers are not wasting their time doing it manually

Assumptions

  • Use Tekton to define the pipeline
  • It should clone, lint, test, build, and deploy the service
  • Deployment should be to OpenShift
  • It can use a manual trigger for this MVP

Acceptance Criteria

Given the CD pipeline has been created
When I trigger the pipeline run
Then I should see the accounts service deployed to OpenShift

Need the ability to automate continuous integration checks

**As a** Developer
**I need** automation to build and test every pull request
**So that** I do not have to rely on manual testing of each request, which is time-consuming

#### Assumptions
* GitHub Actions will be used for the automation workflow
* The workflow must include code linting and testing 
* The Docker image should be postgres:alpine for the database
* A GitHub Actions badge should be added to the README.md to reflect the build status

#### Acceptance Criteria
```gherkin
Given code is ready to be merged
When a pull request is created
Then GitHub Actions should run linting and unit tests
And the badge should show that the build is passing
```

Delete an account from the service

As a User
I need a service to delete account
So that the account being removed from the service

Details and Assumptions

* Need a way to delete an account
* Notify user when account was deleted.

Acceptance Criteria

    Given I have to delete an account
    When click on **Delete** button
    Then account being removed from the service account

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.