[FOLIO-2056] create a pipeline for a front-end module that builds and deploys to K8s cluster Created: 31/May/19  Updated: 03/Jun/20  Resolved: 20/Sep/19

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

Type: Task Priority: P2
Reporter: Jakub Skoczen Assignee: John Malconian
Resolution: Done Votes: 0
Labels: platform-backlog
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original estimate: Not Specified

Issue links:
Blocks
blocks FOLIO-2216 Adjust module deployment pipeline to ... Closed
blocks UXPROD-1827 CI-integrated continuous deployment (... Closed
is blocked by FOLIO-2187 refactor Ansible roles so they can be... Closed
is blocked by FOLIO-2249 Tenant clean up script Closed
is blocked by FOLIO-2054 Stand up cluster for CI using AWS K8s... Closed
is blocked by FOLIO-2069 Deploy Okapi to K8s cluster Closed
Relates
relates to FOLIO-2055 create an Ansible role for backend-mo... Closed
Sprint: CP: sprint 70, CP: ready for planning, CP: sprint 69, CP: sprint 71, CP: sprint 72
Story Points: 3
Development Team: Core: Platform

 Description   

Wayne Schneider John Malconian please provide a more detailed description.

Summary

Create a pipeline for a front-end module that wraps the module in a platform and deploys the bundle to an S3 bucket. The pipeline will create an associated tenant and point the bundle to the created tenant. This work has been (mostly) done during the PoC (see UXPROD-1817 Closed and issues linked there). But there are potential changes needed to the Ansible roles (which are primarily focused on single server deployment).

Steps

  1. Create and deploy bundle on S3
  2. Create an new tenant in the Okapi cluster
  3. Post install.json to the Okapi /_/proxy/tenants/<tenantId>/install API for the target tenant. E.g.:

Notes

This executes some of the steps as Ansible roles so it will need to wrap them in a container that includes Ansible to run them on the cluster. Some of those roles may have dependencies or include tasks that are bound to the the single-server install – they will need to be cleaned up and seperated for the K8s deploment.

Scope

If it helps scoring, let's limit the scope to selected UI module(s)/platform (platform-core?)



 Comments   
Comment by John Malconian [ 05/Jun/19 ]

This is essentially a duplicate of FOLIO-1948 Closed , FOLIO-2001 Closed , FOLIO-2002 Closed , and FOLIO-2036 Closed ("PR preview POC) which are completed as feature branches in jenkins-pipeline-libs with a couple of items that may need to be (re)considered:

  • Which backend modules are deployed automatically to the K8 cluster - releases, snapshots, and feature branch builds?
  • How will they be deployed? Docker registry hook? New Jenkins 'stage' in build pipeline?
  • What will be the retention policy of deployed modules?

In addition, some existing Ansible plays and roles that are used in this process to deploy FOLIO may need to be revised in order to support a distributed FOLIO instance. This may require a separate Jira issue.

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