Point unmodified AWS tools at this simulator at http://192.168.252.7:9000 — no real credentials needed.
Snippets are copy-paste ready (your live host is filled in) and mirror the conformance harness in tests/conformance/.
export AWS_ACCESS_KEY_ID=test
export AWS_SECRET_ACCESS_KEY=test
export AWS_DEFAULT_REGION=us-east-1
# then pass --endpoint-url http://192.168.252.7:9000 to every command (or set a profile).var creds = StaticCredentialsProvider.create(AwsBasicCredentials.create("test", "test"));
URI ep = URI.create("http://192.168.252.7:9000"); // pass ep + creds to every <Svc>Client.builder()cfg, _ := config.LoadDefaultConfig(ctx, config.WithRegion("us-east-1"),
config.WithCredentialsProvider(credentials.NewStaticCredentialsProvider("test", "test", "")))
// then per service: NewFromConfig(cfg, func(o){ o.BaseEndpoint = aws.String("http://192.168.252.7:9000") })aws --endpoint-url http://192.168.252.7:9000 s3 mb s3://demo
aws --endpoint-url http://192.168.252.7:9000 s3 cp ./f.txt s3://demo/f.txt
aws --endpoint-url http://192.168.252.7:9000 s3 ls s3://demoS3Client s3 = S3Client.builder().endpointOverride(ep).region(Region.US_EAST_1)
.credentialsProvider(creds).forcePathStyle(true).build();
s3.createBucket(b -> b.bucket("demo"));s3c := s3.NewFromConfig(cfg, func(o *s3.Options) {
o.BaseEndpoint = aws.String("http://192.168.252.7:9000"); o.UsePathStyle = true })
s3c.CreateBucket(ctx, &s3.CreateBucketInput{Bucket: aws.String("demo")})aws --endpoint-url http://192.168.252.7:9000 ec2 describe-instances
aws --endpoint-url http://192.168.252.7:9000 ec2 describe-vpcsEc2Client ec2 = Ec2Client.builder().endpointOverride(ep).region(Region.US_EAST_1)
.credentialsProvider(creds).build();
ec2.describeInstances();ec2c := ec2.NewFromConfig(cfg, func(o *ec2.Options) { o.BaseEndpoint = aws.String("http://192.168.252.7:9000") })
ec2c.DescribeInstances(ctx, &ec2.DescribeInstancesInput{})aws --endpoint-url http://192.168.252.7:9000 iam create-user --user-name alice
aws --endpoint-url http://192.168.252.7:9000 iam list-usersIamClient iam = IamClient.builder().endpointOverride(ep).region(Region.AWS_GLOBAL)
.credentialsProvider(creds).build();
iam.listUsers();iamc := iam.NewFromConfig(cfg, func(o *iam.Options) { o.BaseEndpoint = aws.String("http://192.168.252.7:9000") })
iamc.ListUsers(ctx, &iam.ListUsersInput{})aws --endpoint-url http://192.168.252.7:9000 sqs create-queue --queue-name demo
aws --endpoint-url http://192.168.252.7:9000 sqs list-queuesSqsClient sqs = SqsClient.builder().endpointOverride(ep).region(Region.US_EAST_1)
.credentialsProvider(creds).build();
sqs.createQueue(b -> b.queueName("demo"));sqsc := sqs.NewFromConfig(cfg, func(o *sqs.Options) { o.BaseEndpoint = aws.String("http://192.168.252.7:9000") })
sqsc.CreateQueue(ctx, &sqs.CreateQueueInput{QueueName: aws.String("demo")})aws --endpoint-url http://192.168.252.7:9000 dynamodb list-tablesDynamoDbClient ddb = DynamoDbClient.builder().endpointOverride(ep).region(Region.US_EAST_1)
.credentialsProvider(creds).build();
ddb.listTables();ddbc := dynamodb.NewFromConfig(cfg, func(o *dynamodb.Options) { o.BaseEndpoint = aws.String("http://192.168.252.7:9000") })
ddbc.ListTables(ctx, &dynamodb.ListTablesInput{})aws --endpoint-url http://192.168.252.7:9000 rds describe-db-instancesRdsClient rds = RdsClient.builder().endpointOverride(ep).region(Region.US_EAST_1)
.credentialsProvider(creds).build();
rds.describeDBInstances();rdsc := rds.NewFromConfig(cfg, func(o *rds.Options) { o.BaseEndpoint = aws.String("http://192.168.252.7:9000") })
rdsc.DescribeDBInstances(ctx, &rds.DescribeDBInstancesInput{})aws --endpoint-url http://192.168.252.7:9000 lambda list-functionsLambdaClient lam = LambdaClient.builder().endpointOverride(ep).region(Region.US_EAST_1)
.credentialsProvider(creds).build();
lam.listFunctions();lamc := lambda.NewFromConfig(cfg, func(o *lambda.Options) { o.BaseEndpoint = aws.String("http://192.168.252.7:9000") })
lamc.ListFunctions(ctx, &lambda.ListFunctionsInput{})aws --endpoint-url http://192.168.252.7:9000 apigateway get-rest-apisApiGatewayClient ag = ApiGatewayClient.builder().endpointOverride(ep).region(Region.US_EAST_1)
.credentialsProvider(creds).build();
ag.getRestApis();agc := apigateway.NewFromConfig(cfg, func(o *apigateway.Options) { o.BaseEndpoint = aws.String("http://192.168.252.7:9000") })
agc.GetRestApis(ctx, &apigateway.GetRestApisInput{})