Uploaded image for project: 'Red Hat OpenShift Dev Spaces (formerly CodeReady Workspaces) '
  1. Red Hat OpenShift Dev Spaces (formerly CodeReady Workspaces)
  2. CRW-2427

Adapt/create flexy job for installing SNO Openshifts on openstack

XMLWordPrintable

    • Icon: QE Task QE Task
    • Resolution: Done
    • Icon: Blocker Blocker
    • 2.14.0.GA
    • 2.14.0.GA
    • testing
    • None
    • QE-2022-01-11 (Sprint: 212)

      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:

      ENV_VARS
      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
      
      CONFIG_YAML
      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
      
      CREDENTIALS
      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
      
      AGENT_POD_SPEC
      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
      

            dnochevn Dmytro Nochevnov
            rhopp@redhat.com Radim Hopp
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: