From eb76791dc0777f032111140506fe94d6a2053226 Mon Sep 17 00:00:00 2001 From: masoodafar-web Date: Sat, 27 Dec 2025 07:45:16 +0330 Subject: [PATCH 01/10] feat: add production configuration settings; include URLs, encryption settings, and logging levels --- .../appsettings.Production.json | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 src/FrontOffice.Main/appsettings.Production.json diff --git a/src/FrontOffice.Main/appsettings.Production.json b/src/FrontOffice.Main/appsettings.Production.json new file mode 100644 index 0000000..9a8f96e --- /dev/null +++ b/src/FrontOffice.Main/appsettings.Production.json @@ -0,0 +1,18 @@ +{ + "GwUrl": "https://fogw.kbs2.ir", + "DownloadUrl": "https://dl.afrino.co", + "EncryptionSettings": { + "Key": "kmcQ3XTmH4mrdh8VHziuscyf8LLYjG//Kyni81nH/0E=", + "IV": "1wyF3Tt142MOkCpIyCxh/g==" + }, + "SignalR": { + "HubPath": "/hubs/token-relay" + }, + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + }, + "AllowedHosts": "*" +} From 06c222308f362d58ebe49cf87aee327abf5f9248 Mon Sep 17 00:00:00 2001 From: masoodafar-web Date: Sat, 10 Jan 2026 18:09:31 +0330 Subject: [PATCH 02/10] update --- src/FrontOffice.Main/appsettings.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/FrontOffice.Main/appsettings.json b/src/FrontOffice.Main/appsettings.json index 8d57fbd..1a8ca84 100644 --- a/src/FrontOffice.Main/appsettings.json +++ b/src/FrontOffice.Main/appsettings.json @@ -15,5 +15,5 @@ "Microsoft.AspNetCore": "Warning" } }, - "AllowedHosts": "*" + "AllowedHosts": "*" } From c6797e4b841963f0fe3a5ad00c3d13b3ca3f2dcc Mon Sep 17 00:00:00 2001 From: masoodafar-web Date: Sat, 10 Jan 2026 18:23:46 +0330 Subject: [PATCH 03/10] update2 --- .gitea/workflows/kub-deploy.yml | 2 +- .gitea/workflows/prod-deploy.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/kub-deploy.yml b/.gitea/workflows/kub-deploy.yml index d7f56fc..c7ee075 100644 --- a/.gitea/workflows/kub-deploy.yml +++ b/.gitea/workflows/kub-deploy.yml @@ -34,7 +34,7 @@ jobs: mkdir -p /etc/docker cat > /etc/docker/daemon.json << 'DAEMON' { - "insecure-registries": ["git.foursat.afrino.co", "gitea-svc:3000"] + "insecure-registries": ["git.kbs1.ir", "gitea-svc:3000"] } DAEMON mkdir -p ~/.docker diff --git a/.gitea/workflows/prod-deploy.yml b/.gitea/workflows/prod-deploy.yml index 874a639..58ee27a 100644 --- a/.gitea/workflows/prod-deploy.yml +++ b/.gitea/workflows/prod-deploy.yml @@ -7,7 +7,7 @@ on: env: REGISTRY: gitea-svc:3000 - EXTERNAL_REGISTRY: git.foursat.afrino.co + EXTERNAL_REGISTRY: git.kbs1.ir IMAGE_NAME: admin/frontoffice jobs: @@ -33,7 +33,7 @@ jobs: mkdir -p /etc/docker cat > /etc/docker/daemon.json << 'DAEMON' { - "insecure-registries": ["git.foursat.afrino.co", "gitea-svc:3000"] + "insecure-registries": ["git.kbs1.ir", "gitea-svc:3000"] } DAEMON mkdir -p ~/.docker From 04ce4f1a3107ffcbad3b54f691fbb921d7b2b746 Mon Sep 17 00:00:00 2001 From: masoodafar-web Date: Mon, 12 Jan 2026 16:05:56 +0330 Subject: [PATCH 04/10] update --- .gitea/workflows/kub-deploy.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.gitea/workflows/kub-deploy.yml b/.gitea/workflows/kub-deploy.yml index c7ee075..254a076 100644 --- a/.gitea/workflows/kub-deploy.yml +++ b/.gitea/workflows/kub-deploy.yml @@ -20,14 +20,14 @@ jobs: HTTPS_PROXY: http://proxyuser:87zH26nbqT2@46.249.98.211:3128 NO_PROXY: localhost,127.0.0.1,gitea-svc,194.5.195.53,10.0.0.0/8 steps: - - name: Install dependencies - run: | - apk add --no-cache git curl + # - name: Install dependencies + # run: | + # apk add --no-cache git curl - # Install kubectl - curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" - chmod +x kubectl - mv kubectl /usr/local/bin/ + # # Install kubectl + # curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" + # chmod +x kubectl + # mv kubectl /usr/local/bin/ - name: Start Docker daemon with insecure registry run: | From f2cc32a9c61be17c1551c44217507ea68295e2d0 Mon Sep 17 00:00:00 2001 From: masoodafar-web Date: Mon, 12 Jan 2026 16:08:56 +0330 Subject: [PATCH 05/10] update --- .gitea/workflows/kub-deploy.yml | 14 +++++++------- .gitea/workflows/prod-deploy.yml | 12 ++++++------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.gitea/workflows/kub-deploy.yml b/.gitea/workflows/kub-deploy.yml index 254a076..c7ee075 100644 --- a/.gitea/workflows/kub-deploy.yml +++ b/.gitea/workflows/kub-deploy.yml @@ -20,14 +20,14 @@ jobs: HTTPS_PROXY: http://proxyuser:87zH26nbqT2@46.249.98.211:3128 NO_PROXY: localhost,127.0.0.1,gitea-svc,194.5.195.53,10.0.0.0/8 steps: - # - name: Install dependencies - # run: | - # apk add --no-cache git curl + - name: Install dependencies + run: | + apk add --no-cache git curl - # # Install kubectl - # curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" - # chmod +x kubectl - # mv kubectl /usr/local/bin/ + # Install kubectl + curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" + chmod +x kubectl + mv kubectl /usr/local/bin/ - name: Start Docker daemon with insecure registry run: | diff --git a/.gitea/workflows/prod-deploy.yml b/.gitea/workflows/prod-deploy.yml index 58ee27a..97758af 100644 --- a/.gitea/workflows/prod-deploy.yml +++ b/.gitea/workflows/prod-deploy.yml @@ -21,12 +21,12 @@ jobs: HTTPS_PROXY: http://proxyuser:87zH26nbqT2@46.249.98.211:3128 NO_PROXY: localhost,127.0.0.1,gitea-svc,45.149.79.127,194.5.195.53,10.0.0.0/8 steps: - - name: Install dependencies - run: | - apk add --no-cache git curl - curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" - chmod +x kubectl - mv kubectl /usr/local/bin/ + # - name: Install dependencies + # run: | + # apk add --no-cache git curl + # curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" + # chmod +x kubectl + # mv kubectl /usr/local/bin/ - name: Start Docker daemon run: | From d2e015d07c2aad4ad37e21060086b6b92626dd28 Mon Sep 17 00:00:00 2001 From: masoodafar-web Date: Mon, 12 Jan 2026 16:11:25 +0330 Subject: [PATCH 06/10] update --- .gitea/workflows/prod-deploy.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.gitea/workflows/prod-deploy.yml b/.gitea/workflows/prod-deploy.yml index 97758af..4917036 100644 --- a/.gitea/workflows/prod-deploy.yml +++ b/.gitea/workflows/prod-deploy.yml @@ -63,8 +63,6 @@ jobs: -t ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.sha }} \ -t ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:prod \ -t ${{ env.EXTERNAL_REGISTRY }}/${{ env.IMAGE_NAME }}:prod \ - --build-arg HTTP_PROXY=http://proxyuser:87zH26nbqT2@46.249.98.211:3128 \ - --build-arg HTTPS_PROXY=http://proxyuser:87zH26nbqT2@46.249.98.211:3128 \ . - name: Push to Registry From 03f9e383e42fe3cbe80c42351f04426cb4f23e60 Mon Sep 17 00:00:00 2001 From: masoodafar-web Date: Tue, 13 Jan 2026 23:44:29 +0330 Subject: [PATCH 07/10] update --- .gitea/workflows/prod-deploy.yml | 44 ++++++++++++++++---------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/.gitea/workflows/prod-deploy.yml b/.gitea/workflows/prod-deploy.yml index 4917036..b50eb49 100644 --- a/.gitea/workflows/prod-deploy.yml +++ b/.gitea/workflows/prod-deploy.yml @@ -28,28 +28,28 @@ jobs: # chmod +x kubectl # mv kubectl /usr/local/bin/ - - name: Start Docker daemon - run: | - mkdir -p /etc/docker - cat > /etc/docker/daemon.json << 'DAEMON' - { - "insecure-registries": ["git.kbs1.ir", "gitea-svc:3000"] - } - DAEMON - mkdir -p ~/.docker - cat > ~/.docker/config.json << 'CONF' - { - "proxies": { - "default": { - "httpProxy": "http://proxyuser:87zH26nbqT2@46.249.98.211:3128", - "httpsProxy": "http://proxyuser:87zH26nbqT2@46.249.98.211:3128", - "noProxy": "localhost,127.0.0.1,gitea-svc,194.5.195.53,10.0.0.0/8" - } - } - } - CONF - dockerd & - for i in $(seq 1 30); do docker info >/dev/null 2>&1 && break || sleep 2; done + # - name: Start Docker daemon + # run: | + # mkdir -p /etc/docker + # cat > /etc/docker/daemon.json << 'DAEMON' + # { + # "insecure-registries": ["git.kbs1.ir", "gitea-svc:3000"] + # } + # DAEMON + # mkdir -p ~/.docker + # cat > ~/.docker/config.json << 'CONF' + # { + # "proxies": { + # "default": { + # "httpProxy": "http://proxyuser:87zH26nbqT2@46.249.98.211:3128", + # "httpsProxy": "http://proxyuser:87zH26nbqT2@46.249.98.211:3128", + # "noProxy": "localhost,127.0.0.1,gitea-svc,194.5.195.53,10.0.0.0/8" + # } + # } + # } + # CONF + # dockerd & + # for i in $(seq 1 30); do docker info >/dev/null 2>&1 && break || sleep 2; done - name: Checkout code run: | From 6de06fc8ce8fa6de17357bfeb14084e38827b022 Mon Sep 17 00:00:00 2001 From: masoodafar-web Date: Tue, 13 Jan 2026 23:45:20 +0330 Subject: [PATCH 08/10] update --- .gitea/workflows/prod-deploy.yml | 35 ++++++++++++-------------------- 1 file changed, 13 insertions(+), 22 deletions(-) diff --git a/.gitea/workflows/prod-deploy.yml b/.gitea/workflows/prod-deploy.yml index b50eb49..9bd6f4d 100644 --- a/.gitea/workflows/prod-deploy.yml +++ b/.gitea/workflows/prod-deploy.yml @@ -28,28 +28,19 @@ jobs: # chmod +x kubectl # mv kubectl /usr/local/bin/ - # - name: Start Docker daemon - # run: | - # mkdir -p /etc/docker - # cat > /etc/docker/daemon.json << 'DAEMON' - # { - # "insecure-registries": ["git.kbs1.ir", "gitea-svc:3000"] - # } - # DAEMON - # mkdir -p ~/.docker - # cat > ~/.docker/config.json << 'CONF' - # { - # "proxies": { - # "default": { - # "httpProxy": "http://proxyuser:87zH26nbqT2@46.249.98.211:3128", - # "httpsProxy": "http://proxyuser:87zH26nbqT2@46.249.98.211:3128", - # "noProxy": "localhost,127.0.0.1,gitea-svc,194.5.195.53,10.0.0.0/8" - # } - # } - # } - # CONF - # dockerd & - # for i in $(seq 1 30); do docker info >/dev/null 2>&1 && break || sleep 2; done + - name: Start Docker daemon + run: | + mkdir -p /etc/docker + cat > /etc/docker/daemon.json << 'DAEMON' + { + "insecure-registries": ["git.kbs1.ir", "gitea-svc:3000"] + } + DAEMON + mkdir -p ~/.docker + + CONF + dockerd & + for i in $(seq 1 30); do docker info >/dev/null 2>&1 && break || sleep 2; done - name: Checkout code run: | From a543e43d0adeffb1a4828ee281835fda90b8dcf7 Mon Sep 17 00:00:00 2001 From: masoodafar-web Date: Tue, 13 Jan 2026 23:46:09 +0330 Subject: [PATCH 09/10] update --- .gitea/workflows/prod-deploy.yml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/prod-deploy.yml b/.gitea/workflows/prod-deploy.yml index 9bd6f4d..4917036 100644 --- a/.gitea/workflows/prod-deploy.yml +++ b/.gitea/workflows/prod-deploy.yml @@ -37,7 +37,16 @@ jobs: } DAEMON mkdir -p ~/.docker - + cat > ~/.docker/config.json << 'CONF' + { + "proxies": { + "default": { + "httpProxy": "http://proxyuser:87zH26nbqT2@46.249.98.211:3128", + "httpsProxy": "http://proxyuser:87zH26nbqT2@46.249.98.211:3128", + "noProxy": "localhost,127.0.0.1,gitea-svc,194.5.195.53,10.0.0.0/8" + } + } + } CONF dockerd & for i in $(seq 1 30); do docker info >/dev/null 2>&1 && break || sleep 2; done From 522d05274517575b14577791e1fd8fc469961ec1 Mon Sep 17 00:00:00 2001 From: masoodafar-web Date: Thu, 29 Jan 2026 02:54:07 +0330 Subject: [PATCH 10/10] Update deployment configurations and Dockerfile to use internal registry --- .gitea/workflows/kub-deploy.yml | 56 ++++++++++--------------------- .gitea/workflows/prod-deploy.yml | 2 +- src/FrontOffice.Main/Dockerfile | 4 +-- src/FrontOffice.Main/NuGet.config | 9 ++++- 4 files changed, 28 insertions(+), 43 deletions(-) diff --git a/.gitea/workflows/kub-deploy.yml b/.gitea/workflows/kub-deploy.yml index c7ee075..72f0f31 100644 --- a/.gitea/workflows/kub-deploy.yml +++ b/.gitea/workflows/kub-deploy.yml @@ -15,45 +15,27 @@ jobs: container: image: docker:latest options: --privileged - env: - HTTP_PROXY: http://proxyuser:87zH26nbqT2@46.249.98.211:3128 - HTTPS_PROXY: http://proxyuser:87zH26nbqT2@46.249.98.211:3128 - NO_PROXY: localhost,127.0.0.1,gitea-svc,194.5.195.53,10.0.0.0/8 steps: - - name: Install dependencies - run: | - apk add --no-cache git curl - - # Install kubectl - curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" - chmod +x kubectl - mv kubectl /usr/local/bin/ - - name: Start Docker daemon with insecure registry run: | mkdir -p /etc/docker cat > /etc/docker/daemon.json << 'DAEMON' { - "insecure-registries": ["git.kbs1.ir", "gitea-svc:3000"] + "insecure-registries": ["194.5.195.53:32500", "194.5.195.53:32082", "git.kbs1.ir", "gitea-svc:3000"], + "dns": ["0.0.0.0"] } DAEMON - mkdir -p ~/.docker - cat > ~/.docker/config.json << 'CONF' - { - "proxies": { - "default": { - "httpProxy": "http://proxyuser:87zH26nbqT2@46.249.98.211:3128", - "httpsProxy": "http://proxyuser:87zH26nbqT2@46.249.98.211:3128", - "noProxy": "localhost,127.0.0.1,gitea-svc,194.5.195.53,10.0.0.0/8" - } - } - } - CONF + + # بدون اینترنت - فقط از cached images dockerd & for i in $(seq 1 30); do docker info >/dev/null 2>&1 && break || sleep 2 done docker info + + # بررسی وجود cached images + echo "📊 Checking cached base images..." + docker images | grep -E "mcr.microsoft.com|nginx" || echo "⚠️ WARNING: Base images not cached!" - name: Checkout code run: | @@ -63,11 +45,10 @@ jobs: - name: Build Docker Image run: | cd src - docker build -f FrontOffice.Main/Dockerfile \ + # استفاده از cached base images (بدون دانلود) + DOCKER_BUILDKIT=0 docker build -f FrontOffice.Main/Dockerfile \ -t ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.sha }} \ -t ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest \ - --build-arg HTTP_PROXY=http://proxyuser:87zH26nbqT2@46.249.98.211:3128 \ - --build-arg HTTPS_PROXY=http://proxyuser:87zH26nbqT2@46.249.98.211:3128 \ . @@ -77,14 +58,11 @@ jobs: docker push ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.sha }} docker push ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest - - name: Deploy to Kubernetes + - name: Build and Push Complete run: | - # Setup kubeconfig - mkdir -p ~/.kube - echo "${{ secrets.KUBECONFIG }}" | base64 -d > ~/.kube/config - - # Restart deployment to pull new image - kubectl rollout restart deployment/frontoffice || echo "Deployment doesn't exist yet" - - # Wait for rollout to complete - kubectl rollout status deployment/frontoffice --timeout=5m || echo "Deployment rollout pending" + echo "🎉 Build and push completed successfully!" + echo "📦 Image pushed to: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.sha }}" + echo "📦 Latest tag: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest" + echo "" + echo "🚀 To deploy manually on server:" + echo "kubectl set image deployment/frontoffice frontoffice=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.sha }}" diff --git a/.gitea/workflows/prod-deploy.yml b/.gitea/workflows/prod-deploy.yml index 4917036..a8e5016 100644 --- a/.gitea/workflows/prod-deploy.yml +++ b/.gitea/workflows/prod-deploy.yml @@ -33,7 +33,7 @@ jobs: mkdir -p /etc/docker cat > /etc/docker/daemon.json << 'DAEMON' { - "insecure-registries": ["git.kbs1.ir", "gitea-svc:3000"] + "insecure-registries": ["194.5.195.53:32082", "git.kbs1.ir", "gitea-svc:3000"] } DAEMON mkdir -p ~/.docker diff --git a/src/FrontOffice.Main/Dockerfile b/src/FrontOffice.Main/Dockerfile index db75fe3..0320861 100644 --- a/src/FrontOffice.Main/Dockerfile +++ b/src/FrontOffice.Main/Dockerfile @@ -1,4 +1,4 @@ -FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build +FROM 194.5.195.53:32082/dotnet/sdk:9.0 AS build WORKDIR /src # Copy NuGet config and project file @@ -16,7 +16,7 @@ WORKDIR "/src/FrontOffice.Main" RUN dotnet publish "FrontOffice.Main.csproj" -c Release -o /app/publish # Runtime stage - aspnet for Blazor Server -FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS runtime +FROM 194.5.195.53:32082/dotnet/aspnet:9.0 AS runtime WORKDIR /app COPY --from=build /app/publish . diff --git a/src/FrontOffice.Main/NuGet.config b/src/FrontOffice.Main/NuGet.config index 81da29b..4861568 100644 --- a/src/FrontOffice.Main/NuGet.config +++ b/src/FrontOffice.Main/NuGet.config @@ -1,11 +1,18 @@ - + + + + + + + +