Start this route locally
Use the directed S3 to Cloud Storage mapping in the shared startup steps:1
Install or update the Tensor9 CLI
Install the customer CLI with Homebrew, then confirm the binary is available:If
tensor9 is already installed, run brew upgrade tensor9 instead of the install command.2
Authenticate with Tensor9
A Tensor9 API key is required. Use the key issued during onboarding, or email [email protected] to request one for your organization. Do not share your account or key with another customer or organization.If your secret manager has already supplied Check that the variable is set without printing it, then verify your Tensor9 identity:Confirm that the reported identity belongs to the intended customer account. Do not continue if authentication fails or the account is wrong. Keep shell tracing disabled while using the key. Do not paste the key into commands, shell profiles, source files, screenshots or support messages.See Install and Authenticate for the planned license lifecycle, entitlements and credential boundaries.
T9_API_KEY, skip the prompt. Otherwise, enter your key at a hidden prompt in the terminal where you will run tensor9:- Bash
- Zsh
3
Confirm the directed service mapping
Confirm that you exported the canonical origin and backend service names supplied by this quickstart:Then inspect the mapping before starting a process:Read the supported operations and limitations for that direction. A similarly named service in the target cloud is not enough. If no directed profile exists, choose another mapping before continuing.
4
Prepare target-cloud access
Authenticate with the target cloud using its standard credential chain. The adapter uses that target identity when it calls the backend service.Keep credentials in your shell, workload identity, or local credential store. Do not put secrets in the command line, source code, or screenshots.
5
Start the service adapter
Run one service adapter as a foreground process:Leave this terminal open. This is the current foreground launcher, not the pending Docker launcher for local development mode. It calls your actual target-cloud services; it is separate from the in-memory emulator. Acquisition and license renewal require Tensor9 authentication. Keep the endpoint local to your test.
6
Copy the listening endpoint
When the command reports its listening endpoint, copy that exact value into a second terminal:Keep the endpoint local to the test unless you have deliberately configured network access and authentication for another machine.
7
Run one bounded request
Continue with this page’s client or tool instructions. Point only the service under test at
T9_CLOUD_ADAPTER_ENDPOINT, then perform one operation whose target effect you can verify independently.Check both sides: read the origin-shaped response and inspect the native target resource. A successful client response alone does not prove that the target state is correct.8
Stop the local adapter
Return to the first terminal and press Control-C. Confirm the process exits before deleting the test resource with the target cloud’s native client.If the request failed, preserve the request ID, adapter endpoint, operation name, target request ID, and any
x-t9-explain-* receipt headers before stopping the process.What you will prove
This test does not migrate existing objects, versions, bucket policies, or signed links.
Before you begin
You need an installed AWS-origin Cloud Adapter endpoint, a configured S3 to Cloud Storage service adapter, an origin-side test identity, a Google Cloud runtime identity with access to one test bucket, AWS CLI v2, andgcloud for native verification.
Review S3 on Google Cloud. The core object lifecycle is supported. Multipart upload is composed through temporary objects; ListMultipartUploads and UploadPartCopy are outside this target profile. Bucket policy, ACL, retention, and legal-hold behavior are not provided by this object endpoint.
Set test values
AWS_REQUEST_CHECKSUM_CALCULATION=WHEN_REQUIRED keeps this smoke test on the required S3 checksum path. Validate optional flexible-checksum behavior separately if your application enables it.
The commands below use an explicit --endpoint-url. To route every S3 client in the process instead, set AWS_ENDPOINT_URL_S3="$T9_CLOUD_ADAPTER_ENDPOINT" and omit the command-level override.
Verify target access first
Confirm that your verification identity can see the target bucket without using Cloud Adapter:Write through the S3 API
Read it through both sides
Exercise the error mapping
Inspect an explanation
Use the S3 to Cloud Storage service profile to confirm the selected operation’s coverage, then follow Understanding Behavior with Explain. A hypothetical explanation is the safe first choice when you are investigating how a covered request would map. The shorthandx-t9-explain: true executes the request as well as explaining it, so do not attach it to the completed upload merely to recreate evidence.
The S3 to Cloud Storage worked investigation shows how to read the origin result, explanation report and native object observation together. An explanation receipt is not proof that a write committed or that a retry is safe.