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
feat(ibmcloud): add IBM COS S3-compatible backend support
Add provider-specific env vars (IBMCLOUD_COS_ACCESS_KEY_ID,
IBMCLOUD_COS_SECRET_ACCESS_KEY, IBMCLOUD_COS_ENDPOINT) and map them
to AWS SDK env vars so the Pulumi S3 backend can authenticate to IBM
Cloud Object Storage. Construct the full Pulumi backend URL with
endpoint query params via Provider.Init() return value, ensuring
Pulumi connects to COS instead of amazonaws.com.
Also adds DestroyStack with lock cleanup, CleanupState for post-destroy
state removal, --keep-state flag, empty key guard in parseS3BackedURL,
and consolidates IBMCLOUD_* string constants.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: docs/ibmcloud/ibm-power.md
+47Lines changed: 47 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,6 +24,9 @@ On first boot, cloud-init automatically configures the PowerVS instance for on-p
24
24
|`IBMCLOUD_ACCOUNT`| yes | IBM Cloud account ID |
25
25
|`IBMCLOUD_API_KEY`| yes | IBM Cloud API key |
26
26
|`IC_REGION`| yes | IBM Cloud region (e.g. `us-south`, `us-east`) |
27
+
|`IBMCLOUD_COS_ACCESS_KEY_ID`| only with S3 `--backed-url`| HMAC access key for IBM Cloud Object Storage |
28
+
|`IBMCLOUD_COS_SECRET_ACCESS_KEY`| only with S3 `--backed-url`| HMAC secret key for IBM Cloud Object Storage |
29
+
|`IBMCLOUD_COS_ENDPOINT`| no | COS S3 endpoint (defaults to `s3.<region>.cloud-object-storage.appdomain.cloud`) |
27
30
28
31
## Create
29
32
@@ -134,6 +137,34 @@ podman run -d --name ibm-power \
134
137
--otel-auth-token <uuid-token>
135
138
```
136
139
140
+
## Using IBM Cloud Object Storage as S3 backend
141
+
142
+
To store Pulumi state in IBM COS instead of a local file, create [HMAC credentials](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-uhc-hmac-credentials-main) for your COS instance and pass an `s3://` backed URL:
Copy file name to clipboardExpand all lines: docs/ibmcloud/ibm-z.md
+46Lines changed: 46 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,6 +15,9 @@ Two networking modes are supported:
15
15
|`IBMCLOUD_API_KEY`| yes | IBM Cloud API key |
16
16
|`IC_REGION`| yes | IBM Cloud region (e.g. `us-south`, `us-east`) |
17
17
|`IC_ZONE`| only without `--subnet-id`| Availability zone (e.g. `us-south-2`) |
18
+
|`IBMCLOUD_COS_ACCESS_KEY_ID`| only with S3 `--backed-url`| HMAC access key for IBM Cloud Object Storage |
19
+
|`IBMCLOUD_COS_SECRET_ACCESS_KEY`| only with S3 `--backed-url`| HMAC secret key for IBM Cloud Object Storage |
20
+
|`IBMCLOUD_COS_ENDPOINT`| no | COS S3 endpoint (defaults to `s3.<region>.cloud-object-storage.appdomain.cloud`) |
18
21
19
22
## Create
20
23
@@ -112,6 +115,33 @@ podman run -d --name ibm-z \
112
115
--otel-auth-token <uuid-token>
113
116
```
114
117
118
+
## Using IBM Cloud Object Storage as S3 backend
119
+
120
+
To store Pulumi state in IBM COS instead of a local file, create [HMAC credentials](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-uhc-hmac-credentials-main) for your COS instance and pass an `s3://` backed URL:
0 commit comments