dev-scripts
Scripts to automate development/test setup for openshift integration with https://github.com/metal3-io/
File Explorer
Download Latest Version (.zip)- update-metal3-dev-env-hash.md
- bug_report.md
- add-nodes.md
- config-presets-and-options.md
- custom-release.md
- none-and-external-platform.md
- automate-no-registry-agent-tui.sh
- test-fix-wrong-dns.sh
- utils.sh
- go.mod
- go.sum
- main.go
- agent_mce_0_01_lso_namespace.yaml
- agent_mce_0_02_lso_operatorgroup.yaml
- agent_mce_0_03_lso_subscription.yaml
- agent_mce_0_03_mce_namespace.yaml
- agent_mce_0_04_mce_operatorgroup.yaml
- agent_mce_0_05_mce_subscription.yaml
- agent_mce_1_01_localvolumes.yaml
- agent_mce_1_02_mce.yaml
- agent_mce_1_03_agentserviceconfig.yaml
- agent_mce_1_04_clusterimageset.yaml
- agent_mce_1_05_autoimport.yaml
- preset_config.py
- billi-release.sh
- add-nodes.yml
- appliance.yml
- install-config.yml
- main.yml
- ztp.yml
- agent-cluster-install_yaml.j2
- agent-config_bond_yaml.j2
- agent-config_yaml.j2
- appliance-config_yaml.j2
- cluster-deployment_yaml.j2
- cluster-image-set_yaml.j2
- infraenv_yaml.j2
- install-config_baremetal_yaml.j2
- install-config_vsphere_yaml.j2
- install-config_yaml.j2
- net_macros.yaml
- nmstateconfig_bond_yaml.j2
- nmstateconfig_yaml.j2
- nodes-config_yaml.j2
- pull-secret_yaml.j2
- registries_conf.j2
- main.yml
- test_id_rsa.pub
- test_ironic_nodes.json
- test_pull_secret.json
- test_preset_config.py
- conftest.py
- Dockerfile.agent-test
- pytest.ini
- 01_agent_requirements.sh
- 03_agent_build_installer.sh
- 04_agent_prepare_release.sh
- 05_agent_configure.sh
- 06_agent_create_cluster.sh
- 07_agent_add_extraworker_nodes.sh
- 08_agent_post_install_validation.sh
- agent_remove_all_extraworker_nodes.sh
- agent_test_commands.sh
- agent_tests.sh
- cleanup.sh
- common.sh
- create-manifests-playbook.yaml
- gather.sh
- iscsi_utils.sh
- iso_no_registry.sh
- OWNERS
- README.md
- crio-storage
- chrony.conf
- 98_master-chronyd-custom.yaml.optional
- 98_worker-chronyd-custom.yaml.optional
- cluster-network-00-gateway-mode.yaml.optional
- ipv6-dual-stack-no-upgrade.yaml
- metal3-cbo-deployment.yaml
- yaml_patch.py
- custom.repo
- Dockerfile
- prepare-image.sh
- cleanup_bgp_tor.sh
- configure_bgp_tor.sh
- launch_demo_bmo.sh
- assisted-deployment.md
- clusterbot.md
- custom-mao-and-capbm.md
- developing-installer.md
- release-payload.md
- file_example.ign
- Dockerfile.ci
- cleanup_lldp_tor.sh
- configure_lldp_tor.sh
- local-bmo.sh
- local-capbm.sh
- local-cbo.sh
- mao-bmo.sh
- mao-capbm.sh
- pause-control-plane.sh
- README.md
- controller_manager_patch.yaml
- kustomization.yaml
- configure_metallb.sh
- deploy_operator.sh
- Makefile
- metallb.yaml
- metallb_common.sh
- OWNERS
- README.md
- run_e2e.sh
- ostest-master-0.yaml
- ostest-master-1.yaml
- ostest-master-2.yaml
- ostest-worker-0.yaml
- ostest-worker-1.yaml
- 00-nmstate-brex-bond-master.yml
- 00-nmstate-brex-bond-worker.yml
- hosts.yaml
- ostest-master-0.yaml
- ostest-master-1.yaml
- ostest-master-2.yaml
- ostest-worker-0.yaml
- ostest-worker-1.yaml
- periodics_pass_rates.sh
- .gitignore
- .mailmap
- 01_install_requirements.sh
- 02_configure_host.sh
- 03_build_installer.sh
- 04_setup_ironic.sh
- 05_create_install_config.sh
- 06_create_cluster.sh
- AGENTS.md
- assisted_deployment.sh
- bootkube_log.sh
- bootstrap_bootkube_log.sh
- bootstrap_ironic_log.sh
- bootstrap_openshift_log.sh
- build-base-image.sh
- build-qemu-aarch64.sh
- cache_cleanup.sh
- ci_logs.sh
- CLAUDE.md
- clouds.yaml.template
- common.sh
- config_example.sh
- CONTRIBUTING.md
- DCO
- dev-setup.md
- external_loadbalancer.sh
- generate_clouds_yaml.sh
- go.mod
- go.sum
- hive_install.sh
- host_cleanup.sh
- ironic_cleanup.sh
- ironic_hosts.json.example
- LICENSE
- logging.sh
- Makefile
- mao-images.sh
- metal3-config.yaml.template
- metal3-templater.go
- must_gather.sh
- network.sh
- oc_mirror.sh
- oc_mirror_cleanup.sh
- ocp_cleanup.sh
- ocp_install_env.sh
- openshift_xinetd_example.conf
- OWNERS
- podman_cleanup.sh
- provisioning-network.sh
- proxy_cleanup.sh
- pyxpath
- README.md
- registry_cleanup.sh
- release_info.sh
- remote_nodes.sh
- rhcos.sh
- run-custom-mao.sh
- run_capi_e2e.sh
- sanitychecks.sh
- setup_capi_e2e.sh
- show_bootstrap_log.sh
- start-mao.sh
- stop-cbo.sh
- stop-mao.sh
- utils.sh
- validation.sh
- vm_setup_vars.yml
- workingdir_cleanup.sh
# Installation Guide
git clone https://github.com/openshift-metal3/dev-scripts
Downloads the entire project code from GitHub to your computer.
cd dev-scripts
Moves into the project folder you just downloaded.
2. Docker
Easy Recommended- Git Needed to download the project code from GitHub.
- Docker Desktop Needed to build and run containers. Install it and keep it running in the background.
docker build -f base-image/Dockerfile -t dev-scripts .
Builds a runnable image based on the Dockerfile.
docker run -p 8080:80 dev-scripts
Runs the built image as an actual container.
3. Go
Mediumcd agent/isobuilder/ui_driven_cluster_installation
This project's files live in a subfolder, so move into it first.
go build ./...
Compiles the Go program into an executable.
go run .
Runs the Go program directly without a separate build step.
4. Make
Medium- Git Needed to download the project code from GitHub.
- Make Usually pre-installed on Linux/macOS. On Windows, install separately (e.g. via MSYS2 or WSL).
make infra_only
Compiles the code based on the generated build configuration to produce an executable.
Make sure that the filesystem has at least 80GB of free space: `df -h /`.
Compiles the code based on the generated build configuration to produce an executable.
Pulled directly from this repo's README.
