S3 Protocol
Checks if S3 compatible endpoints (like Minio, EMC ECS) are functioning correctly,
To check the contents of a S3 bucket use: S3 Bucket
The S3 check:
- Lists objects in the bucket to check for Read permissions
 - Puts an object into the bucket for Write permissions
 - Downloads previously uploaded object to check for Get permissions
 
s3-protocolapiVersion: canaries.flanksource.com/v1
kind: Canary
metadata:
  name: s3-protocol-check
spec:
  schedule: "@every 5m"
  s3:
    - name: s3-check
      bucketName: flanksource-public
      objectPath: dummy
      region: us-east-1
      accessKey:
        valueFrom:
          secretKeyRef:
            name: aws-credentials
            key: AWS_ACCESS_KEY_ID
      secretKey:
        valueFrom:
          secretKeyRef:
            name: aws-credentials
            key: AWS_SECRET_ACCESS_KEY
| Field | Description | Scheme | 
|---|---|---|
bucket* | Bucket name to test against  | string  | 
name* | Name of the check, must be unique within the canary  | string  | 
objectPath* | Path of object to upload/download for test  | string  | 
storageClass | Storage Class of the test object to create  | string  | 
description | Description for the check  | string  | 
display | Expression to change the formatting of the display  | |
icon | Icon for overwriting default icon on the dashboard  | |
labels | Labels for check  | map[string]string  | 
metrics | Metrics to export from  | |
test | Evaluate whether a check is healthy  | |
transform | Transform data from a check into multiple individual checks  | |
connection | The connection url to use, mutually exclusive with   | |
accessKey | ||
secretKey | ||
region | The AWS region  | string  | 
endpoint | Custom AWS Endpoint to use  | string  | 
skipTLSVerify | Skip TLS verify when connecting to AWS  | bool  |