Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

build codecov

Summary

  1. This project to Extract/Transform/Load Data from free API provider named AlphaVantage in to a Database
  2. Provides API service to sync the data, also retrieve from database and get statisttics

Tech Stack

  • Python for backend
  • FastAPI for runnning api services
  • Postgres Database
  • Docker to set up image for deployment and local development
  • GCP Kubernatess for provisioning of deployments/service

Setup project for development:

source setup.sh

Run using command line:

uvicorn financial.main:app --host 0.0.0.0 --port 8000

Build Docker Image

docker image build -t stock-computing-service . docker buildx build --platform linux/amd64 -f ./Dockerfile -t image .

Run via Docker using any of the below options:

  1. docker run stock-computing-service
  2. docker-compose up

Upload to docker hub

docker tag stock-computing-service-app shubhamraj2202/stock-computing-service-app:latest
docker push shubhamraj2202/stock-computing-service-app:latest

Delete from docker

docker rmi shubhamraj2202/stock-computing-service-app:latest

DockerHub

https://hub.docker.com/repository/docker/shubhamraj2202/stock-computing-service-app

PyPi

https://pypi.org/project/stock-computing-service/

Maintaining API key

For local development, the API key can be accessed via environment variable FINANCIAL_KEY

  • Run export FINANCIAL_KEY="YourAPIKEY" on shell.

For production environment, the API key should be stored in a secret management service like Vault, GCP Secret Manager /AWS

TODO Provision: Script to take initial setup of env

Install Google Cloud CLI https://cloud.google.com/sdk/docs/install gcloud init gcloud auth login gcloud auth application-default login gcloud components install gke-gcloud-auth-plugin export GOOGLE_PROJECT=stock-computing-service pulumi new gcp-python pulumi config set gcp:project stock-computing-service pulumi config set gcp:region us-west1 gcloud container clusters get-credentials gke-cluster-f0853e1 --zone us-west1-a cd infra pulumi stack init dev

Reference: https://github.com/pulumi/examples/blob/master/gcp-py-gke/README.md

Metadata

Release files for stock-computing-service 1.2.1a5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for stock-computing-service 1.2.1a5
File Size Uploaded
stock_computing_service-1.2.1a5.tar.gz 8.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for stock-computing-service 1.2.1a5
File Interpreter ABI Platform
stock_computing_service-1.2.1a5-py3-none-any.whl Python 3 none any Details

Total release size: 20.1 kB

Release files / stock_computing_service-1.2.1a5.tar.gz

Download URL stock_computing_service-1.2.1a5.tar.gz
Size 8.8 kB
Tags Source
SHA-256 checksum
How to use checksums
fc6139806b6425432f4e0ac162df891b1db9c499955a5dea9e3d0a3462fafe55
BLAKE2b-256 checksum
How to use checksums
5fdb497db2063d84335f56e39d6f5533843ecd06f7e8e894464eef446a502c40
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / stock_computing_service-1.2.1a5-py3-none-any.whl

Download URL stock_computing_service-1.2.1a5-py3-none-any.whl
Size 11.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
12043429dca7a95cc697527d6cfa173ac7fff3008b4a59bc12b59e6a3885276e
BLAKE2b-256 checksum
How to use checksums
824fbf67a4e06483a2b9060856f2588525e05d7447836aadae9d19cad6955482
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page