feat: create v2 for module support
All checks were successful
Deploy / deploy (push) Successful in 1m21s

This commit is contained in:
xuu
2023-10-19 17:05:41 -06:00
parent 392341cf38
commit b82a1e954e
33 changed files with 14142 additions and 25714 deletions

View File

@@ -1,61 +1,36 @@
ROUTE_ASSET=src/routes/bindata.go
DOCS_ASSET=src/docs/bindata.go
export LOG_DEBUG=1
export HTTP_LISTEN=:8085
export PASTE_STORE=data/paste/
export ARTIFACT_STORE=data/artifact/
export IMAGE_STORE=data/image/
SOURCE=$(wildcard cmd/paste/*.go) $(filter-out src/routes/bindata.go, $(wildcard src/routes/*.go))
BINARY=paste
PKG=./cmd/paste
VERSION=$(shell git describe --tags `git rev-list --tags --max-count=1`|cut -b2-)
VERSION_PAT=$(shell debian/inc_version.sh -p $(VERSION))
VERSION_MIN=$(shell debian/inc_version.sh -m $(VERSION))
VERSION_MAJ=$(shell debian/inc_version.sh -M $(VERSION))
DATE:=$(shell date -u +%FT%TZ)
define DUMMY_BINDATA
package docs
import "net/http"
func assetFS() (fs http.FileSystem) { return }
endef
export DUMMY_BINDATA
SOURCE=$(wildcard v2/*.go) $(wildcard v2/paste/*.go) $(wildcard assets/*.go)
ASSETS=$(wildcard assets/*) $(wildcard assets/public/*) $(wildcard assets/src/*) $(wildcard assets/src/paste/*)
ASSET_FILE=assets/build/index.html
BINARY=sour.is-paste
all: $(BINARY)
clean:
rm -rf $(BINARY)
setup:
go mod download
cd assets; npm i
fmt:
go fmt ./...
test: $(ROUTE_ASSET) $(DOCS_ASSET)
test:
go test ./...
go vet ./...
run:
go run \
-ldflags "-X main.AppVersion=$(VERSION_PAT) -X main.AppBuild=$(DATE)" \
$(PKG) -vv serve
run: $(BINARY)
# go run ./v2
./$(BINARY)
$(BINARY): $(SOURCE) $(ROUTE_ASSET) $(DOCS_ASSET)
go build -v \
-ldflags "-X main.AppVersion=$(VERSION) -X main.AppBuild=$(DATE)" \
"go.sour.is/paste/cmd/paste"
clean-ui:
rm -rf $(ROUTE_ASSET) $(DOCS_ASSET)
build-ui: clean-ui $(ROUTE_ASSET) $(DOCS_ASSET)
$(ROUTE_ASSET):
build-assets: $(ASSET_FILE)
${ASSET_FILE}: $(ASSETS)
cd assets; \
rm -rf build ../public; \
npm i; npm run build; \
cp -r build ../public
go generate "go.sour.is/paste/src/routes"
npm run build
$(DOCS_ASSET):
echo "$$DUMMY_BINDATA" > src/docs/bindata.go
go generate "go.sour.is/paste/cmd/paste"
go generate "go.sour.is/paste/src/docs"
build: $(BINARY)
$(BINARY): $(SOURCE) $(ASSET_FILE)
go build -o $(BINARY) ./v2
deploy: $(SOURCE) $(ROUTE_ASSET)
cd debian && make
.PHONEY: all clean build deploy run setup
.PHONEY: all clean build run setup
# DO NOT DELETE