Uploaded image for project: 'Service Binding'
  1. Service Binding
  2. APPSVC-1294

Use images for testing and deployment everywhere we can

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Done
    • Icon: Undefined Undefined
    • Primaza 0.1
    • None
    • Service Binding
    • None
    • 3
    • False
    • None
    • False
    • AppSvc Sprint 237, AppSvc Sprint 238

      Owner: Architect:

       

      Story (Required)

      As a developer, I would like to build primaza once, then test & deploy it many times.

      Background (Required)

      When we want to test & deploy primaza, we need to be able to point to specific pre-built images of primaza's various controllers.  This has a few advantages for us:

      • This allows us to have faster and more repeatable tests, which is a need not currently met by our current testing approach (primaza is built and deployed multiple times across acceptance testing; we currently get away with it because of docker's build cache).
      • This will also allow us to make deployments via primazactl easier: if we pick a predictable versioning scheme for our images, primazactl could be able to deploy a variety of versions.  This would let us de-couple the development & deployment of primazactl from primaza itself.
      • Finally, by accepting pre-built images, we can run acceptance tests on non-ephemeral clusters; this would let users test their clusters for primaza compatibility.

      Out of scope

      If not provided, we shouldn't push images we build to an external image registry.

      In Scope

      Primaza and its agents should be provided as a set of images to be tested; the testing framework shouldn't build primaza.
       

      Approach(Required)

      Within the testing framework, the container images we need should be provided to us; we shouldn't need to call `docker build` during the course of completing an acceptance test.

      Instead, during test startup, we should check for images provided to us. If so, we should run acceptance tests with these container images as primaza. Otherwise, we should build the images ourselves, tag them with appropriate tags, and make them available on the clusters we use for testing. This should be done before we call behave.

      Demo requirements(Required)

      Acceptance tests should be run against pre-built images.

      Acceptance Criteria

      Development:

      • Deploying an installation of primaza should not require building primaza; it should instead pull images from publicly-available image repositories.

      QE:

      • Acceptance testing should test against pre-built container images.

      Documentation: Yes

      Design is implementable

      Acceptance criteria agreed upon

      Story estimated

      v

      Legend

      Unknown

      Verified

      Unsatisfied

            ansadler@redhat.com Andy Sadler
            ansadler@redhat.com Andy Sadler
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: