As only one CRW instance can be running on single cluster, we need a way how to accomodate clusters for testing as well as clusters for personal development (or manual/explarotary testing). This could be achieved by using Single Node Openshift (available since OCP 4.9).
I've tried to create SNO on PSI Openstack using assisted installer, but with no luck, but using flexy I was able to create fully working Openshift cluster with just single node.
I think we should now create simplified job for installing such clusters, that could be easily usable by anybody (as we have for installing OCP on OSP or AWS).
As with the OSP and AWS jobs, this new job should prepare correct ENV_VARS and config.yaml, run flexy-install job with those parameters and then add our typical IDP (plus maybe automatically configure brew ImageContentSourcePolicy and add Brew CatalogSource?)
Here's flexy-install job run, that successfully installed SNO - https://main-jenkins-csb-crwqe.apps.ocp4.prod.psi.redhat.com/job/Flexy/job/flexy-install/600/parameters/
In case the run gets deleted/discarded here's what it used:
GIT_PRIVATE_OPENSHIFT_MISC_URI=http://git.host.prod.eng.bos.redhat.com/git/openshift-misc.git
GIT_PRIVATE_TEMPLATES_URI=https://gitlab.cee.redhat.com/aosqe/flexy-templates.git
VARIABLES_LOCATION=private-templates/functionality-testing/aos-4_9/ipi-on-osp/versioned-installer
LAUNCHER_VARS={"installer_payload_image":"registry.ci.openshift.org/ocp/release:4.9.6","num_workers": 0, "num_masters":1, "master_worker_AllInOne":"true", "vm_type":"ci.standard.xxxl", "bootstrap_in_place":"yes", "dns_solution":"route53", "vm_type_workers":"ci.m4.xlarge"}
BUSHSLICER_CONFIG={}
BUSHSLICER_LOG_LEVEL=INFO
REG_SVC_CI_USER=username-unused
AWS_PAGER=cat
services:
AWS-CI:
awscred: "${WORKSPACE}/config/.awscred"
config_opts:
region: us-east-2
install_base_domain: crw-qe.com # depend on route53 setup
cloud_type: aws
host_opts:
user: root
class: SSHAccessibleHost
ssh_private_key: "${WORKSPACE}/config/openshift-qe.pem"
dyndns:
# for account see https://gitlab.cee.redhat.com/ccit/oneocpdeploy_creds
# user_name: "ccit-test" # Dynect username&pass should be provided in CREDENTIALS
# password: ""
customer_name: redhat
zone: fw.rhcloud.com
retries: 2
domain_suffix: fw.rhcloud.com
end_point: "https://api2.dynect.net"
openstack_upshift:
tenant_name: codeready-workspaces-jenkins
# user: psi-codeready-workspaces #Openstack user&pass should be provided in CREDENTIALS
# password: ""
domain: { name: "redhat.com" }
url: https://rhos-d.infra.prod.upshift.rdu2.redhat.com:13000/v3/auth/tokens
host_opts:
user: root
# set this if you want your key in provisioned VMs
# also helps with gather logs command
# path relative to your private config dir, public key expected to be .pub
ssh_private_key: ${WORKSPACE}/config/releng.pem
class: SSHAccessibleHost
image: irrelevant
cloud_type: openstack
fix_hostnames: true
floating_ip_network: false
DYNECT_CREDENTIALS=dynect REG_SVC_CI=reg_svc_ci REG_QUAY=reg_quay_crw_bot OPENSTACK=psi-codeready-workspaces REG_REDHAT=registry.redhat.io_crw_bot REG_BREW_OSBS=brew-registry
apiVersion: v1
kind: Pod
spec:
containers:
- name: jnlp
image: docker-registry.upshift.redhat.com/flexy/ocp4:v1.8
imagePullPolicy: Always
command:
- /usr/bin/dumb-init
- "--"
- /usr/local/bin/run-jnlp-client
resources:
limits:
cpu: 900m
memory: 900Mi
requests:
cpu: 600m
memory: 800Mi
- mentioned on