diff --git a/docs/run-the-playbooks-for-hypershift.md b/docs/run-the-playbooks-for-hypershift.md index 273b0224..0206f77b 100644 --- a/docs/run-the-playbooks-for-hypershift.md +++ b/docs/run-the-playbooks-for-hypershift.md @@ -9,7 +9,7 @@ * If using dynamic IP for agents, make sure you have entries in DHCP Server for macaddresses you are using in installation to map to IPv4 addresses and along with this DHCP server should make your IPs to use nameserver which you have configured. ## Note: * As of now we are supporting only macvtap for hypershift Agent based installation for KVM compute nodes. -* Supported network modes for zVM : vswitch, OSA, RoCE +* Supported network modes for zVM : vswitch, OSA, RoCE, Hipersockets ## Step-1: Setup Ansible Vault for Management Cluster Credentials ### Overview diff --git a/docs/set-variables-group-vars.md b/docs/set-variables-group-vars.md index 407a4f2f..210d754d 100644 --- a/docs/set-variables-group-vars.md +++ b/docs/set-variables-group-vars.md @@ -235,6 +235,7 @@ **hypershift.hcp.ocp_release** | OCP Release version for Hosted Control Cluster and Nodepool | 4.13.0-rc.4-multi **hypershift.hcp.machine_cidr** | Machines CIDR for Hosted Cluster | 192.168.122.0/24 **hypershift.hcp.arch** | Architecture for InfraEnv and AgentServiceConfig" | s390x +**hypershift.hcp.additional_flags** | Any additional flags for creating hcp ( In hcp create cluster agent command ) | --fips **hypershift.hcp.pull_secret** | Pull Secret of Management Cluster Make sure to enclose pull_secret in 'single quotes' | '{"auths":{"cloud.openshift.com":{"auth":"b3Blb...4yQQ==","email":"redhat.user@gmail.com"}}}' **hypershift.mce.version** | version for multicluster-engine Operator | 2.4 **hypershift.mce.instance_name** | name of the MultiClusterEngine instance | engine diff --git a/inventories/default/group_vars/all.yaml.template b/inventories/default/group_vars/all.yaml.template index 2cc092ee..729250b0 100644 --- a/inventories/default/group_vars/all.yaml.template +++ b/inventories/default/group_vars/all.yaml.template @@ -297,6 +297,7 @@ hypershift: ocp_release: machine_cidr: 192.168.122.0/24 arch: + additional_flags: # Make sure to enclose pull_secret in 'single quotes' pull_secret: @@ -340,7 +341,7 @@ hypershift: # zVM specific parameters - s390x zvm_parameters: - network_mode: vswitch # Supported modes: vswitch,osa + network_mode: vswitch # Supported modes: vswitch,osa, RoCE, Hipersockets disk_type: # Supported modes: fcp , dasd vcpus: 4 memory: 16384 diff --git a/roles/boot_agents_hypershift/tasks/main.yaml b/roles/boot_agents_hypershift/tasks/main.yaml index 1b808751..35da5b4e 100644 --- a/roles/boot_agents_hypershift/tasks/main.yaml +++ b/roles/boot_agents_hypershift/tasks/main.yaml @@ -29,5 +29,4 @@ --extra-args "console=tty1 console=ttyS1,115200n8 coreos.inst.persistent-kargs=console=tty1 console=ttyS1,115200n8" async: 3600 poll: 0 - loop: "{{ range(hypershift.agents_parms.agents_count|int) | list }}" - + loop: "{{ range(hypershift.agents_parms.agents_count|int) | list }}" \ No newline at end of file diff --git a/roles/boot_zvm_nodes_hypershift/templates/boot_nodes.py b/roles/boot_zvm_nodes_hypershift/templates/boot_nodes.py index 7db88e72..0b4858ec 100644 --- a/roles/boot_zvm_nodes_hypershift/templates/boot_nodes.py +++ b/roles/boot_zvm_nodes_hypershift/templates/boot_nodes.py @@ -13,7 +13,7 @@ parser.add_argument("--kernel", type=str, help="kernel URI", required=True, default='') parser.add_argument("--cmdline", type=str, help="kernel cmdline", required=True, default='') parser.add_argument("--initrd", type=str, help="Initrd URI", required=True, default='') -parser.add_argument("--network", type=str, help="Network mode for zvm nodes Supported modes: OSA, vswitch, RoCE ", required=True) +parser.add_argument("--network", type=str, help="Network mode for zvm nodes Supported modes: OSA, vswitch, RoCE , Hipersockets", required=True) args = parser.parse_args() @@ -22,7 +22,7 @@ } interfaces=[] -if args.network.lower() == 'osa': +if args.network.lower() == 'osa' or args.network.lower() == 'hipersockets': interfaces=[{ "type": "osa", "id": "{{ hypershift.agents_parms.zvm_parameters.nodes[item].interface.subchannels.split(',') | map('regex_replace', '0.0.', '') | join(',') }}"}] elif args.network.lower() == 'roce': diff --git a/roles/create_hcp_InfraEnv_hypershift/tasks/main.yaml b/roles/create_hcp_InfraEnv_hypershift/tasks/main.yaml index 748091ca..95d699fd 100644 --- a/roles/create_hcp_InfraEnv_hypershift/tasks/main.yaml +++ b/roles/create_hcp_InfraEnv_hypershift/tasks/main.yaml @@ -70,13 +70,15 @@ {% endif %} --infra-availability-policy "SingleReplica" --image-content-sources /root/ansible_workdir/icsp.yaml - --release-image=quay.io/openshift-release-dev/ocp-release:{{ hypershift.hcp.ocp_release }} {% set release_image = lookup('env', 'HCP_RELEASE_IMAGE') %} {% if release_image is defined and release_image != '' %} --release-image={{ release_image }} {% else %} --release-image=quay.io/openshift-release-dev/ocp-release:{{ hypershift.hcp.ocp_release }} {% endif %} + {% if hypershift.hcp.additional_flags is defined and hypershift.hcp.additional_flags != '' %} + {{ hypershift.hcp.additional_flags }} + {% endif %} - name: Waiting for Hosted Control Plane to be available command: oc wait --timeout=30m --for=condition=Available --namespace={{ hypershift.hcp.clusters_namespace }} hostedcluster/{{ hypershift.hcp.hosted_cluster_name }}