├── .gitignore
├── apps
├── src
│ ├── kart
│ │ ├── app
│ │ │ ├── auth
│ │ │ │ ├── __init__.py
│ │ │ │ └── auth.py
│ │ │ ├── kart
│ │ │ │ ├── __init__.py
│ │ │ │ └── kart.py
│ │ │ ├── __init__.py
│ │ │ └── schema
│ │ │ │ └── models.py
│ │ ├── app.py
│ │ ├── Makefile
│ │ ├── requirements.txt
│ │ └── Dockerfile
│ ├── order
│ │ ├── app
│ │ │ ├── auth
│ │ │ │ ├── __init__.py
│ │ │ │ └── auth.py
│ │ │ ├── order
│ │ │ │ ├── __init__.py
│ │ │ │ └── order.py
│ │ │ ├── __init__.py
│ │ │ └── schema
│ │ │ │ └── models.py
│ │ ├── app.py
│ │ ├── Makefile
│ │ ├── requirements.txt
│ │ └── Dockerfile
│ ├── product
│ │ ├── app
│ │ │ ├── auth
│ │ │ │ ├── __init__.py
│ │ │ │ └── auth.py
│ │ │ ├── products
│ │ │ │ ├── __init__.py
│ │ │ │ └── products.py
│ │ │ ├── __init__.py
│ │ │ └── schema
│ │ │ │ └── models.py
│ │ ├── app.py
│ │ ├── Makefile
│ │ ├── requirements.txt
│ │ └── Dockerfile
│ ├── user
│ │ ├── app
│ │ │ ├── auth
│ │ │ │ ├── __init__.py
│ │ │ │ └── auth.py
│ │ │ ├── user
│ │ │ │ ├── __init__.py
│ │ │ │ └── user.py
│ │ │ ├── __init__.py
│ │ │ └── schema
│ │ │ │ ├── models.py.MemoryDB
│ │ │ │ ├── models.py
│ │ │ │ └── models.py.PostgreSQL
│ │ ├── app.py
│ │ ├── Makefile
│ │ ├── requirements.txt
│ │ └── Dockerfile
│ ├── webapp
│ │ ├── app
│ │ │ ├── ajax
│ │ │ │ ├── __init__.py
│ │ │ │ └── ajax.py
│ │ │ ├── auth
│ │ │ │ ├── __init__.py
│ │ │ │ ├── forms.py
│ │ │ │ ├── static
│ │ │ │ │ └── css
│ │ │ │ │ │ ├── style.css
│ │ │ │ │ │ └── navbar.css
│ │ │ │ ├── templates
│ │ │ │ │ └── auth
│ │ │ │ │ │ ├── account.html
│ │ │ │ │ │ ├── forgot_password.html
│ │ │ │ │ │ ├── login.html
│ │ │ │ │ │ └── signup.html
│ │ │ │ └── auth.py
│ │ │ ├── cart
│ │ │ │ ├── __init__.py
│ │ │ │ ├── templates
│ │ │ │ │ └── cart
│ │ │ │ │ │ ├── checkout.html
│ │ │ │ │ │ ├── view.html
│ │ │ │ │ │ ├── cart.html.save
│ │ │ │ │ │ └── cart.html
│ │ │ │ └── cart.py
│ │ │ ├── static
│ │ │ │ ├── js
│ │ │ │ │ ├── cart.js
│ │ │ │ │ ├── script.js
│ │ │ │ │ ├── pagination.js
│ │ │ │ │ └── ajax.js
│ │ │ │ ├── css
│ │ │ │ │ ├── navbar.css
│ │ │ │ │ ├── head.css
│ │ │ │ │ ├── style.css
│ │ │ │ │ └── responsive.css
│ │ │ │ └── images
│ │ │ │ │ ├── logo.png
│ │ │ │ │ ├── logos
│ │ │ │ │ ├── logo1.png
│ │ │ │ │ ├── logo2.png
│ │ │ │ │ ├── logo3.png
│ │ │ │ │ ├── logo4.png
│ │ │ │ │ └── logo5.png
│ │ │ │ │ ├── misc
│ │ │ │ │ └── appstore.png
│ │ │ │ │ ├── shoppingCart.png
│ │ │ │ │ └── banners
│ │ │ │ │ ├── banner.png
│ │ │ │ │ └── banner-sale.jpg
│ │ │ ├── visits
│ │ │ │ ├── __init__.py
│ │ │ │ └── visits.py
│ │ │ ├── general
│ │ │ │ ├── __init__.py
│ │ │ │ ├── templates
│ │ │ │ │ └── general
│ │ │ │ │ │ ├── analytics.html
│ │ │ │ │ │ ├── search_results.html
│ │ │ │ │ │ ├── base.html
│ │ │ │ │ │ └── index.html
│ │ │ │ └── general.py
│ │ │ ├── products
│ │ │ │ ├── __init__.py
│ │ │ │ ├── products.py
│ │ │ │ └── templates
│ │ │ │ │ └── products
│ │ │ │ │ ├── view.html
│ │ │ │ │ └── list.html
│ │ │ ├── SessionStore.py
│ │ │ ├── __init__.py
│ │ │ └── models.py
│ │ ├── app.py
│ │ ├── logstash
│ │ │ ├── 20-filter.conf
│ │ │ ├── 10-input.conf
│ │ │ └── 30-output.conf
│ │ ├── Makefile
│ │ ├── requirements.txt
│ │ └── Dockerfile
│ ├── cert
│ │ └── create_certs.sh
│ ├── README.md
│ ├── Makefile
│ ├── docker-compose.yml
│ └── eks
│ │ └── eksackapp.yaml
└── production
│ ├── namespace.yaml
│ ├── kustomization.yaml
│ ├── retailapp
│ ├── kustomization.yaml
│ ├── secrets.yaml
│ ├── ingress.yaml
│ ├── services.yaml
│ └── deployments.yaml
│ ├── rds-parameter-group.yaml
│ ├── rdspg.yaml
│ ├── memorydb-cluster.yaml
│ └── aurora-pg.yaml
├── .DS_Store
├── infrastructure
└── production
│ ├── ack
│ ├── namespace.yaml
│ ├── rds-serviceaccount.yaml
│ ├── memorydb-serviceaccount.yaml
│ ├── kustomization.yaml
│ ├── rds-release.yaml
│ └── memorydb-release.yaml
│ ├── sources
│ ├── kustomization.yaml
│ └── ack.yaml
│ └── kustomization.yaml
├── CODE_OF_CONDUCT.md
├── clusters
└── production
│ ├── apps.yaml
│ └── infrastructure.yaml
├── LICENSE
├── scripts
├── retailapp_tests.txt
└── prereq.sh
├── CONTRIBUTING.md
├── README.md
└── cfn
└── ack-rds-cfn-base.yaml
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 |
--------------------------------------------------------------------------------
/apps/src/kart/app/auth/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/kart/app/kart/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/order/app/auth/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/order/app/order/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/product/app/auth/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/user/app/auth/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/user/app/user/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/ajax/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/auth/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/cart/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/js/cart.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/visits/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/product/app/products/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/general/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/products/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/css/navbar.css:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/cart/templates/cart/checkout.html:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/cart/templates/cart/view.html:
--------------------------------------------------------------------------------
1 |
This is cart page
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/css/head.css:
--------------------------------------------------------------------------------
1 | * {
2 | font-family:"Lato", sans-serif;
3 | }
--------------------------------------------------------------------------------
/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aws-samples/ack-rds-gitops-workshop/main/.DS_Store
--------------------------------------------------------------------------------
/apps/src/webapp/app/general/templates/general/analytics.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | This is Anlytics page
--------------------------------------------------------------------------------
/apps/production/namespace.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Namespace
3 | metadata:
4 | name: retailapp
5 |
--------------------------------------------------------------------------------
/infrastructure/production/ack/namespace.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Namespace
3 | metadata:
4 | name: ack-system
5 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aws-samples/ack-rds-gitops-workshop/main/apps/src/webapp/app/static/images/logo.png
--------------------------------------------------------------------------------
/apps/src/kart/app.py:
--------------------------------------------------------------------------------
1 | from app import app
2 | from datetime import datetime;
3 |
4 | if __name__=="__main__":
5 | app.run(debug=True, host='0.0.0.0', port=8445)
6 |
--------------------------------------------------------------------------------
/apps/src/user/app.py:
--------------------------------------------------------------------------------
1 | from app import app
2 | from datetime import datetime;
3 |
4 | if __name__=="__main__":
5 | app.run(debug=True, host='0.0.0.0', port=8446)
6 |
--------------------------------------------------------------------------------
/apps/src/order/app.py:
--------------------------------------------------------------------------------
1 | from app import app
2 | from datetime import datetime;
3 |
4 | if __name__=="__main__":
5 | app.run(debug=True, host='0.0.0.0', port=8448)
6 |
--------------------------------------------------------------------------------
/apps/src/product/app.py:
--------------------------------------------------------------------------------
1 | from app import app
2 | from datetime import datetime;
3 |
4 | if __name__=="__main__":
5 | app.run(debug=True, host='0.0.0.0', port=8444)
6 |
--------------------------------------------------------------------------------
/apps/src/webapp/app.py:
--------------------------------------------------------------------------------
1 | from app import app
2 | from datetime import datetime;
3 |
4 | if __name__=="__main__":
5 | app.run(debug=True, host='0.0.0.0', port=8443)
6 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/images/logos/logo1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aws-samples/ack-rds-gitops-workshop/main/apps/src/webapp/app/static/images/logos/logo1.png
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/images/logos/logo2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aws-samples/ack-rds-gitops-workshop/main/apps/src/webapp/app/static/images/logos/logo2.png
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/images/logos/logo3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aws-samples/ack-rds-gitops-workshop/main/apps/src/webapp/app/static/images/logos/logo3.png
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/images/logos/logo4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aws-samples/ack-rds-gitops-workshop/main/apps/src/webapp/app/static/images/logos/logo4.png
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/images/logos/logo5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aws-samples/ack-rds-gitops-workshop/main/apps/src/webapp/app/static/images/logos/logo5.png
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/images/misc/appstore.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aws-samples/ack-rds-gitops-workshop/main/apps/src/webapp/app/static/images/misc/appstore.png
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/images/shoppingCart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aws-samples/ack-rds-gitops-workshop/main/apps/src/webapp/app/static/images/shoppingCart.png
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/images/banners/banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aws-samples/ack-rds-gitops-workshop/main/apps/src/webapp/app/static/images/banners/banner.png
--------------------------------------------------------------------------------
/apps/src/webapp/logstash/20-filter.conf:
--------------------------------------------------------------------------------
1 | filter {
2 | if [x_forwarded_for] != "-" {
3 | geoip {
4 | source => "x_forwarded_for"
5 | target => "geoip"
6 | }
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/images/banners/banner-sale.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aws-samples/ack-rds-gitops-workshop/main/apps/src/webapp/app/static/images/banners/banner-sale.jpg
--------------------------------------------------------------------------------
/apps/src/webapp/logstash/10-input.conf:
--------------------------------------------------------------------------------
1 | input {
2 | file {
3 | path => "/octank/logs/octank.formatted.log"
4 | start_position => "beginning"
5 | codec => json
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/js/script.js:
--------------------------------------------------------------------------------
1 |
2 | $(document).ready(function() {
3 | $(document).on('click', '.dropdown-menu', function (e) {
4 | e.stopPropagation();
5 | });
6 |
7 | })
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/infrastructure/production/sources/kustomization.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: kustomize.config.k8s.io/v1beta1
2 | kind: Kustomization
3 | namespace: flux-system
4 | resources:
5 | # - ack.yaml # add controller as an infrastructure piece
6 |
--------------------------------------------------------------------------------
/apps/production/kustomization.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: kustomize.config.k8s.io/v1beta1
2 | kind: Kustomization
3 | resources:
4 | # - ./namespace.yaml
5 | # - ./aurora-pg.yaml
6 | # - ./memorydb-cluster.yaml
7 | # - ./retailapp
8 |
--------------------------------------------------------------------------------
/apps/production/retailapp/kustomization.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: kustomize.config.k8s.io/v1beta1
2 | kind: Kustomization
3 | namespace: retailapp
4 | resources:
5 | - secrets.yaml
6 | - deployments.yaml
7 | - services.yaml
8 | - ingress.yaml
9 |
--------------------------------------------------------------------------------
/apps/src/webapp/logstash/30-output.conf:
--------------------------------------------------------------------------------
1 | output {
2 | amazon_es {
3 | hosts => ["esendpoint.us-east-1.es.amazonaws.com"]
4 | index => "logstash-%{+YYYY.MM.dd}"
5 | region => "us-east-1"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/infrastructure/production/ack/rds-serviceaccount.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: ServiceAccount
3 | metadata:
4 | annotations:
5 | eks.amazonaws.com/role-arn: arn:aws:iam:::role/ack-rds-controller
6 | name: ack-rds-controller
7 | namespace: ack-system
8 |
--------------------------------------------------------------------------------
/infrastructure/production/kustomization.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: kustomize.config.k8s.io/v1beta1
2 | kind: Kustomization
3 | resources:
4 | # - sources #uncomment this line to add HelmRepository
5 | # - ack #uncomment this line to add ACK HelmRelease for RDS and MemoryDB controller
6 |
--------------------------------------------------------------------------------
/infrastructure/production/ack/memorydb-serviceaccount.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: ServiceAccount
3 | metadata:
4 | annotations:
5 | eks.amazonaws.com/role-arn: arn:aws:iam:::role/ack-memorydb-controller
6 | name: ack-memorydb-controller
7 | namespace: ack-system
8 |
--------------------------------------------------------------------------------
/infrastructure/production/sources/ack.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: source.toolkit.fluxcd.io/v1beta2
2 | kind: HelmRepository
3 | metadata:
4 | name: ack-source
5 | namespace: flux-system
6 | spec:
7 | type: oci
8 | interval: 1m
9 | url: oci://public.ecr.aws/aws-controllers-k8s
10 |
--------------------------------------------------------------------------------
/infrastructure/production/ack/kustomization.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: kustomize.config.k8s.io/v1beta1
2 | kind: Kustomization
3 | namespace: ack-system
4 | resources:
5 | - namespace.yaml
6 | - rds-serviceaccount.yaml
7 | - memorydb-serviceaccount.yaml
8 | - rds-release.yaml
9 | - memorydb-release.yaml
10 |
--------------------------------------------------------------------------------
/CODE_OF_CONDUCT.md:
--------------------------------------------------------------------------------
1 | ## Code of Conduct
2 | This project has adopted the [Amazon Open Source Code of Conduct](https://aws.github.io/code-of-conduct).
3 | For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq) or contact
4 | opensource-codeofconduct@amazon.com with any additional questions or comments.
5 |
--------------------------------------------------------------------------------
/apps/src/cert/create_certs.sh:
--------------------------------------------------------------------------------
1 | openssl req -new -text -passout pass:abcd -subj /CN=localhost -out server.req -keyout privkey.pem
2 | openssl rsa -in privkey.pem -passin pass:abcd -out server.key
3 | openssl req -x509 -in server.req -text -key server.key -out server.crt
4 | chmod 600 server.key
5 | test $(uname -s) = Linux && chown 70 server.key
6 |
--------------------------------------------------------------------------------
/clusters/production/apps.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: kustomize.toolkit.fluxcd.io/v1beta1
2 | kind: Kustomization
3 | metadata:
4 | name: apps
5 | namespace: flux-system
6 | spec:
7 | interval: 1m0s
8 | dependsOn:
9 | - name: infrastructure
10 | sourceRef:
11 | kind: GitRepository
12 | name: flux-system
13 | path: ./apps/production
14 | prune: true
15 |
--------------------------------------------------------------------------------
/clusters/production/infrastructure.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: kustomize.toolkit.fluxcd.io/v1beta1
2 | kind: Kustomization
3 | metadata:
4 | name: infrastructure
5 | namespace: flux-system
6 | spec:
7 | interval: 10m0s
8 | sourceRef:
9 | kind: GitRepository
10 | name: flux-system
11 | path: ./infrastructure/production
12 | prune: true
13 | validation: client
14 |
--------------------------------------------------------------------------------
/apps/src/order/Makefile:
--------------------------------------------------------------------------------
1 | run:
2 | sudo docker build -t octank-order:latest ./
3 | aws ecr get-login-password --region us-east-1 | sudo docker login --username AWS --password-stdin xyz.dkr.ecr.us-east-1.amazonaws.com/octank-order
4 | sudo docker tag octank-order:latest xyz.dkr.ecr.us-east-1.amazonaws.com/octank-order:latest
5 | sudo docker push xyz.dkr.ecr.us-east-1.amazonaws.com/octank-order:latest
6 |
--------------------------------------------------------------------------------
/apps/src/product/Makefile:
--------------------------------------------------------------------------------
1 | run:
2 | sudo docker build -t octank-product:latest ./
3 | aws ecr get-login-password --region us-east-1 | sudo docker login --username AWS --password-stdin xyz.dkr.ecr.us-east-1.amazonaws.com/octank-product
4 | sudo docker tag octank-product:latest xyz.dkr.ecr.us-east-1.amazonaws.com/octank-product:latest
5 | sudo docker push xyz.dkr.ecr.us-east-1.amazonaws.com/octank-product:latest
6 |
--------------------------------------------------------------------------------
/apps/src/kart/Makefile:
--------------------------------------------------------------------------------
1 | run:
2 | sudo docker build -t octank-kart:latest ./
3 | aws ecr get-login-password --region us-east-1 | sudo docker login --username AWS --password-stdin .dkr.ecr.us-east-1.amazonaws.com/octank-kart
4 | sudo docker tag octank-kart:latest .dkr.ecr.us-east-1.amazonaws.com/octank-kart:latest
5 | sudo docker push .dkr.ecr.us-east-1.amazonaws.com/octank-kart:latest
6 |
--------------------------------------------------------------------------------
/apps/production/rds-parameter-group.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: rds.services.k8s.aws/v1alpha1
2 | kind: DBParameterGroup
3 | metadata:
4 | name: pg14cluparamg
5 | namespace: retailapp
6 | spec:
7 | description: "customer param group"
8 | family: postgres14
9 | name: pg14
10 | parameterOverrides:
11 | autovacuum_analyze_scale_factor: "0.01"
12 | tags:
13 | - key: env
14 | value: prod
15 |
--------------------------------------------------------------------------------
/apps/src/user/Makefile:
--------------------------------------------------------------------------------
1 | run:
2 | sudo docker build -t octank-user:latest ./
3 | aws ecr get-login-password --region us-east-1 | sudo docker login --username AWS --password-stdin .dkr.ecr.us-east-1.amazonaws.com/octank-user
4 | sudo docker tag octank-user:latest .dkr.ecr.us-east-1.amazonaws.com/octank-user:latest
5 | sudo docker push .dkr.ecr.us-east-1.amazonaws.com/octank-user:latest
6 |
7 |
--------------------------------------------------------------------------------
/apps/src/webapp/Makefile:
--------------------------------------------------------------------------------
1 | run:
2 | sudo docker build -t octank-webapp:latest ./
3 | aws ecr get-login-password --region us-east-1 | sudo docker login --username AWS --password-stdin .dkr.ecr.us-east-1.amazonaws.com/octank-webapp
4 | sudo docker tag octank-webapp:latest .dkr.ecr.us-east-1.amazonaws.com/octank-webapp:latest
5 | sudo docker push .dkr.ecr.us-east-1.amazonaws.com/octank-webapp:latest
6 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/ajax/ajax.py:
--------------------------------------------------------------------------------
1 | from app.models import Product
2 | import traceback
3 | from flask import Flask , Blueprint, jsonify, request, abort
4 | import time
5 |
6 | ajax_bp = Blueprint("ajax_bp", __name__)
7 |
8 | @ajax_bp.route("/search")
9 | def search_query():
10 | query = request.args.get("query")
11 | product = Product()
12 | product_items = product.show_all_items()
13 | return jsonify([dict(p) for p in product_items if p['name'].lower().startswith(query)])
--------------------------------------------------------------------------------
/apps/src/kart/requirements.txt:
--------------------------------------------------------------------------------
1 | certifi>=2020.4.5.1
2 | chardet<4
3 | click>=7.1.2
4 | Flask==1.1.2
5 | Flask-Cors>=3.0.9
6 | gunicorn>=20.0.4
7 | idna<3
8 | itsdangerous==1.1.0
9 | Jinja2==3.0.3
10 | MarkupSafe>=1.1.1
11 | requests==2.23.0
12 | six>=1.15.0
13 | urllib3==1.26.5
14 | Werkzeug==2.0.2
15 | flask_wtf
16 | email_validator
17 | flask-restful
18 | flask-images
19 | jsonify
20 | json-logging
21 | flask_session
22 | python-memcached
23 | msgpack
24 | redis-py-cluster
25 | psycopg2
26 |
--------------------------------------------------------------------------------
/apps/src/order/requirements.txt:
--------------------------------------------------------------------------------
1 | certifi>=2020.4.5.1
2 | chardet<4
3 | click>=7.1.2
4 | Flask==1.1.2
5 | Flask-Cors>=3.0.9
6 | gunicorn>=20.0.4
7 | idna<3
8 | itsdangerous==1.1.0
9 | Jinja2==3.0.3
10 | MarkupSafe>=1.1.1
11 | requests==2.23.0
12 | six>=1.15.0
13 | urllib3==1.26.5
14 | Werkzeug==2.0.2
15 | flask_wtf
16 | email_validator
17 | flask-restful
18 | flask-images
19 | jsonify
20 | json-logging
21 | flask_session
22 | python-memcached
23 | msgpack
24 | redis-py-cluster
25 | psycopg2
26 |
--------------------------------------------------------------------------------
/apps/src/user/requirements.txt:
--------------------------------------------------------------------------------
1 | certifi>=2020.4.5.1
2 | chardet<4
3 | click>=7.1.2
4 | Flask==1.1.2
5 | Flask-Cors>=3.0.9
6 | gunicorn>=20.0.4
7 | idna<3
8 | itsdangerous==1.1.0
9 | Jinja2==3.0.3
10 | MarkupSafe>=1.1.1
11 | requests==2.23.0
12 | six>=1.15.0
13 | urllib3==1.26.5
14 | Werkzeug==2.0.2
15 | flask_wtf
16 | email_validator
17 | flask-restful
18 | flask-images
19 | jsonify
20 | json-logging
21 | flask_session
22 | python-memcached
23 | msgpack
24 | redis-py-cluster
25 | psycopg2
26 |
--------------------------------------------------------------------------------
/apps/src/webapp/requirements.txt:
--------------------------------------------------------------------------------
1 | certifi>=2020.4.5.1
2 | chardet<4
3 | click>=7.1.2
4 | Flask==1.1.2
5 | Flask-Cors>=3.0.9
6 | gunicorn>=20.0.4
7 | idna<3
8 | itsdangerous==1.1.0
9 | Jinja2==3.0.3
10 | MarkupSafe>=1.1.1
11 | requests==2.23.0
12 | six>=1.15.0
13 | urllib3==1.26.5
14 | Werkzeug==2.0.2
15 | flask_wtf
16 | email_validator
17 | flask-restful
18 | flask-images
19 | jsonify
20 | json-logging
21 | flask_session
22 | python-memcached
23 | msgpack
24 | redis-py-cluster
25 | psycopg2
26 |
--------------------------------------------------------------------------------
/apps/src/product/requirements.txt:
--------------------------------------------------------------------------------
1 | certifi>=2020.4.5.1
2 | chardet<4
3 | click>=7.1.2
4 | Flask==1.1.2
5 | Flask-Cors>=3.0.9
6 | gunicorn>=20.0.4
7 | idna<3
8 | itsdangerous==1.1.0
9 | Jinja2==3.0.3
10 | MarkupSafe>=1.1.1
11 | requests==2.23.0
12 | six>=1.15.0
13 | urllib3==1.26.5
14 | Werkzeug==2.0.2
15 | flask_wtf
16 | email_validator
17 | flask-restful
18 | flask-images
19 | jsonify
20 | json-logging
21 | flask_session
22 | python-memcached
23 | msgpack
24 | redis-py-cluster
25 | psycopg2
26 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/static/js/pagination.js:
--------------------------------------------------------------------------------
1 |
2 | $(document).on("ready", function(){
3 | const url= window.location.href
4 | const params = url.split("?")
5 | if (params.length ==1){
6 | window.location.href="?page=1"
7 | }
8 |
9 | if (params[1] != undefined){
10 | page = params[1].split("=")
11 | }
12 | else {
13 | page = 1
14 | }
15 |
16 | if(page[1] !=1){
17 | $(".prev-btn").attr("href", `?page=${page[1]-1}`);
18 | }
19 | else {
20 | $(".prev-btn").attr("href","")
21 | }
22 |
23 | $(".next-btn").attr("href", `?page=${parseInt(page[1])+1}`)
24 | })
25 |
26 |
--------------------------------------------------------------------------------
/infrastructure/production/ack/rds-release.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: helm.toolkit.fluxcd.io/v2beta1
2 | kind: HelmRelease
3 | metadata:
4 | name: ack-rds-controller
5 | namespace: flux-system
6 | spec:
7 | releaseName: rds-chart
8 | chart:
9 | spec:
10 | chart: rds-chart
11 | version: v0.1.1
12 | reconcileStrategy: ChartVersion
13 | sourceRef:
14 | kind: HelmRepository
15 | name: ack-source
16 | namespace: flux-system
17 | interval: 1m0s
18 | install:
19 | remediation:
20 | retries: 3
21 | values:
22 | serviceAccount:
23 | create: false
24 | aws:
25 | region:
26 |
--------------------------------------------------------------------------------
/infrastructure/production/ack/memorydb-release.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: helm.toolkit.fluxcd.io/v2beta1
2 | kind: HelmRelease
3 | metadata:
4 | name: ack-memorydb-controller
5 | namespace: flux-system
6 | spec:
7 | releaseName: memorydb-chart
8 | chart:
9 | spec:
10 | chart: memorydb-chart
11 | version: v0.0.2
12 | reconcileStrategy: ChartVersion
13 | sourceRef:
14 | kind: HelmRepository
15 | name: ack-source
16 | namespace: flux-system
17 | interval: 1m0s
18 | install:
19 | remediation:
20 | retries: 3
21 | values:
22 | serviceAccount:
23 | create: false
24 | aws:
25 | region:
26 |
--------------------------------------------------------------------------------
/apps/src/webapp/app/general/templates/general/search_results.html:
--------------------------------------------------------------------------------
1 | {% include "base.html"}
2 |
3 |
4 |
5 | {% for product_items in search_results['products'] :%}
6 |
7 |

8 |
9 |
10 |
11 | {% endfor %}
12 |
13 |
14 |
15 |
16 |
17 |
18 |