beam icon indicating copy to clipboard operation
beam copied to clipboard

[Playground][Task] Improve Playground infrastructure and deployment scripts

Open olehborysevych opened this issue 2 years ago • 1 comments

What needs to happen?

Investigate and address following issues related to infrastructure and backend deployment scripts:

  1. Naming of git workflows should be consistent. Currently we have: build_playground_frontend.yaml build_playground_backend.yaml (old backend) DeployInfrastructure.yml playground_deploy_examples.yml <--------- best name. use this patterns K8e-backend.yml (new backend)

  2. Two different helm charts for backend - looks like there is a room for improvement (try subcharts) Playground\infrastructure\helm - for CI/CD Playground\infrastructure\helm-backend - for Prod (new)

  3. Different approaches for deployment: Front is deployed with a gradle task - terraform Back is deployed with helm and no gradle task

  4. Back+Example CI\CD deployment hit trial account quotas - need to change that to be able to test(minor, optional)

  5. Dangling deprecated terraform templates for old backend in playground\terraform 6.New approach assumes that Helm is not part of infrastructure

  6. New approach doesn't define Kubernetes entities (deployments, services) as infra (TBD)

  7. Some values are still hardcoded

  8. Static IP for front should be obtained from teraform

  9. Autoscaling is disabled or not configured for now

  10. Workflow step verification of helm install is missing . (helm list)

Issue Priority

Priority: 3

Issue Component

Component: beam-playground

olehborysevych avatar Sep 21 '22 12:09 olehborysevych

.take-issue

MakarkinSAkvelon avatar Sep 21 '22 14:09 MakarkinSAkvelon

Legacy code

  1. There's some legacy infrastructure code in playground/terraform/backend, it needs to be analyzed and removed
  2. Backend images have TLS-related components (mitmproxy, allow_proxy.py) which are no longer needed
  3. Gradle tasks to deploy backend are obsolete
  4. playground/terraform/README.md has to be updated

Building images

It's neccessary that we optimize building and pushing of Docker images, it takes 90% of time of deployment

  1. No way to skip when done manually now (adressed in #23255)
  2. Dockerfiles for Playground Backend could be optimized

CI for Playground

Currently there's no automated CI runs for

  1. Pytest in playground infrastructure
  2. Playground Backend unittests
  3. Playground Examples compilation

eantyshev avatar Sep 22 '22 10:09 eantyshev

Completed

rshamunov avatar May 17 '23 09:05 rshamunov