53 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
LOCAL_BIN := $(CURDIR)/bin
 | 
						|
PATH := $(LOCAL_BIN):$(PATH)
 | 
						|
GO_IMAGE_VER := 1.23.3
 | 
						|
 | 
						|
ifeq (local-migrations-create,$(firstword $(MAKECMDGOALS)))
 | 
						|
  migrationName := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS))
 | 
						|
  $(eval $(migrationName):;@:)
 | 
						|
endif
 | 
						|
 | 
						|
local-migrate-up:
 | 
						|
	@goose -allow-missing -dir ./migrations postgres "user=crab dbname=smm-core host=localhost port=5432 sslmode=disable" up
 | 
						|
 | 
						|
local-migrations-create:
 | 
						|
	@goose -dir ./migrations postgres "user=crab dbname=smm-core host=localhost port=5432 sslmode=disable" create "${migrationName}" sql
 | 
						|
 | 
						|
 | 
						|
local-init-arm: local-init-common
 | 
						|
	@if [ ! -f Dockerfile ]; then \
 | 
						|
		echo "Creating Dockerfile file..."; \
 | 
						|
		echo "FROM golang:1.23.3-alpine3.19 as builder" >> Dockerfile; \
 | 
						|
		echo "WORKDIR /app" >> Dockerfile; \
 | 
						|
		echo "COPY . ." >> Dockerfile; \
 | 
						|
		echo "ENV GOOS=linux" >> Dockerfile; \
 | 
						|
		echo "ENV GOARCH=arm" >> Dockerfile; \
 | 
						|
		echo "RUN go build -o smm_tg cmd/smm_tg/main.go" >> Dockerfile; \
 | 
						|
		echo "FROM alpine:3.19" >> Dockerfile; \
 | 
						|
		echo "COPY --from=builder /app/smm_tg /usr/local/bin/smm_tg" >> Dockerfile; \
 | 
						|
		echo "RUN chmod +x /usr/local/bin/smm_tg" >> Dockerfile; \
 | 
						|
		echo "CMD [\"smm_tg\"]" >> Dockerfile; \
 | 
						|
		echo "Dockerfile file created"; \
 | 
						|
	else \
 | 
						|
		echo "Dockerfile file already exists"; \
 | 
						|
	fi
 | 
						|
 | 
						|
local-init-amd64: local-init-common
 | 
						|
 | 
						|
local-init-common:
 | 
						|
	@if [ ! -f .env ]; then \
 | 
						|
		echo "Creating .env file..."; \
 | 
						|
		echo "BOT_TOKEN=" >> .env; \
 | 
						|
		echo "POSTGRES_URL_CONNECT=" >> .env; \
 | 
						|
		echo ".env file created"; \
 | 
						|
	else \
 | 
						|
		echo ".env file already exists"; \
 | 
						|
	fi
 | 
						|
 | 
						|
	@if [ ! -f docker-compose.yml ]; then \
 | 
						|
		echo "Creating docker-compose.yml file..."; \
 | 
						|
		cp build/ci/docker-compose.yml .; \
 | 
						|
		echo "docker-compose.yml file created"; \
 | 
						|
	else \
 | 
						|
		echo "docker-compose.yml file already exists"; \
 | 
						|
	fi
 |