1
0

Taskfile.yml 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. version: '3'
  2. vars:
  3. BINARY_EXT:
  4. sh: echo '{{if eq OS "windows"}}.exe{{end}}'
  5. tasks:
  6. default:
  7. deps: [build]
  8. web:
  9. desc: Build the binary and start the web server
  10. deps: [build]
  11. env:
  12. GOGS_WORK_DIR: '{{.ROOT_DIR}}'
  13. cmds:
  14. - .bin/gogs web
  15. build:
  16. desc: Build the binary
  17. cmds:
  18. - go build -v
  19. -ldflags '
  20. -X "{{.PKG_PATH}}.BuildTime={{.BUILD_TIME}}"
  21. -X "{{.PKG_PATH}}.BuildCommit={{.BUILD_COMMIT}}"
  22. '
  23. -tags '{{.TAGS}}'
  24. -trimpath -o .bin/gogs{{.BINARY_EXT}} ./cmd/gogs
  25. vars:
  26. PKG_PATH: gogs.io/gogs/internal/conf
  27. BUILD_TIME:
  28. sh: date -u '+%Y-%m-%d %I:%M:%S %Z'
  29. BUILD_COMMIT:
  30. sh: git rev-parse HEAD
  31. sources:
  32. - go.mod
  33. - cmd/gogs/*.go
  34. - internal/**/*.go
  35. - conf/**/*
  36. - public/**/*
  37. - templates/**/*
  38. - custom/**/*
  39. method: timestamp
  40. generate-schemadoc:
  41. desc: Generate database schema documentation
  42. cmds:
  43. - go generate ./internal/database/schemadoc
  44. generate:
  45. desc: Run all go:generate commands
  46. cmds:
  47. - go generate ./...
  48. test:
  49. desc: Run all tests.
  50. cmds:
  51. - go test -cover -race ./...
  52. clean:
  53. desc: Cleans up system meta files
  54. cmds:
  55. - find . -name "*.DS_Store" -type f -delete
  56. less:
  57. desc: Generate CSS from LESS files
  58. cmds:
  59. - lessc --clean-css --source-map "public/less/gogs.less" public/css/gogs.min.css
  60. fixme:
  61. desc: Show all occurrences of "FIXME"
  62. cmds:
  63. - grep -rnw "FIXME" internal
  64. todo:
  65. desc: Show all occurrences of "TODO"
  66. cmds:
  67. - grep -rnw "TODO" internal
  68. legacy:
  69. desc: Identify legacy and deprecated lines
  70. cmds:
  71. - grep -rnw "\(LEGACY\|Deprecated\)" internal
  72. drop-test-db:
  73. desc: Drop the test database
  74. cmds:
  75. - |
  76. for dbname in $(psql -Xc "copy (select datname from pg_database where datname like 'gogs-%') to stdout"); do
  77. dropdb "$dbname"
  78. echo "dropped $dbname"
  79. done
  80. lint:
  81. desc: Run all linters
  82. cmds:
  83. - golangci-lint run