feat: add total player count and total playtime logic
All checks were successful
CI - Build and Push / Build and Push Docker Image (push) Successful in 1m27s

- Implemented TotalPlayerCountLogic to retrieve the total number of unique players within a specified time range.
- Implemented TotalPlayTimeLogic to calculate the total playtime of players within a specified time range.
- Created ServiceContext to manage database connections and initialize necessary tables.
- Added types for total player count and total playtime requests and responses.
- Set up the main server file to start the application with the necessary configurations.
- Updated go.mod and go.sum for new dependencies.
This commit is contained in:
2025-10-12 11:20:34 +08:00
parent 18f1f6f38c
commit ecf835068a
37 changed files with 89 additions and 89 deletions

View File

@@ -5,19 +5,19 @@ FROM golang:1.24.4-alpine AS builder
RUN apk add --no-cache git
# Set working directory
WORKDIR /app
WORKDIR /build
# Copy go mod files from src directory
COPY src/go.mod src/go.sum ./
# Copy go mod files from root directory
COPY go.mod go.sum ./
# Download dependencies
RUN go mod download
# Copy source code from src directory
COPY src/ .
# Copy the entire app directory to maintain the module structure
COPY app/ ./app/
# Build the application
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o serverstatistics serverstatistics.go
# Build the application from the app directory
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o serverstatistics ./app/serverstatistics.go
# Production stage
FROM alpine:latest
@@ -28,13 +28,13 @@ RUN apk --no-cache add ca-certificates
WORKDIR /root/
# Copy binary from builder
COPY --from=builder /app/serverstatistics .
COPY --from=builder /build/serverstatistics .
# Copy config file
COPY --from=builder /app/etc/serverstatistics.yaml ./etc/
COPY app/etc/serverstatistics.yaml ./etc/
# Expose port
EXPOSE 8888
# Run the application
CMD ["./serverstatistics", "-f", "etc/serverstatistics.yaml"]
CMD ["./serverstatistics", "-f", "etc/serverstatistics.yaml"]