$env:OCI_CONFIG_FILE = "C:\Users\TiagoRibeiro\.oci\config" $env:OCI_KEY_FILE = "C:\Users\TiagoRibeiro\.oci\api_key.pem" $NAMESPACE = "grbb7qzeuoag" $DEV_COMPARTMENT = "ocid1.compartment.oc1..aaaaaaaa76x3nykkjwvctpr6px34dysu3pbg7p62h2r65fegt7fvbrioll3a" $mfes = @("auth", "person", "poc", "shell", "user", "formalization") foreach ($mfe in $mfes) { $oldBucket = "mfe-mfe-$mfe-dev" $newBucket = "mfe-$mfe-dev" Write-Host "`n--- Processing MFE: $mfe ---" # 1. Ensure new bucket exists in DEV compartment $exists = & "C:\oci\bin\oci.exe" os bucket get --namespace-name $NAMESPACE --bucket-name $newBucket 2>$null if (!$exists) { Write-Host "Creating bucket $newBucket in DEV compartment..." & "C:\oci\bin\oci.exe" os bucket create --namespace-name $NAMESPACE --name $newBucket --compartment-id $DEV_COMPARTMENT --public-access-type ObjectReadWithoutList } else { Write-Host "Bucket $newBucket already exists." } # 2. Check if duplicate bucket exists to migrate $oldExists = & "C:\oci\bin\oci.exe" os bucket get --namespace-name $NAMESPACE --bucket-name $oldBucket 2>$null if ($oldExists) { Write-Host "Found duplicate bucket $oldBucket. Migrating objects to $newBucket..." $objects = & "C:\oci\bin\oci.exe" os object list --namespace-name $NAMESPACE --bucket-name $oldBucket --all --query "data[*].name" | ConvertFrom-Json foreach ($obj in $objects) { Write-Host " Copying $obj..." & "C:\oci\bin\oci.exe" os object copy --namespace-name $NAMESPACE --bucket-name $oldBucket --destination-bucket $newBucket --source-object-name $obj } Write-Host "Migration complete for $mfe. You can now manually delete $oldBucket after verification." } }