This repository contains the source code for the LFX v2 platform mailing list service.
The LFX v2 Mailing List Service is designed to manage mailing lists within the LFX v2 platform.
├── bin/ # Compiled binaries
├── charts/ # Kubernetes Helm charts
│ └── lfx-v2-mailing-list-service/
│ └── templates/
├── cmd/ # Application entry points
│ └── mailing-list-api/
│ ├── design/ # GOA API design files
│ ├── gen/ # Generated GOA code
│ └── service/ # Service implementations
├── gen/ # Generated code (GOA)
│ ├── http/
│ └── mailing_list/
├── internal/ # Private application code
│ ├── domain/
│ │ ├── model/ # Domain models
│ │ └── port/ # Interface definitions
│ ├── infrastructure/
│ │ ├── auth/ # JWT authentication
│ │ ├── config/ # Configuration
│ │ ├── mock/ # Mock implementations
│ │ └── nats/ # NATS client and messaging
│ ├── middleware/ # HTTP middleware
│ └── service/ # Business logic layer
├── pkg/ # Public packages
│ ├── constants/ # Application constants
│ ├── errors/ # Custom error types
│ └── log/ # Logging utilities
└── Dockerfile # Container build configuration
- Health check endpoints for Kubernetes probes
- JWT authentication integration
- NATS messaging and storage support
- Structured logging with Go's slog package
- Docker containerization
- Kubernetes deployment ready
- Go 1.24+
- GOA v3
- Docker (optional)
-
Clone the repository:
git clone https://github.com/linuxfoundation/lfx-v2-mailing-list-service.git cd lfx-v2-mailing-list-service
-
Install dependencies:
go mod tidy
-
Generate API code:
make generate
-
Build the application:
make build
-
Run the service:
make run
make build
- Build the applicationmake generate
- Generate GOA code from designmake run
- Run the service locallymake test
- Run testsmake clean
- Clean build artifacts
Copyright The Linux Foundation and each contributor to LFX. SPDX-License-Identifier: MIT