[FOLIO-2547] SPIKE: research how to implement folio-snapshot -> folio-snapshot-stable with K8s Created: 30/Mar/20  Updated: 06/Jul/22  Resolved: 06/Jul/22

Status: Closed
Project: FOLIO
Components: None
Affects versions: None
Fix versions: None

Type: Task Priority: P2
Reporter: Jakub Skoczen Assignee: John Malconian
Resolution: Won't Do Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original estimate: Not Specified

Issue links:
Blocks
blocks FOLIO-2587 Migrate folio-snapshot-stable referen... Closed
Relates
relates to FOLIO-2559 create or retrofit the tenant clean-u... Closed
relates to FOLIO-2554 Deploy edge modules on K8s Closed
Sprint: DevOps: sprint 85, DevOps: sprint 86
Development Team: FOLIO DevOps

 Description   

Existing promotion cannot be directly mapped to K8s because it relies on EC2 instance labelling and DNS switch over. Propose an alternative for K8s

Starting point: autmation/folio-snapshot has a Jenkinsfile whcih is the main configuration for the job (lives in folio-infrastructure)

Things invovled

  • promotion could be done by switching the DNS entry to point to the new bundle (bundles have tenant ID hardcoded)
  • we need a way to clean-up the "old" stable tenant and "old" snapshot tenant at the point when we switch over. It's probably better done directly rather than through the clean-up job.


 Comments   
Comment by Jakub Skoczen [ 06/Apr/20 ]

we discussed:

  • promotion could be done by switching the DNS entry to point to the new bundle (bundles have tenant ID hardcoded)
  • we need a way to clean-up the "old" stable tenant and "old" snapshot tenant at the point when we switch over. It's probably better done directly rather than through the clean-up job.
    *
Comment by mark.stacy [ 15/Apr/20 ]

John Malconian Added Google Doc for research on promotion of DNS and completion of task. https://docs.google.com/document/d/1hk0DvvGdRI7VSj_G8eHPcn4kfHNjSE2WVxuev0BDsBk/edit?usp=sharing

Comment by mark.stacy [ 19/Apr/20 ]

John Malconian Jakub Skoczen I have added a POC branch( FOLIO-2547 Closed ) with a readme within the `folio-ansible` repo. The branch POC code is simple and can promote stripes code from s3 bucket(build location) or sync local build folder to S3. This way, the DNS will remain fixed to s3 bucket, and promotion will include sync of build code location. I added a readme with examples of code promotion. Let me know if you have any questions.

Comment by Jakub Skoczen [ 20/Apr/20 ]

John Malconian mark.stacy

We have discussed during the planning meeting that we will keep the DNS-based promotion for the K8s deployment.

The other thing we discussed is how the tenant management for k8s folio-snapshot will look like:

  • each build will create a new tenant with the name based on the build number eg folio_snapshot_XXX
  • each build will get a new stripes generated
  • at the end of a successful folio-snapshot build we will:
  • clean up the old tenant (see FOLIO-2559 Closed for the utility function to do it)
    • delete the old s3 bucket, also named using the same naming pattern: folio_snapshot_XXX

This behavior differs from the existing snapshot build – where the env is erased when new build is attempted.

Comment by Jakub Skoczen [ 06/May/20 ]

John Malconian Zak Burke Cate Boerema BLOCKED until we decide on the future of Nightmare-based UI integration tests.

Generated at Thu Feb 08 23:21:27 UTC 2024 using Jira 1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d.