[FOLIO-669] Fully automate builds of "stable" and "testing" FOLIO platforms. Created: 13/Jun/17  Updated: 12/Nov/18  Resolved: 19/Jul/17

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: ci, demo17, for-next-sprint, sprint16, sprint17
Remaining Estimate: Not Specified
Time Spent: 3 days
Original estimate: Not Specified

Issue links:
Blocks
is blocked by FOLIO-691 Create Jenkins job to run packer buil... Closed
Relates
relates to FOLIO-387 Automate demo and backend build for t... Closed
Sprint:

 Description   

This includes both Vagrant boxes and EC2 instances. The automated build processes will be triggered by releasing a module (see Maven and NPM release procedure in dev.folio.org) or making a commit to the master branch.

“Stable” refers to a version of the platform that contains only released (as per release steps described on dev.folio.org) components and is designated for demos and public consumption. “Testing” refers to a branch representing the current state of the FOLIO platform as a whole and consists of the “head-of-master” of all components.



 Comments   
Comment by Hongwei Ji [ 13/Jun/17 ]

So the "Testing" branch does not pull dependencies from Folio Maven and NPM repo? It resolves dependencies using local freshly built jar and yarn linking?

Comment by John Malconian [ 13/Jun/17 ]

Hongwei Ji - The 'testing' branch will use 'snapshot' artifacts from Maven and NPM repos. However, they will use different repos that contain snapshots. For Maven, this is https://folio-nexus.indexdata.com/repository/maven-snapshots/. For NPM, this is https://folio-nexus.indexdata.com/repository/npm-folioci/. Coincidentally, we are also talking about adding build numbers to the versions for all snapshots so that snapshot versioning is a little more clear.

Comment by Hongwei Ji [ 14/Jun/17 ]

Hi John, I am interested to know if Folio components will evolve as a whole or individually. For example, let’s say mod-user 1.0 currently depends on rmb 1.0. Since each Folio component specifies its dependencies, after rmb evolves to 5.0, mod-user could still depends on just rmb 1.0. So a snapshot build is technically “head-of-master”, but modules dependencies is not really the latest. I am wondering if it is necessary to have some mechanism to keep dependencies synced between Folio components. I probably mentioned this on Slack before, but has lost track since then. Thanks.

Comment by John Malconian [ 30/Jun/17 ]

http://folio-stable.aws.indexdata.com and http://folio-testing have been implemented.

FOLIO Testing - http://folio-testing.aws.indexdata.com

FOLIO Testing is divided between two systems. The “backend” system consists of Okapi, FOLIO modules, PostgreSQL and sample data. This system is automatically built once per day and consists of HEAD of master snapshots of all FOLIO backend components (with the exception of Okapi, which is at the latest release version) and is automatically built once each night. the “frontend” system consists of Stripes
and associated FOLIO UI modules based entirely on snapshots of HEAD of master. The frontend rebuilt automatically whenever a new commit is made to the master branch of any of the Stripes or UI module projects. FOLIO Testing can be accessed at http://folio-testing.aws.indexdata.com. FOLIO Testing should always be considered unstable and availability cannot be guaranteed if builds fail.

FOLIO Stable - http://folio-stable.aws.indexdata.com

FOLIO Stable is divided between two systems as well. The “backend” system consists of Okapi, FOLIO modules, PostgreSQL and sample data. This system is automatically built once per day and consists solely of a set of curated “released” FOLIO backend components that have been tested to be compatible. This system is automatically built once per day although build frequency may be changed to only rebuild whenever a backend component change has been initiated. A separate “frontend” system consists of Stripes and associated FOLIO UI modules based on the configuration of the GitHub project, ‘stripes-demo-platform’. This system is automatically updated whenever a change is made to the master branch of stripes-demo-platform.

FOLIO Demo - http://folio-demo.aws.indexdata.com

FOLIO Demo will consist of a FOLIO Stable build that has been specifically blessed by a product owner.

FOLIO Demo Test - http://folio-demo-test.aws.indexdata.com

FOLIO Demo Test has been deprecated and should no longer be used by the wider development team. It may be used to stage builds for FOLIO Demo or it may go away entirely. (edited)

Comment by Jakub Skoczen [ 19/Jul/17 ]

Focusing on specific issues.

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