Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions backend/onboarding/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
*.json
*.md
/migrations
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Excluding /migrations may break database initialization in containers.

Database migrations are typically needed for schema setup when deploying containerized applications. Excluding /migrations means the SQL files won't be available in the Docker image for initialization tasks.

🔎 Proposed fix

If migrations are applied externally (e.g., via a separate init container or migration tool), this is acceptable. Otherwise, remove this line:

 *.json
 *.md
-/migrations
 .env
 *.yaml
 *.yml
 .gitignore
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
/migrations
*.json
*.md
.env
*.yaml
*.yml
.gitignore
🤖 Prompt for AI Agents
In backend/onboarding/.dockerignore around line 3 the entry "/migrations"
prevents migration files from being copied into the image which can break DB
initialization; if migrations are not applied externally, remove the
"/migrations" line so migration files are included in the build; if migrations
are applied by a separate init container or CI job, replace the line with a
short comment explaining that decision (or adjust to a conditional build stage)
so future maintainers know the exclusion is intentional.

.env
*.yaml
*.yml
.gitignore
48 changes: 48 additions & 0 deletions backend/onboarding/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# Binaries for programs and plugins
*.exe
*.exe~
*.dll
*.so
*.dylib

# Test binary, built with `go test -c`
*.test

# Output of the go build command
/property-tax-onboarding

# Go workspace file
go.work
go.sum

# Environment variables
.env

# IDE files
.vscode/
.idea/
*.swp
*.swo

# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

# Logs
*.log
logs/

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Dependency directories
vendor/
node_modules/
36 changes: 36 additions & 0 deletions backend/onboarding/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Build stage
FROM golang:1.25-alpine AS builder

WORKDIR /app

# Copy go.mod and go.sum files
COPY go.mod go.sum ./

# Download dependencies
RUN go mod download

# Copy the source code
COPY . .

# Build the application (main.go is in cmd/server/)
RUN CGO_ENABLED=0 GOOS=linux go build -o property-service ./cmd/server/main.go

# Final stage
FROM alpine:3.19

WORKDIR /app

# Install ca-certificates for HTTPS requests
RUN apk --no-cache add ca-certificates

# Copy the binary from the builder stage
COPY --from=builder /app/property-service .

# Set permissions
RUN chmod +x /app/property-service

# Expose port 8080 (default property service port)
EXPOSE 8080

# Set the entry point
ENTRYPOINT ["./property-service"]
Loading