xpeditis2.0/scripts/create-minio-bucket.js
David 890bc189ee
Some checks failed
CI/CD Pipeline - Xpeditis PreProd / Frontend - Build & Test (push) Failing after 5m31s
CI/CD Pipeline - Xpeditis PreProd / Frontend - Docker Build & Push (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Backend - Build & Test (push) Failing after 5m42s
CI/CD Pipeline - Xpeditis PreProd / Backend - Docker Build & Push (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Deploy to PreProd Server (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Run Smoke Tests (push) Has been skipped
fix v0.2
2025-11-12 18:00:33 +01:00

46 lines
1.1 KiB
JavaScript

#!/usr/bin/env node
/**
* Create MinIO bucket for document storage
*
* Usage: node scripts/create-minio-bucket.js
*/
const { S3Client, CreateBucketCommand, HeadBucketCommand } = require('@aws-sdk/client-s3');
const bucketName = 'xpeditis-documents';
const s3Client = new S3Client({
endpoint: 'http://localhost:9000',
region: 'us-east-1',
credentials: {
accessKeyId: 'minioadmin',
secretAccessKey: 'minioadmin',
},
forcePathStyle: true,
});
async function createBucket() {
try {
// Check if bucket already exists
try {
await s3Client.send(new HeadBucketCommand({ Bucket: bucketName }));
console.log(`✅ Bucket '${bucketName}' already exists`);
return;
} catch (error) {
if (error.name !== 'NotFound') {
throw error;
}
}
// Create bucket
await s3Client.send(new CreateBucketCommand({ Bucket: bucketName }));
console.log(`✅ Bucket '${bucketName}' created successfully`);
} catch (error) {
console.error(`❌ Failed to create bucket:`, error.message);
process.exit(1);
}
}
createBucket();