From e263cdd9562ddaac0d5f4f087a0a1478a5af1785 Mon Sep 17 00:00:00 2001
From: Tushar <codingid6@gmail.com>
Date: Mon, 20 Mar 2023 05:57:35 +0000
Subject: [PATCH] Automate bucket creation in minio

---
 .env                       |  1 +
 .gitpod.yml                |  4 ++++
 docker-compose.gitpod.yaml | 16 +++++++++++++++-
 3 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/.env b/.env
index eb18f05..fa7f07b 100644
--- a/.env
+++ b/.env
@@ -7,6 +7,7 @@ FUSIONAUTH_APP_MEMORY=512M
 
 MINIO_USERNAME=workflow-dev
 MINIO_PASSWORD=workflow-dev
+MINIO_BUCKETNAME=affiliationbucket
 
 # central envs
 CENTRAL_USER_EMAIL=chakshu@samagragovernance.in
diff --git a/.gitpod.yml b/.gitpod.yml
index 3f4ea49..cbb68fb 100644
--- a/.gitpod.yml
+++ b/.gitpod.yml
@@ -29,7 +29,11 @@ tasks:
     openMode: tab-after
     init: |
       gp sync-await setup
+      source .env
       cd packages/form-manager
+      echo "MINIO_USERNAME=$MINIO_USERNAME"  >> .env
+      echo "MINIO_PASSWORD=$MINIO_PASSWORD"  >> .env
+      echo "MINIO_BUCKETNAME=$MINIO_BUCKETNAME"  >> .env
       nvm use 16
       pnpm install
     command: |
diff --git a/docker-compose.gitpod.yaml b/docker-compose.gitpod.yaml
index 31f17e4..840ac81 100644
--- a/docker-compose.gitpod.yaml
+++ b/docker-compose.gitpod.yaml
@@ -136,12 +136,25 @@ services:
       - "9000:9000"
       - "9001:9001"
     volumes:
-      - ./mnt/cqube_bucket/minio:/data
+      - minio-data:/data
     environment:
       MINIO_ROOT_USER: ${MINIO_USERNAME}
       MINIO_ROOT_PASSWORD: ${MINIO_PASSWORD}
     command: server --console-address ":9001" /data
 
+  createbuckets:
+    image: minio/mc
+    depends_on:
+      - minio
+    entrypoint: >
+      /bin/sh -c "
+      /usr/bin/mc config host add myminio http://minio:9000 ${MINIO_USERNAME} ${MINIO_PASSWORD};
+      /usr/bin/mc rm -r --force myminio/${MINIO_BUCKETNAME};
+      /usr/bin/mc mb myminio/${MINIO_BUCKETNAME};
+      /usr/bin/mc policy download myminio/${MINIO_BUCKETNAME};
+      exit 0;
+      "
+
 networks:
   db_net:
     driver: bridge
@@ -152,5 +165,6 @@ networks:
 volumes:
   db_data:
   search_data:
+  minio-data:
   fa-config:
   minio_storage: {}
-- 
GitLab