import {
COMMON_AWS_HOSTS,
DEFAULT_ACCESS_KEY_SECRET,
DEFAULT_SECRET_KEY_SECRET,
DEFAULT_SESSION_TOKEN_SECRET,
accessKeySetupUrl,
secretKeySetupUrl,
sessionTokenSetupUrl,
} from './validation.ts'
export { getCallerIdentity } from './identity.ts'
export { listBuckets, listObjects, getObjectMetadata, putObject, deleteObject } from './s3.ts'
export { listLogGroups, getLogEvents } from './logs.ts'
export { listMetrics, getMetricStatistics } from './metrics.ts'
export { awsRequest } from './request.ts'
export { getConfig, setDefaultRegion, clearConfig } from './config.ts'
export { smokeTest } from './smoke-test.ts'
export { isDryRun } from './validation.ts'
export { AwsApiError } from './helpers.ts'
/** Package overview and safety metadata for AWS helpers. */
export default async function awsOverview() {
return {
auth: 'access-key-secret-key',
oauth: false,
hosts: [...COMMON_AWS_HOSTS],
secrets: {
accessKeyId: DEFAULT_ACCESS_KEY_SECRET,
secretAccessKey: DEFAULT_SECRET_KEY_SECRET,
sessionToken: DEFAULT_SESSION_TOKEN_SECRET,
},
secretUrls: {
accessKeyId: accessKeySetupUrl(),
secretAccessKey: secretKeySetupUrl(),
sessionToken: sessionTokenSetupUrl(),
},
exports: [
'smoke-test',
'guide',
'identity',
's3',
'logs',
'metrics',
'request',
'config',
'scheduled-identity-check',
],
safety: {
mutationsDefaultToDryRun: true,
mutationsRequireConfirmation: true,
jobsDisabledByDefault: true,
s3GetReturnsMetadataOnly: true,
neverPrintsSecretValues: true,
noBakedInAccountIdsOrBuckets: true,
},
}
}