Merge branch 'cleanup' into 'master'
Move things arround See merge request !91
18
Makefile
@ -3,11 +3,9 @@
|
||||
DB_USER=test
|
||||
DB_PASS=test
|
||||
DB_DSN_DEV=postgres://$(DB_USER):$(DB_PASS)@127.0.0.1:5432/dev?sslmode=disable
|
||||
DB_DSN_TEST=postgres://$(DB_USER):$(DB_PASS)@127.0.0.1:5432/test?sslmode=disable
|
||||
|
||||
MIGRATION=migrate -url '$(DB_DSN_DEV)'
|
||||
MIGRATION_SCHEMA=./sql/migration
|
||||
MIGRATION_TEST_DATA=./sql/dev
|
||||
MIGRATION=migrate -database '$(DB_DSN_DEV)'
|
||||
MIGRATION_SCHEMA=./migrations
|
||||
|
||||
DOCKER_COMPOSE_FILE=./docker/docker-compose.yml
|
||||
DOCKER_COMPOSE=docker-compose -f $(DOCKER_COMPOSE_FILE)
|
||||
@ -28,20 +26,17 @@ build_docker_image:
|
||||
rm -rf canapeapp
|
||||
mkdir canapeapp
|
||||
cp -R docker/run.sh canapeapp/run.sh
|
||||
cp -R sql/migration canapeapp/migrations
|
||||
cp -R migrations canapeapp/migrations
|
||||
cp $$GOPATH/bin/migrate canapeapp/migrate
|
||||
yarn build
|
||||
go build -v -o canapeapp/app src/*.go
|
||||
go build -v -o canapeapp/app backend/*.go
|
||||
docker build --tag canapeapp:latest --file docker/Dockerfile-production .
|
||||
rm -rf canapeapp
|
||||
|
||||
migration-schema: docker
|
||||
$(MIGRATION) -path $(MIGRATION_SCHEMA) up
|
||||
|
||||
migration-dev-data: docker migration-schema
|
||||
$(MIGRATION) -path $(MIGRATION_TEST_DATA) up
|
||||
|
||||
migration: migration-schema migration-dev-data
|
||||
migration: migration-schema
|
||||
|
||||
dev: docker migration watch-go
|
||||
|
||||
@ -49,6 +44,3 @@ clean:
|
||||
-rm -r ./build
|
||||
$(DOCKER_COMPOSE) stop
|
||||
$(DOCKER_COMPOSE) rm --force -v
|
||||
|
||||
test: docker
|
||||
POSTGRES_DSN="$(DB_DSN_TEST)" go test -v -p=1 ./...
|
||||
|
14
README.md
@ -24,8 +24,9 @@ go get ./...
|
||||
go tools:
|
||||
|
||||
```
|
||||
go get -v github.com/pilu/fresh
|
||||
go get -v github.com/mattes/migrate
|
||||
go get -v -u github.com/pilu/fresh
|
||||
go get -v -u github.com/mattes/migrate
|
||||
go build -tags 'postgres' -o $GOPATH/bin/migrate github.com/mattes/migrate/cli
|
||||
```
|
||||
|
||||
## Dev
|
||||
@ -50,7 +51,14 @@ yarn start
|
||||
docker run -it --rm -e PGPASSWORD=test --link canape_postgresql_dev:postgres postgres:9.5 psql -h postgres -U test -d dev
|
||||
```
|
||||
|
||||
## Default users
|
||||
## Setup the dev users
|
||||
|
||||
Connect to the database and enter this sql queries:
|
||||
|
||||
```
|
||||
INSERT INTO users (name, hash, admin, activated) VALUES ('test', '$2a$10$QHx07iyuxO1RcehgtjMgjOzv03Bx2eeSKvsxkoj9oR2NJ4cklh6ue', false, true);
|
||||
INSERT INTO users (name, hash, admin, activated) VALUES ('admin', '$2a$10$qAbyDZsHtcnhXhjhQZkD2uKlX72eMHsX8Hi2Cnl1vJUqHQiey2qa6', true, true);
|
||||
```
|
||||
|
||||
This users are defined with this parameters:
|
||||
pepper: "pepper"
|
||||
|
@ -5,7 +5,7 @@ import (
|
||||
|
||||
"github.com/jmoiron/sqlx"
|
||||
"github.com/sirupsen/logrus"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
)
|
||||
|
||||
const (
|
@ -5,9 +5,9 @@ import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/config"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/config"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
@ -1,8 +1,8 @@
|
||||
package backend
|
||||
|
||||
import (
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/users"
|
||||
|
||||
"github.com/jmoiron/sqlx"
|
||||
)
|
@ -1,10 +1,9 @@
|
||||
package backend
|
||||
|
||||
import (
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/sqly"
|
||||
|
||||
"github.com/jmoiron/sqlx"
|
||||
"github.com/lib/pq"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/sqly"
|
||||
)
|
||||
|
||||
const (
|
@ -3,13 +3,12 @@ package extmedias
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/movies"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/shows"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
|
||||
polochon "github.com/odwrtw/polochon/lib"
|
||||
"github.com/sirupsen/logrus"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/movies"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/shows"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
)
|
||||
|
||||
// NewExplorer returns a polochon.Explorer from the list of Explorers in the config
|
@ -4,15 +4,14 @@ import (
|
||||
"errors"
|
||||
"net/http"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/movies"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/shows"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
|
||||
polochon "github.com/odwrtw/polochon/lib"
|
||||
"github.com/sirupsen/logrus"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/movies"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/shows"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
)
|
||||
|
||||
// RefreshHandler refresh the explored movies
|
@ -5,11 +5,11 @@ import (
|
||||
"net/http"
|
||||
"os"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/config"
|
||||
extmedias "gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/external_medias"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/config"
|
||||
extmedias "gitlab.quimbo.fr/odwrtw/canape/backend/external_medias"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
|
||||
"github.com/jmoiron/sqlx"
|
||||
_ "github.com/lib/pq"
|
@ -10,13 +10,12 @@ import (
|
||||
"github.com/odwrtw/papi"
|
||||
polochon "github.com/odwrtw/polochon/lib"
|
||||
"github.com/sirupsen/logrus"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/config"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/subtitles"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/config"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/subtitles"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
)
|
||||
|
||||
// PolochonMoviesHandler will returns movies from Polochon
|
@ -10,11 +10,10 @@ import (
|
||||
"github.com/odwrtw/papi"
|
||||
"github.com/odwrtw/polochon/lib"
|
||||
"github.com/sirupsen/logrus"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/subtitles"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/subtitles"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
)
|
||||
|
||||
// Movie represents a movie
|
@ -1,13 +1,13 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/admins"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/external_medias"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/movies"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/shows"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/torrents"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
admin "gitlab.quimbo.fr/odwrtw/canape/backend/admins"
|
||||
extmedias "gitlab.quimbo.fr/odwrtw/canape/backend/external_medias"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/movies"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/shows"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/torrents"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
)
|
||||
|
||||
func setupRoutes(env *web.Env) {
|
@ -7,10 +7,9 @@ import (
|
||||
"github.com/odwrtw/papi"
|
||||
polochon "github.com/odwrtw/polochon/lib"
|
||||
"github.com/sirupsen/logrus"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/subtitles"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/subtitles"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
)
|
||||
|
||||
// Episode represents an episode
|
@ -7,17 +7,16 @@ import (
|
||||
"log"
|
||||
"strconv"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/subtitles"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
|
||||
"net/http"
|
||||
|
||||
"github.com/gorilla/mux"
|
||||
"github.com/odwrtw/papi"
|
||||
polochon "github.com/odwrtw/polochon/lib"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/subtitles"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
)
|
||||
|
||||
// ErrPolochonUnavailable is an error returned if the polochon server is not available
|
@ -7,13 +7,12 @@ import (
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
|
||||
"github.com/odwrtw/papi"
|
||||
"github.com/odwrtw/polochon/lib"
|
||||
"github.com/sirupsen/logrus"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/backend"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
)
|
||||
|
||||
// Show represents a show
|
12
backend/sqly/sqly.go
Normal file
@ -0,0 +1,12 @@
|
||||
package sqly
|
||||
|
||||
import (
|
||||
"time"
|
||||
)
|
||||
|
||||
// BaseModel have to be embeded in all your struct which reflect a table
|
||||
type BaseModel struct {
|
||||
ID string `json:"id"`
|
||||
Updated time.Time `db:"updated_at" json:"updated_at"`
|
||||
Created time.Time `db:"created_at" json:"created_at"`
|
||||
}
|
@ -10,10 +10,9 @@ import (
|
||||
"github.com/gorilla/mux"
|
||||
"github.com/odwrtw/polochon/lib"
|
||||
"github.com/sirupsen/logrus"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/users"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
)
|
||||
|
||||
// DownloadHandler downloads a movie via polochon
|
@ -8,9 +8,9 @@ import (
|
||||
|
||||
jwt "github.com/dgrijalva/jwt-go"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/config"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/web"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/config"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/web"
|
||||
)
|
||||
|
||||
// SignupPOSTHandler handles the user's Signup
|
@ -10,9 +10,9 @@ import (
|
||||
"github.com/jmoiron/sqlx/types"
|
||||
"github.com/odwrtw/papi"
|
||||
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/config"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/random"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/sqly"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/config"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/random"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/sqly"
|
||||
)
|
||||
|
||||
const (
|
@ -1,8 +1,8 @@
|
||||
package web
|
||||
|
||||
import (
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape-sql/src/internal/config"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/auth"
|
||||
"gitlab.quimbo.fr/odwrtw/canape/backend/config"
|
||||
|
||||
"github.com/gorilla/mux"
|
||||
"github.com/jmoiron/sqlx"
|
@ -2,7 +2,7 @@
|
||||
|
||||
echo "Running migrations..."
|
||||
/opt/canapeapp/migrate \
|
||||
-url postgres://${DB_USER}:${DB_PASS}@database:5432/${DB_ENV}?sslmode=disable \
|
||||
-database "postgres://$DB_USER:$DB_PASS@database:5432/$DB_ENV?sslmode=disable" \
|
||||
-path /opt/canapeapp/migrations \
|
||||
up
|
||||
echo "Migrations done"
|
||||
|
@ -1,5 +1,6 @@
|
||||
ignored: node_modules,src/public
|
||||
build_name: dev-build
|
||||
build_log: dev-build.log
|
||||
tmp_path: ./build
|
||||
root: ./src
|
||||
valid_ext: .go
|
||||
root: ./backend
|
||||
colors: 1
|
||||
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.4 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 622 B After Width: | Height: | Size: 622 B |
Before Width: | Height: | Size: 850 B After Width: | Height: | Size: 850 B |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |