Files
langship.sh/Makefile
T
patel-lyzr b6647a537d feat: add Gateway page and Runs page with real-time updates
- Implemented a new Gateway page that provides a uniform ingress for deployed agents.
- Created a Runs page that lists recent pipeline executions with auto-refresh and error handling.
- Added a RunsListener component to handle real-time notifications for new runs via SSE.
- Updated the AppSidebar to include links to the new Gateway and Runs pages.
- Enhanced FlowNode component to improve status display and styling.
- Introduced EmptySection component for consistent empty state presentation.
- Updated API utility to include a new endpoint for the runs stream.
2026-05-13 22:15:08 +05:30

77 lines
2.5 KiB
Makefile

.PHONY: build run serve test vet tidy clean web web-dev dev watch
BINARY := bin/flow
# --- env defaults for `make watch` ----------------------------------------
# These match the host-side ports published by docker-compose.yml. Override
# any value at the command line, e.g. `make watch MINIO_ENDPOINT=...`.
#
# Anything you `export` separately in your shell still takes precedence over
# these, since the Go binary only reads its env via os.Getenv.
export FLOW_ADDR ?= :8090
export FLOW_CORS_ORIGINS ?= http://localhost:3000
export MONGO_URI ?= mongodb://localhost:27017
export MONGO_DB ?= flow
export RESTATE_INGRESS_URL ?= http://localhost:8081
export RESTATE_ADMIN_URL ?= http://localhost:9070
export RESTATE_DEPLOYMENT_URI ?= http://host.docker.internal:9080
export BUILDKIT_HOST ?= tcp://127.0.0.1:1234
export MINIO_ENDPOINT ?= 127.0.0.1:9000
export MINIO_ACCESS_KEY ?= minio
export MINIO_SECRET_KEY ?= minio12345
export MINIO_BUCKET ?= flow-logs
export MINIO_USE_SSL ?= false
build: web
go build -o $(BINARY) ./cmd/flow
# Build only the Go binary, expecting web/dist to already exist.
build-go:
go build -o $(BINARY) ./cmd/flow
web:
cd web && (test -d node_modules || npm install --no-fund --no-audit --loglevel=error) && npm run build
web-dev:
cd web && (test -d node_modules || npm install --no-fund --no-audit --loglevel=error) && npm run dev
# `make dev` runs the Next.js dev server (auto-installs deps).
# In another terminal run `make watch` to hot-reload the Go API on :8090;
# the Next dev rewrite forwards /api/* requests to it.
dev: web-dev
serve: build-go
./$(BINARY) serve
# Hot-reload the Go server with air. Re-run on every *.go change.
# Picks up MINIO_*, MONGO_*, RESTATE_*, BUILDKIT_HOST, FLOW_* defaults from
# this Makefile so a fresh shell can `make watch` without exporting anything.
# First time: `go install github.com/air-verse/air@latest`
watch:
@command -v air >/dev/null 2>&1 || { \
echo "installing air..."; \
go install github.com/air-verse/air@latest; \
}
@echo "flow env:"
@echo " FLOW_ADDR = $(FLOW_ADDR)"
@echo " MONGO_URI = $(MONGO_URI)"
@echo " RESTATE_INGRESS_URL = $(RESTATE_INGRESS_URL)"
@echo " BUILDKIT_HOST = $(BUILDKIT_HOST)"
@echo " MINIO_ENDPOINT = $(MINIO_ENDPOINT)"
air
run: build
./$(BINARY)
test:
go test ./... -count=1 -race
vet:
go vet ./...
tidy:
go mod tidy
clean:
rm -rf bin/ web/dist web/node_modules *.db *.db-shm *.db-wal coverage.out