Gemini Powered Migrations To Google Cloud¶
This project provides a set of Gemini CLI custom commands to accelerate assessments and migration of workloads and data from Amazon Web Services (AWS) and Azure to Google Cloud. The Gemini CLI custom commands use Gemini to analyze data, identifying suitable resources for migration, and augmenting traditional assessments with AI.
Prerequisites¶
To effectively utilize these instructions, ensure the following are set up:
- Gemini CLI: Installed and configured. For installation instructions, visit geminicli.com.
- Source Cloud Provider Inventory Details: Access to inventory and
assessment reports (e.g., bucket/container policies, locations, object lists)
from your source cloud provider (AWS, Azure, etc.) for analysis. Sample inputs
are available in the
test-data/folder.
Gemini CLI custom commands¶
The following custom commands are configured in this project under
.gemini/commands folder.
Evaluate inventories¶
The custom commands in this section are aimed at helping you accelerate the evaluation.
-
/aws-lambda-to-cloud-run-poc-selection: This command assists in reviewing AWS Lambda inventories to identify suitable functions for migration to Cloud Run. Example:
-
/aws-s3-bucket-poc-selection: This command assists in reviewing Amazon S3 buckets inventories to identify suitable buckets for migration to Google Cloud Storage. Example:
-
/azure-blob-storage-poc-selection: This command helps analyze Azure Blob Storage inventories to suggest containers that are good candidates for migration to Google Cloud Storage.
Setup & Usage Instructions¶
-
Install Gemini CLI. For installation instructions, visit geminicli.com.
-
Clone the repository:
-
Configure the Gemini CLI custom commands in the
cloud-solutions/projects/gemini-powered-migrations-to-google-clouddirectory so that they are available as global user commands or project commands. -
Change the working directory to the directory where you stored the files you want to assess with Gemini CLI, such as inventory files from other cloud providers.
-
Start Gemini CLI:
-
Run the Gemini CLI authentication command, and follow instructions:
-
Run one of the provided custom commands.
-
Review generated report with recommendations.
Test Data¶
The test-data/ directory contains sample inventories from Amazon S3 and Azure
Blob Storage. These files are structured to mimic real-world cloud provider
outputs and are used by the custom Gemini CLI commands to demonstrate the
migration selection process without requiring actual cloud environments. This
data includes:
aws-lambda-assessment-results/: Contains mock data for AWS Lambda functions.aws-s3-assessment-results/: Contains mock data for S3 bucket locations, policies, and bucket lists.azure-blob-storage-assessment-results/: Contains mock data for Azure Blob Storage container locations, policies, and blob lists.sample-selection/: Stores example output files generated by the Gemini CLI custom commands, showing how a proof of concept migration selection might look.