diff --git a/.gitea/workflows/docker-push.yaml b/.gitea/workflows/docker-push.yaml index 26df20f..dbd4bd3 100644 --- a/.gitea/workflows/docker-push.yaml +++ b/.gitea/workflows/docker-push.yaml @@ -49,21 +49,7 @@ jobs: echo "Dependency hash: $DEPS_HASH" echo "deps_hash=$DEPS_HASH" >> $GITHUB_OUTPUT - - name: Restore Swagger Docs Cache - id: cache-swagger-restore - uses: actions/cache/restore@v5 - with: - path: | - pkg/server/docs/docs.go - pkg/server/docs/swagger.json - pkg/server/docs/swagger.yaml - key: swagger-docs-${{ hashFiles('cmd/server/main.go', 'pkg/greet/*.go', 'pkg/server/*.go', 'go.mod') }} - restore-keys: | - swagger-docs- - - name: Generate Swagger Docs if needed - if: steps.cache-swagger-restore.outputs.cache-hit != 'true' - run: go generate ./pkg/server - name: Build and push Docker image run: | @@ -91,8 +77,18 @@ jobs: # Copy source code to the correct working directory COPY . /workspace - # Set working directory and build the binary + # Set working directory and generate Swagger docs if needed WORKDIR /workspace + RUN if [ ! -f pkg/server/docs/swagger.json ]; then \ + echo "📝 Generating Swagger documentation..." && \ + go install github.com/swaggo/swag/cmd/swag@latest && \ + cd pkg/server && go generate && \ + echo "✅ Swagger documentation generated"; \ + else \ + echo "✅ Swagger documentation already exists, skipping generation"; \ + fi + + # Build the binary RUN go build -o dance-lessons-coach ./cmd/server # Final minimal image