Skip to content

Versioning stack artifacts

Adam Wisniewski edited this page Feb 5, 2021 · 24 revisions

INTRA-STACK REFERENCES

  1. Devfile -> Stack Image A1.B1 Docker image/tag (devfile OL version takes precedence over stack image OL, but lose out on caching)
  2. Devfile -> Outer Loop A2.B2 - GitHub Release HTTPS URL (devfile OL should match outer loop OL version)
  3. Outer Loop -> Stack Image A3.B3 Docker image/tag (No identified cases were OL version should matter)
  4. stack yaml -> Devfile URL - GitHub Release HTTPS URL

In the future, there should be a preferred Open Liberty version that is cached in a given version of the stack image, but the version should be customizable and parameterizable on the outer loop build).

CONSUMING ARTIFACTS

4Q20 version tags

PRODUCING ARTIFACTS

  1. Commit source changes (obviously), push
  2. Submit PR, merge PR
  3. git tag xxxxx (for any/all of devfile-x.y.z, stackimage-x.y.z, outer-loop-x.y.z. which apply) Then push tag. For example:
  • git tag devfile-x.x.x
  • git push origin --tags
  1. Run build.sh (and use the locally-generated outputs as the input for creating the releases).
  2. Create GitHub releases (for any/all of stackimage-x.y.z, outer-loop-x.y.z. which apply)
  3. (IBM team only) - For stack image build, use GHE build-java-openliberty-stack-image repo
  4. For Devfile change, PR to https://github.com/odo-devfiles/registry/

MORE DETAILS ON UPDATING ARTIFACTS

Update starter

  1. put tag in pom.xml
  2. commit
  3. tag with mentioned tag, push tag

Update devfile

  1. Increment version in devfile
  2. Send PR to https://github.com/odo-devfiles/registry/
  3. At this point it can be used unofficially as (e.g.)

    odo registry update DefaultDevfileRegistry https://github.com/scottkurz/registry

  4. Tag repo with devfile number

If this ends up being too loose, we could modify this so that we only check in x.y.z-rc1 into our own repo, and then have the PR to the official odo registry use x.y.z

REGRESSION TEST

  1. Test simple-jaxrs with no devfile
  • With hot tests
  • with debug, then odo test

Update image

  1. Update content
  2. Update devfile version, increment Dockerfile version in devfile
  3. Commit devfile referencing next tag
  4. build image with latest, major.minor, major.minor.micro

REGRESSION TEST

  1. Test simple-jaxrs with no devfile
  2. Test simple-jaxrs with specific version of devfile (but newer image)

Update intro

  1. Consider devfile registry Travis test
  2. Other odo tests?
  3. Consider if it should be merged into 'kctr' branch for CP4A Knowledge Center (try to keep fast-forwarding branch)

Clone this wiki locally