Design
Assess which currently available systems have potential to investigate for the Openstack operators
Collaborate with QE and the development teams currently working on operators and reach consensus on what system would work end-to-end testing
Work with the OpenStack Operators team to help develop CI for the initial Operator to be prototyped (someone to align with Chris Jones & team) – this will allow other DFGs to have a pattern to follow as they take on stewardship of their own Operators.
Organization ask: not to develop two separate systems in upstream/dev/CI and QE
Open questions for operator testing
General CI system open questions
Who do you know who works on Openshift
Podified Control Plane - Team meeting Tuesday 1pm UTC
QE presentation: https://docs.google.com/presentation/d/1hI9XvNM7xHe89r-mWkO47YIN-WIQ08mo0a1ufdBl7-E/edit#slide=id.p
CI flow for current OSPdO : https://docs.google.com/presentation/d/1i3kRLFrBu1yvtyLXR5Tp84kff9NfDg7ZzprrqMWkYUk/edit#slide=id.g8ebb39171e_0_13
ShiftonStack CI ppt https://docs.google.com/presentation/d/1IwUg1AbXuGJhvrcmEhWMz_yljcDcSOWvW7-ZVMTHzg0/edit?skip_itp2_check=true&pli=1#slide=id.p
Notes from Jeff's response:
Essentially, we are looking for :
Focus on single operator test (e.g keystone)
Testing Envs
Space Requirements
Where
Notes on github actions (marios):
stable payloads - look into
promtion workflows - investigate
cluster profiles and periodics:
useful links
required: create repo
Workflow docs
In reference to doc
OWNER
?check-gh-automation
that will block merge otherwise)How can we validate the jobs which we are adding? We are adding some check jobs for mariadb operator in below PR but a different set of jobs are running which is validation the change not the job which we are adding.
How to decide quota for vexx?
How to prepare this configuration?
How to properly add our secrets?
How we get a AWS subdomain for our clusters?
* Control node - 3 nodes - 16G x 3= 48G, 8vcpu x 3=24vcpu , 120GB *3 = 360GB (ram = 48G, cpu = 24vcpu, disk=360GB)
* worker - 3 nodes = (ram = 48G, cpu = 24vcpu, disk=360GB)
* bastion(not sure if we use bastion node) = (4G ram, 2vcpu , disk=20GB)
total = (ram = 100G, cpu = 50vcpu, disk=740GB)
Note: We need atleast two full cluster for POC. Also, We need to investigate if reducing number of Control node and worker node is possible.
total full deploys = (ram = 200G, cpu = 190vcpu, disk=1500GB)
total single node = (ram = 160G, vcpu = 40vcpu, disk=600GB)
total = (ram = 360G, vcpu = 230vcpu, disk=2100GB)
pkomarov:Topics from a qe-tripleo-ci meeting: QE agree that, with accordance to the flow Sandeep Yadav presented:
Each DFG would have its own operator functional gate with minimal crc+functional operator testing
Then operators are combined and some functional integration testing is run
And that the CI would be written in the same language for dev and qe - so that for qe shift left is easy and for developers early functional testing is available. - Although downstream prow testing is still WIP, so no conclusive results about that.
Discussion around deploying prow internally, Chandan pointed out to below enhancement in prow: Proposal: Support git providers other than GitHub in prow #10146 https://github.com/kubernetes/test-infra/issues/10146
forum-testplatform
slack channel. You can check the thread here. Jakub Guzik was very kind to offer a meeting with his team to clear our Doubts.Github only: Prow is dedicated to being used only with GitHub. Integration with other services like Gitlab are not possible.
Private Github Organization/Repos:
openshift-priv
which are not exposed.Private bucket for logs
Running VPN to RH Network
There are some options for running VPN to rh network but it works as follows: tests continue to be scheduled in the public build clusters as they currently are and they connect via VPN to an internal restricted environment.
VPN configuration and credentials are provided via a Secret volume mount, to be added by the ci-operator.
Useful links:
Private Images:
Private Instance of deck
How can we configure private bucket for logs?
Stephen answered in chat already: We would have to do that for you if it became necessary. We point your jobs at a different bucket. This is really just a necessary point to having a private deck instance. I suppose you could provide us with an SA for your own GCS bucket and we could utilize that, but with QE we maintain the bucket.
What it mean by own deck instance?
Stephen answered in chat already: The frontend for prow: https://prow.ci.openshift.org/. We can create private instances of deck that are secured by oauth.
Do we have some existing tests/jobs which already configure VPN to run tests? Curious to know if this workflow(Configuring VPN in test) is already well tested.
jguzik and bbguimaraes answered in chat already:
Sandeep: Are there any security concerns in running jobs internally in RH Network from Public Prow?
Sandeep: Will we get support from DPTP team for issues if we run jobs in internal network?
Doug: Is there a way of avoiding public IPs when using our own cluster profile? Our own CI cluster?
Doug: Can we test multiple PR changes within the same job?
Doug: Do we need to always depend on openshift/release repo for our jobs definitions? Can we use private repos for these configurations?
FYI.. CI team have started adding/moving CI exploration details into Confluence page.
We will also move content from this hackmd to google doc and get rid of this hackmd, Will attach google doc link in confluence page.
"Evaluate automated promotion of an operator"
IMAGE_TAG_BASE=quay.io/sandyada/keystone-operator VERSION=0.0.12 IMG=$IMAGE_TAG_BASE:v$VERSION make manifests build docker-build docker-push bundle bundle-build bundle-push catalog-build catalog-push
Plans for POC