123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- version: '3'
- vars:
- BINARY_EXT:
- sh: echo '{{if eq OS "windows"}}.exe{{end}}'
- tasks:
- default:
- deps: [build]
- web:
- desc: Build the binary and start the web server
- deps: [build]
- cmds:
- - ./gogs web
- build:
- desc: Build the binary
- cmds:
- - go build -v
- -ldflags '
- -X "{{.PKG_PATH}}.BuildTime={{.BUILD_TIME}}"
- -X "{{.PKG_PATH}}.BuildCommit={{.BUILD_COMMIT}}"
- '
- -tags '{{.TAGS}}'
- -trimpath -o gogs{{.BINARY_EXT}}
- vars:
- PKG_PATH: gogs.io/gogs/internal/conf
- BUILD_TIME:
- sh: date -u '+%Y-%m-%d %I:%M:%S %Z'
- BUILD_COMMIT:
- sh: git rev-parse HEAD
- sources:
- - go.mod
- - gogs.go
- - internal/**/*.go
- - conf/**/*
- - public/**/*
- - templates/**/*
- - custom/**/*
- method: timestamp
- generate-schemadoc:
- desc: Generate database schema documentation
- cmds:
- - go generate ./internal/database/schemadoc
- generate:
- desc: Run all go:generate commands
- cmds:
- - go generate ./...
- test:
- desc: Run all tests.
- cmds:
- - go test -cover -race ./...
- clean:
- desc: Cleans up system meta files
- cmds:
- - find . -name "*.DS_Store" -type f -delete
- release:
- desc: Build the binary and pack resources to a ZIP file
- deps: [build]
- cmds:
- - rm -rf {{.RELEASE_GOGS}}
- - mkdir -p {{.RELEASE_GOGS}}
- - cp -r gogs{{.BINARY_EXT}} LICENSE README.md README_ZH.md scripts {{.RELEASE_GOGS}}
- - cd {{.RELEASE_ROOT}} && zip -r gogs.zip "gogs"
- vars:
- RELEASE_ROOT: release
- RELEASE_GOGS: release/gogs
- less:
- desc: Generate CSS from LESS files
- cmds:
- - lessc --clean-css --source-map "public/less/gogs.less" public/css/gogs.min.css
- fixme:
- desc: Show all occurrences of "FIXME"
- cmds:
- - grep -rnw "FIXME" internal
- todo:
- desc: Show all occurrences of "TODO"
- cmds:
- - grep -rnw "TODO" internal
- legacy:
- desc: Identify legacy and deprecated lines
- cmds:
- - grep -rnw "\(LEGACY\|Deprecated\)" internal
- drop-test-db:
- desc: Drop the test database
- cmds:
- - |
- for dbname in $(psql -Xc "copy (select datname from pg_database where datname like 'gogs-%') to stdout"); do
- dropdb "$dbname"
- echo "dropped $dbname"
- done
|