#25 Added new message type: container-group.test.queued
Merged 5 years ago by mvadkert. Opened 5 years ago by shebert.
fedora-ci/ shebert/messages master  into  master

@@ -0,0 +1,55 @@ 

+ {

+   "ci": {

+     "name": "C3I Jenkins",

+     "team": "DevOps",

+     "url": "https://example.com",

+     "docs": "https://example.com/user-documentation",

+     "irc": "#some-channel",

+     "email": "someone@example.com",

+     "environment": "production"

+   },

+   "run": {

+     "url": "https://somewhere.com/job/ci-job/4794",

+     "log": "https://somewhere.com/job/ci-job/4794/console"

+   },

+   "artifact": {

+     "id": "d6886145-4782-42ff-924f-adf0ed20f6d4",

+     "type": "redhat-container-group",

+     "component": "cvp-unknownproduct",

+     "errata_id": "9999",

+     "images": [

+       {

+         "type": "redhat-container-image",

+         "id": "835016",

+         "component": "cvp-unknownproduct",

+         "issuer": "someone",

+         "nvr": "openstack-redis-base-container-15.0-2",

+         "full_name": "example.com:8888/rhosp15/openstack-redis-base:rhos-15.0-rhel-8-containers-candidate-97924-20190124202049",

+         "registry_url": "example.com:8888",

+         "namespace": "rhosp15",

+         "name": "openstack-redis-base",

+         "image_tag": "rhos-15.0-rhel-8-containers-candidate-97924-20190124202049",

+         "scratch": false

+       },

+       {

+         "type": "redhat-container-image",

+         "id": "835014",

+         "component": "cvp-unknownproduct",

+         "issuer": "someone",

+         "nvr": "virt-handler-container-v1.4.0-14",

+         "full_name": "example.com:8888/cnv-tech-preview/virt-handler:cnv-1.4-rhel-7-containers-candidate-80861-20190124200732",

+         "registry_url": "example.com:8888",

+         "namespace": "cnv-tech-preview",

+         "name": "virt-handler",

+         "image_tag": "cnv-1.4-rhel-7-containers-candidate-80861-20190124200732",

+         "scratch": false

+       }

+     ]

+   },

+   "type": "container-group",

@shebert I believe this is now redhat-container-group

+   "category": "integration",

+   "namespace": "cvp-unknownproduct",

+   "note": "Some notes.",

+   "generated_at": "2018-05-10 08:58:31.222602",

+   "version": "0.1.0"

+ }

@@ -0,0 +1,43 @@ 

+ $id: https://pagure.io/fedora-ci/messages/container-image.test.queued

+ $schema: http://json-schema.org/draft-07/schema#

+ 

+ description:

+     Testing has been queued, but not yet started.

+     This message is meant to signal a product team that

+     a group of containers is ready to be tested.

+ 

+ properties:

+     ci:

+         $ref: contact.json

+     run:

+         $ref: run.json

+     artifact:

+         $ref: redhat-container-group.json

+     category:

+         $ref: common.json#properties/category

+     type:

+         $ref: common.json#properties/type

+     label:

+         $ref: common.json#properties/label

+     thread_id:

+         $ref: common.json#properties/thread_id

+     namespace:

+         $ref: common.json#properties/namespace

+     note:

+         $ref: common.json#properties/note

+     generated_at:

+         $ref: common.json#properties/generated_at

+     version:

+         $ref: common.json#properties/version

+ 

+ required:

+     - ci

+     - run

+     - artifact

+     - type

+     - category

+     - generated_at

+     - namespace

+     - version

+ 

+ type: object

@@ -0,0 +1,46 @@ 

+ $id: https://pagure.io/fedora-ci/messages/container-image

+ $schema: http://json-schema.org/draft-07/schema#

+ 

+ description:

+     Details about the container group being tested.

+     A container group can be formed when a set of containers

+     becomes available to be tested together as a group.

+ 

+ properties:

+     id:

+       description:

+         ID of this container group.

+       examples:

+         - 1c6ed048-ced9-476b-a5f1-ec626267d42a

+       type: string

+     type:

+       description:

+           Artifact type, in this case 'redhat-container-group'.

+       enum:

+           - redhat-container-group

+       type: string

+     component:

+       description:

+         Name of the product of the group of containers being tested.

+       examples:

+         - openshiftcontainerplatform

+       type: string

+     errata_id:

+       description:

+         id of associated advisory.

+       examples:

+         - 12345

+       type: string

+     images:

+         type: array

+         items:

+             $ref: redhat-container-image.json

+ 

+ required:

+     - id

+     - type

+     - component

+     - errata_id

+     - images

+ 

+ type: object

@@ -0,0 +1,102 @@ 

+ $id: https://pagure.io/fedora-ci/messages/container-image

+ $schema: http://json-schema.org/draft-07/schema#

+ 

+ description:

+     Details about the container image being tested.

+ 

+ properties:

+     type:

+       description:

+           Artifact type, in this case 'redhat-container-image'.

+       enum:

+           - redhat-container-image

+       type: string

+     id:

+         description:

+             Task ID of the buildContainer task

+         examples:

+             - 34456

+         type: string

+     component:

+         description:

+             Image's product name.

+         examples:

+             - openshiftcontainerplatform

+             - redhatenterpriselinux

+         type: string

+     name:

+         description:

+             Name from the container image full name.

+         examples:

+             - python-27-rhel8

+         type: string

+     namespace:

+         description:

+             Namespace from the container image full name.

+         examples:

+             - rhscl

+         type: string

+     full_name:

+         description:

+             Full name of the container image, in the form of "registry:port/namespace/name:tag"

+         examples:

+             - example.com:8888/rhscl/python-27-rhel7:2.7-24

+         type: string

+     registry_url:

+         description:

+             Registry url from the container image full name.

+         examples:

+             - example.com:8888

+         type: string

+     tag:

+         description:

+             Tag from the container image full name.

+         examples:

+             - 2.7-24

+         type: string

+     digest:

+         description:

+             A digest that uniquely identifies the image within a repository.

+         examples:

+           - sha256:67dad89757a55bfdfabec8abd0e22f8c7c12a1856514726470228063ed86593b

+         type: string

+     issuer:

+         description:

+             Build issuer of the artifact.

+         examples:

+             - yuxzhu

+         type: string

+     scratch:

+         description:

+             Indication if the build is a scratch build.

+         examples:

+             - true

+             - false

+         type: boolean

+     nvr:

+         description:

+             Name-version-release of the artifact.

+         examples:

+             - someapp-2.8.71-7.el7_4

+         type: string

+     source:

+         description:

+             The first item in the request field from task details. This is

+             usually a link to git repository with a reference, delimited with

+             the '#' sign. In case of a scratch build or other build built via

+             uploading a src.rpm the build task source will look like the bash

+             scratch build.

+         examples:

+             - git+https://github.com/docker/rootfs.git#container:docker

+         type: string

+ 

+ required:

+     - type

+     - id

+     - component

+     - full_name

+     - issuer

+     - nvr

+     - scratch

+ 

+ type: object

Added new message type: redhat-container-group.test.queued

description:
    Testing has been queued, but not yet started.
    This message is meant to signal a product team that
    a group of containers is ready to be tested.

Added new objects:

- redhat-container-group.test.queued
- redhat-container-group
- redhat-container-image

@shebert I wonder if this should not really be redhat-container-image-group instead. Isn't this about testing multiple RH container images? I thought so ... if this is about "general" container images, it is fine. Not yet sure if we need to make this distinction though ...

@shebert this makes me think that this is definitely more a redhat-container-image-group

@shebert, I believe the map here should be images, not builds? To be more specific?

this does not feel like a container image "NVR". Maybe we want some better name here? (I thought full_name - i.e. CONTAINER_IMAGE_FULL_NAME from our doc)

If we need like a brew nvr here, maybe let's call it brew_nvr for this artifact

we need a better example of container source I believe. Just I am not sure if fedora has containers namespace chm ...

Please add artifact.id key - artifact.type identifies what artifact the message describes, artifact.id contains the ID, unique among artifacts of the same type. This idea does not prohibit adding other keys with the similar or even same content, but it just simplifies things for consumer and a mere reader - all messages are consistent in the way they use to point to the artifact they relate to, via keys that have the same name across all artifact types and messages.

rebased onto aa8e6bc1b15ec81100cf76570d8a5f8739cf42c1

5 years ago

rebased onto 5998eb2

5 years ago

@shebert I believe this is now redhat-container-group

LGTM, I believe we can add examples for redhat-container-image later.

Pull-Request has been merged by mvadkert

5 years ago