From b88703d4a029ab2ac32c663460785f5a168348f5 Mon Sep 17 00:00:00 2001 From: vishnu r kumar Date: Tue, 3 Mar 2026 11:48:13 +0530 Subject: [PATCH 1/2] console: create db if not exists during init --- wavefront/server/docker/floconsole.Dockerfile | 7 +++-- .../server/scripts/console-server-init.sh | 29 +++++++++++++++++++ 2 files changed, 33 insertions(+), 3 deletions(-) create mode 100644 wavefront/server/scripts/console-server-init.sh diff --git a/wavefront/server/docker/floconsole.Dockerfile b/wavefront/server/docker/floconsole.Dockerfile index abf83d5b..a9548a0f 100644 --- a/wavefront/server/docker/floconsole.Dockerfile +++ b/wavefront/server/docker/floconsole.Dockerfile @@ -17,8 +17,9 @@ COPY wavefront/server/packages/flo_cloud /app/packages/flo_cloud COPY wavefront/server/apps/floconsole /app/apps/floconsole -RUN uv sync --package floconsole --frozen --no-dev +COPY wavefront/server/scripts/console-server-init.sh /app/scripts/console-server-init.sh +RUN chmod +x /app/scripts/console-server-init.sh -WORKDIR /app/apps/floconsole/floconsole +RUN uv sync --package floconsole --frozen --no-dev -CMD ["uv", "run", "server.py"] +ENTRYPOINT ["/app/scripts/console-server-init.sh"] diff --git a/wavefront/server/scripts/console-server-init.sh b/wavefront/server/scripts/console-server-init.sh new file mode 100644 index 00000000..8abd96e7 --- /dev/null +++ b/wavefront/server/scripts/console-server-init.sh @@ -0,0 +1,29 @@ +#!/bin/bash +set -e + +export PATH="/app/.venv/bin:$PATH" + +echo "Creating Console database if not exists..." +python3 -c " +import psycopg2, os + +host = os.environ['CONSOLE_DB_HOST'] +user = os.environ['CONSOLE_DB_USERNAME'] +password = os.environ['CONSOLE_DB_PASSWORD'] +dbname = os.environ['CONSOLE_DB_NAME'] + +conn = psycopg2.connect(host=host, user=user, password=password, dbname='postgres') +conn.autocommit = True +cur = conn.cursor() +cur.execute(\"SELECT 1 FROM pg_database WHERE datname = %s\", (dbname,)) + +if not cur.fetchone(): + cur.execute('CREATE DATABASE \"' + dbname.replace('\"', '\"\"') + '\"') + print('Database created') +else: + print('Database already exists, skipping') +conn.close() +" + +cd /app/apps/floconsole/floconsole +exec uv run server.py From edd249fd7dcce40e72fdb6333401a27c60ed3db9 Mon Sep 17 00:00:00 2001 From: vishnu r kumar Date: Tue, 3 Mar 2026 12:09:29 +0530 Subject: [PATCH 2/2] chore: push images to ECR --- .../build-wavefront-floconsole-develop.yaml | 22 +++++++++++++++++++ .../build-wavefront-floware-develop.yaml | 22 +++++++++++++++++++ .../build-wavefront-web-develop.yaml | 22 +++++++++++++++++++ 3 files changed, 66 insertions(+) diff --git a/.github/workflows/build-wavefront-floconsole-develop.yaml b/.github/workflows/build-wavefront-floconsole-develop.yaml index 15bef39f..318e981d 100644 --- a/.github/workflows/build-wavefront-floconsole-develop.yaml +++ b/.github/workflows/build-wavefront-floconsole-develop.yaml @@ -9,6 +9,10 @@ env: GAR_LOCATION: asia-south1-docker.pkg.dev/aesy-330511/root-hub IMAGE_NAME: wavefront-floconsole + AWS_REGION: ap-south-1 + ECR_REGISTRY: 025066241490.dkr.ecr.ap-south-1.amazonaws.com + ECR_REPOSITORY: rootflo/wavefront-floconsole + jobs: build-push-artifact: runs-on: ubuntu-latest @@ -60,7 +64,25 @@ jobs: docker tag rootflo:${{ env.IMAGE_TAG }} ${{ env.GAR_LOCATION }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }} docker push ${{ env.GAR_LOCATION }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }} + # Configure AWS credentials and push to ECR + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: ${{ env.AWS_REGION }} + + - name: Login to Amazon ECR + id: login-ecr + uses: aws-actions/amazon-ecr-login@v1 + + - name: Tag and push image to Amazon ECR + run: | + docker tag rootflo:${{ env.IMAGE_TAG }} ${{ env.ECR_REGISTRY }}/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }} + docker push ${{ env.ECR_REGISTRY }}/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }} + - name: Cleanup Docker images run: | docker rmi rootflo:${{ env.IMAGE_TAG }} || true docker rmi ${{ env.GAR_LOCATION }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }} || true + docker rmi ${{ env.ECR_REGISTRY }}/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }} || true diff --git a/.github/workflows/build-wavefront-floware-develop.yaml b/.github/workflows/build-wavefront-floware-develop.yaml index 7527e75e..f6af2b11 100644 --- a/.github/workflows/build-wavefront-floware-develop.yaml +++ b/.github/workflows/build-wavefront-floware-develop.yaml @@ -9,6 +9,10 @@ env: GAR_LOCATION: asia-south1-docker.pkg.dev/aesy-330511/root-hub IMAGE_NAME: wavefront-floware + AWS_REGION: ap-south-1 + ECR_REGISTRY: 025066241490.dkr.ecr.ap-south-1.amazonaws.com + ECR_REPOSITORY: rootflo/wavefront-floware + jobs: build-push-artifact: runs-on: ubuntu-latest @@ -60,7 +64,25 @@ jobs: docker tag rootflo:${{ env.IMAGE_TAG }} ${{ env.GAR_LOCATION }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }} docker push ${{ env.GAR_LOCATION }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }} + # Configure AWS credentials and push to ECR + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: ${{ env.AWS_REGION }} + + - name: Login to Amazon ECR + id: login-ecr + uses: aws-actions/amazon-ecr-login@v1 + + - name: Tag and push image to Amazon ECR + run: | + docker tag rootflo:${{ env.IMAGE_TAG }} ${{ env.ECR_REGISTRY }}/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }} + docker push ${{ env.ECR_REGISTRY }}/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }} + - name: Cleanup Docker images run: | docker rmi rootflo:${{ env.IMAGE_TAG }} || true docker rmi ${{ env.GAR_LOCATION }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }} || true + docker rmi ${{ env.ECR_REGISTRY }}/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }} || true diff --git a/.github/workflows/build-wavefront-web-develop.yaml b/.github/workflows/build-wavefront-web-develop.yaml index 29e0c56f..44117112 100644 --- a/.github/workflows/build-wavefront-web-develop.yaml +++ b/.github/workflows/build-wavefront-web-develop.yaml @@ -9,6 +9,10 @@ env: GAR_LOCATION: asia-south1-docker.pkg.dev/aesy-330511/root-hub IMAGE_NAME: wavefront-web + AWS_REGION: ap-south-1 + ECR_REGISTRY: 025066241490.dkr.ecr.ap-south-1.amazonaws.com + ECR_REPOSITORY: rootflo/wavefront-web + jobs: build-push-artifact: runs-on: ubuntu-latest @@ -60,7 +64,25 @@ jobs: docker tag rootflo:${{ env.IMAGE_TAG }} ${{ env.GAR_LOCATION }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }} docker push ${{ env.GAR_LOCATION }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }} + # Configure AWS credentials and push to ECR + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: ${{ env.AWS_REGION }} + + - name: Login to Amazon ECR + id: login-ecr + uses: aws-actions/amazon-ecr-login@v1 + + - name: Tag and push image to Amazon ECR + run: | + docker tag rootflo:${{ env.IMAGE_TAG }} ${{ env.ECR_REGISTRY }}/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }} + docker push ${{ env.ECR_REGISTRY }}/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }} + - name: Cleanup Docker images run: | docker rmi rootflo:${{ env.IMAGE_TAG }} || true docker rmi ${{ env.GAR_LOCATION }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }} || true + docker rmi ${{ env.ECR_REGISTRY }}/${{ env.ECR_REPOSITORY }}:${{ env.IMAGE_TAG }} || true