You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: plugins/openshift/README.md
+127-2Lines changed: 127 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,10 +16,22 @@ This command automates the complex process of rebasing OpenShift forks following
16
16
17
17
### `/openshift:bump-deps`
18
18
19
-
Automates the process of bumping dependencies in OpenShift organization projects. It analyzes the dependency, determines
20
-
the appropriate version to bump to, updates the necessary files (go.mod, go.sum, package.json, etc.), runs tests,
19
+
Automates the process of bumping dependencies in OpenShift organization projects. It analyzes the dependency, determines
20
+
the appropriate version to bump to, updates the necessary files (go.mod, go.sum, package.json, etc.), runs tests,
21
21
and optionally creates Jira tickets and pull requests.
22
22
23
+
### `/openshift:create-cluster`
24
+
25
+
Extract OpenShift installer from release image and create an OCP cluster.
26
+
27
+
This command automates the process of extracting the installer from a release image and creating a new OpenShift cluster on various platforms (AWS, Azure, GCP, vSphere, OpenStack).
28
+
29
+
### `/openshift:destroy-cluster`
30
+
31
+
Destroy an OpenShift cluster created by the create-cluster command.
32
+
33
+
This command safely destroys a cluster and cleans up all cloud resources. Includes safety confirmations and optional backup of cluster information.
34
+
23
35
See the [commands/](commands/) directory for full documentation of each command.
24
36
25
37
## Installation
@@ -122,6 +134,119 @@ Automates dependency updates in OpenShift projects with comprehensive analysis,
122
134
123
135
See [commands/bump-deps.md](commands/bump-deps.md) for full documentation.
Extract the OpenShift installer from a release image and create a new OpenShift Container Platform cluster. This command automates installer extraction and cluster creation for development and testing purposes.
142
+
143
+
**⚠️ Important**: This is a last-resort tool. For most workflows, use **Cluster Bot**, **Gangway**, or **Multi-PR Testing in CI** instead. Only use this when you need full control over cluster configuration or are testing installer changes.
Safely destroy an OpenShift Container Platform cluster that was created using `/openshift:create-cluster`. This command handles cleanup of all cloud resources with built-in safety confirmations.
204
+
205
+
**⚠️ WARNING**: This operation is **irreversible** and permanently deletes all cluster resources and data.
206
+
207
+
**Basic Usage:**
208
+
```bash
209
+
# Interactive mode (searches for installation directories)
@@ -106,8 +106,8 @@ If arguments are not provided, the command will interactively prompt for:
106
106
-**base-domain** (required): Base domain for the cluster
107
107
- Example: `example.com` → Cluster API will be `api.{cluster-name}.{base-domain}`
108
108
109
-
-**pull-secret** (optional): Path to pull secret file
110
-
-Default: `~/pull-secret.txt`
109
+
-**pull-secret** (required): Path to pull secret file
110
+
-User will be prompted to provide the path
111
111
112
112
-**installer-dir** (optional): Directory to store/find installer binaries
113
113
- Default: `~/.openshift-installers`
@@ -219,22 +219,118 @@ mkdir -p "$INSTALL_DIR"
219
219
cd"$INSTALL_DIR"
220
220
```
221
221
222
-
### 5. Generate install-config.yaml
222
+
### 5. Collect Required Information and Generate install-config.yaml
223
+
224
+
**IMPORTANT**: Do NOT run the installer interactively. Instead, collect all required information from the user and generate the install-config.yaml programmatically.
225
+
226
+
**Step 5.1: Collect Information**
227
+
228
+
Prompt the user for the following information (if not already provided as arguments):
229
+
230
+
1.**SSH Public Key**:
231
+
- Check for existing SSH keys: `ls -la ~/.ssh/*.pub`
232
+
- Ask user to select from available keys or specify path
233
+
- Default: `~/.ssh/id_rsa.pub`
234
+
235
+
2.**Platform** (if not provided as argument):
236
+
- Ask user to select: aws, azure, gcp, vsphere, openstack, none
237
+
238
+
3.**Platform-specific details**:
239
+
- For AWS:
240
+
- Region (e.g., us-east-1, us-west-2)
241
+
- For Azure:
242
+
- Region (e.g., centralus, eastus)
243
+
- Cloud name (e.g., AzurePublicCloud)
244
+
- For GCP:
245
+
- Project ID
246
+
- Region (e.g., us-central1)
247
+
- For other platforms: collect required platform-specific info
248
+
249
+
4.**Base Domain**:
250
+
- Ask for base domain (e.g., example.com, devcluster.openshift.com)
251
+
- Validate that domain is configured (e.g., Route53 hosted zone for AWS)
252
+
253
+
5.**Cluster Name**:
254
+
- Ask for cluster name or use default: `ocp-cluster`
255
+
- Validate DNS compatibility (lowercase, hyphens only)
256
+
257
+
6.**Pull Secret**:
258
+
-**IMPORTANT**: Always ask user to provide the path to their pull secret file
259
+
- Do NOT use default paths like `~/pull-secret.txt` or `~/Downloads/pull-secret.txt`
260
+
- Prompt: "Please provide the path to your pull secret file (download from https://console.redhat.com/openshift/install/pull-secret):"
261
+
- Read contents of pull secret file from the provided path
262
+
263
+
**Step 5.2: Generate install-config.yaml**
264
+
265
+
Create the install-config.yaml file programmatically based on collected information:
223
266
224
-
Run the installer's interactive config generation:
0 commit comments