Compare commits
108 Commits
Author | SHA1 | Date |
---|---|---|
Dawid Wysokiński | f0b1731faa | |
Dawid Wysokiński | 979cbc159c | |
Dawid Wysokiński | 983cbb1a77 | |
Dawid Wysokiński | df2b44bf91 | |
Dawid Wysokiński | 5686461570 | |
Dawid Wysokiński | cb3faf6036 | |
Dawid Wysokiński | 5869936dfd | |
Dawid Wysokiński | 12bf780b75 | |
Renovate Bot | 004f9acff1 | |
Dawid Wysokiński | 83516547bf | |
Dawid Wysokiński | d46510d41b | |
Renovate Bot | c50ef44188 | |
Renovate Bot | 172da8f909 | |
Dawid Wysokiński | ba7b0c9f88 | |
Renovate Bot | b21acec00d | |
Dawid Wysokiński | 3e99625d4d | |
Renovate Bot | 12e9edf0c8 | |
Dawid Wysokiński | af63449e90 | |
Dawid Wysokiński | 33c29c7e68 | |
Dawid Wysokiński | a194adaff4 | |
Dawid Wysokiński | 0205b20751 | |
Dawid Wysokiński | ff426d0266 | |
Dawid Wysokiński | 19d734f94e | |
Renovate Bot | 210d68c3f7 | |
Renovate Bot | 5b4e188675 | |
Renovate Bot | b27f490a7a | |
Renovate Bot | 148ba52d0c | |
Renovate Bot | c7d5f4994c | |
Dawid Wysokiński | 2016958e0b | |
Renovate Bot | b95c37953d | |
Dawid Wysokiński | 7f1bc291c8 | |
Renovate Bot | fdb858de01 | |
Dawid Wysokiński | 7139ab610b | |
Renovate Bot | a6d0dbed5c | |
Dawid Wysokiński | ccb6a54350 | |
Renovate Bot | fe9ad67dad | |
Renovate Bot | e38ff10a5c | |
Dawid Wysokiński | 5dcc7aed19 | |
Renovate Bot | f777716a03 | |
Dawid Wysokiński | 4ff824839d | |
Renovate Bot | cf64d0be20 | |
Dawid Wysokiński | 3c1885c398 | |
Renovate Bot | 7cfee65180 | |
Dawid Wysokiński | 810f7e718a | |
Dawid Wysokiński | 86dc75156e | |
Renovate Bot | 3fd2a3a6fd | |
Dawid Wysokiński | 4c18dacf05 | |
Renovate Bot | e525e95ebe | |
Renovate Bot | f2a9ba0154 | |
Dawid Wysokiński | cd7133653e | |
Dawid Wysokiński | 3618b5112d | |
Renovate Bot | 1c800294a3 | |
Dawid Wysokiński | ceea989112 | |
Renovate Bot | 9446bc0545 | |
Dawid Wysokiński | d01903cbd6 | |
Renovate Bot | 51a7d32a48 | |
Dawid Wysokiński | 8a5e9ca57c | |
Renovate Bot | da5eb151a6 | |
Dawid Wysokiński | 59b89fb610 | |
Dawid Wysokiński | 1f081e61b8 | |
Renovate Bot | a7a8c8e2e2 | |
Renovate Bot | 37f601fbdb | |
Dawid Wysokiński | 6cbfe4e11f | |
Renovate Bot | 66929087e9 | |
Dawid Wysokiński | d5312d8a49 | |
Renovate Bot | 3f1d70f648 | |
Dawid Wysokiński | c574293e7b | |
Renovate Bot | 48c28b440e | |
Dawid Wysokiński | e51b08eb1c | |
Renovate Bot | b458890e4d | |
Dawid Wysokiński | cb3aaf5168 | |
Dawid Wysokiński | 841900c3af | |
Renovate Bot | 6ae901cc1a | |
Renovate Bot | e122a8d18b | |
Dawid Wysokiński | ad735765ef | |
Dawid Wysokiński | 920ba28764 | |
Renovate Bot | 47a2c2783e | |
Renovate Bot | 65b07172c9 | |
Dawid Wysokiński | 5be3ca4dff | |
Renovate Bot | 6d0814c67f | |
Dawid Wysokiński | fbb2a1113a | |
Renovate Bot | 32176371e9 | |
Dawid Wysokiński | a6e47627fe | |
Renovate Bot | 38f8e304c9 | |
Dawid Wysokiński | 98543e900e | |
Dawid Wysokiński | d049a755f6 | |
Renovate Bot | 147bf65fa3 | |
Renovate Bot | c58403aef1 | |
Dawid Wysokiński | 4519405905 | |
Renovate Bot | 893b6d0f60 | |
Dawid Wysokiński | 418daf4c78 | |
Dawid Wysokiński | 5f81a402c3 | |
Dawid Wysokiński | b7dc30b74c | |
Renovate Bot | 75f29adece | |
Dawid Wysokiński | 3f0cf7c43f | |
Dawid Wysokiński | d8668c926d | |
Dawid Wysokiński | 92c5677c1b | |
Renovate Bot | 234667294c | |
Dawid Wysokiński | 67e0d349df | |
Dawid Wysokiński | df7f6709cc | |
Dawid Wysokiński | c759587f22 | |
Dawid Wysokiński | 34ac03d252 | |
Dawid Wysokiński | 906b35a5e0 | |
Dawid Wysokiński | bc79e35cfe | |
Dawid Wysokiński | 18cd93570d | |
Dawid Wysokiński | 5eb7f0e635 | |
Dawid Wysokiński | c66fcf3c47 | |
Dawid Wysokiński | 5c2a34c6fc |
|
@ -0,0 +1,59 @@
|
|||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: linux-amd64
|
||||
|
||||
platform:
|
||||
os: linux
|
||||
arch: amd64
|
||||
|
||||
steps:
|
||||
- name: publish
|
||||
image: plugins/docker
|
||||
settings:
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
registry: gitea.dwysokinski.me
|
||||
repo: gitea.dwysokinski.me/zdam-egzamin-zawodowy-docker/backend
|
||||
auto_tag: true
|
||||
auto_tag_suffix: linux-amd64
|
||||
dockerfile: ./build/server/Dockerfile
|
||||
|
||||
trigger:
|
||||
event:
|
||||
- tag
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: manifest
|
||||
|
||||
steps:
|
||||
- name: manifest
|
||||
image: plugins/manifest
|
||||
settings:
|
||||
auto_tag: "true"
|
||||
ignore_missing: "true"
|
||||
spec: ./build/server/manifest.tmpl
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
- name: manifest-latest
|
||||
image: plugins/manifest
|
||||
settings:
|
||||
tags: latest
|
||||
ignore_missing: "true"
|
||||
spec: ./build/server/manifest.tmpl
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
|
||||
trigger:
|
||||
event:
|
||||
- tag
|
||||
|
||||
depends_on:
|
||||
- linux-amd64
|
|
@ -0,0 +1,16 @@
|
|||
DB_USER=postgres
|
||||
DB_NAME=zdamegzzawodowy
|
||||
DB_PORT=5432
|
||||
DB_HOST=localhost
|
||||
DB_PASSWORD=postgres
|
||||
DB_POOL_SIZE=40 #optional
|
||||
|
||||
LOG_DB_QUERIES=true
|
||||
|
||||
ACCESS_SECRET=devaccesssecret
|
||||
|
||||
FILE_STORAGE_PATH=./dev/upload
|
||||
|
||||
ENABLE_ACCESS_LOG=true
|
||||
|
||||
SENTRY_DSN=
|
|
@ -1,46 +0,0 @@
|
|||
name: Build and push to registry
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '*'
|
||||
|
||||
jobs:
|
||||
push_to_registry:
|
||||
name: Push Docker image to Docker Hub
|
||||
if: startsWith(github.ref, 'refs/tags/v')
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out the repo
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Get the version
|
||||
id: get_version
|
||||
run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/v}
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v1
|
||||
|
||||
- name: Cache Docker layers
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: /tmp/.buildx-cache
|
||||
key: ${{ runner.os }}-buildx-${{ github.sha }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-buildx-
|
||||
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
username: ${{ secrets.REGISTRY_LOGIN }}
|
||||
password: ${{ secrets.REGISTRY_PASSWORD }}
|
||||
|
||||
- name: Push the REST API to Docker Hub
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: .
|
||||
tags: |
|
||||
${{ secrets.REGISTRY_NAME }}/zdam-egzamin-zawodowy-backend:latest
|
||||
${{ secrets.REGISTRY_NAME }}/zdam-egzamin-zawodowy-backend:${{ steps.get_version.outputs.VERSION }}
|
||||
file: ./Dockerfile
|
||||
push: true
|
6
Makefile
6
Makefile
|
@ -1,2 +1,8 @@
|
|||
generate:
|
||||
go generate ./...
|
||||
|
||||
docker-compose-up:
|
||||
docker-compose up --detach
|
||||
|
||||
docker-compose-down:
|
||||
docker-compose down
|
35
README.md
35
README.md
|
@ -1,37 +1,6 @@
|
|||
# zdamegzaminzawodowy.pl - backend
|
||||
# [zdamegzaminzawodowy.pl](https://zdamegzaminzawodowy.pl) - backend
|
||||
|
||||
This project contains the API and other core infrastructure items needed for all [zdamegzaminzawodowy.pl](https://zdamegzaminzawodowy.pl) apps.
|
||||
|
||||
## Development
|
||||
|
||||
### Prerequisites
|
||||
1. Golang
|
||||
2. PostgreSQL database
|
||||
|
||||
### Installation
|
||||
**Required ENV variables (you can set them directly in your system or create the .env.local file):**
|
||||
```
|
||||
DB_USER=db_user
|
||||
DB_NAME=db_name
|
||||
DB_PORT=db_port
|
||||
DB_HOST=db_host
|
||||
DB_PASSWORD=db_pass
|
||||
DB_POOL_SIZE=40
|
||||
LOG_DB_QUERIES=true
|
||||
ACCESS_SECRET=access_token_secret
|
||||
FILE_STORAGE_PATH=path_to_the_folder_where_uploaded_files_will_be_stored
|
||||
ENABLE_ACCESS_LOG=false
|
||||
```
|
||||
|
||||
1. Clone this repo.
|
||||
```
|
||||
git clone git@github.com:zdam-egzamin-zawodowy/backend.git
|
||||
```
|
||||
2. Set the required env variables.
|
||||
3. Run the app.
|
||||
```
|
||||
go run main.go
|
||||
```
|
||||
The core infrastructure backend (API, Docker etc) for [zdamegzaminzawodowy.pl](https://zdamegzaminzawodowy.pl)
|
||||
|
||||
## License
|
||||
Distributed under the MIT License. See ``LICENSE`` for more information.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
FROM golang:alpine as builder
|
||||
FROM golang:1.17-alpine3.16 as builder
|
||||
|
||||
# Set the Current Working Directory inside the container
|
||||
WORKDIR /app
|
||||
|
@ -12,11 +12,13 @@ RUN go mod download
|
|||
# Copy the source from the current directory to the Working Directory inside the container
|
||||
COPY . .
|
||||
RUN apk --no-cache add musl-dev gcc build-base
|
||||
RUN go install github.com/99designs/gqlgen@v0.14.0
|
||||
RUN go generate ./...
|
||||
RUN go build -o zdamegzawodowy .
|
||||
ENV CGO_ENABLED=0
|
||||
RUN go build -o zdamegzawodowy ./cmd/server
|
||||
|
||||
######## Start a new stage from scratch #######
|
||||
FROM alpine:latest
|
||||
FROM alpine:3.16
|
||||
|
||||
RUN apk --no-cache add ca-certificates
|
||||
|
||||
|
@ -26,10 +28,6 @@ WORKDIR /root/
|
|||
COPY --from=builder /app/zdamegzawodowy .
|
||||
|
||||
ENV APP_MODE=production
|
||||
ENV GIN_MODE=release
|
||||
EXPOSE 8080
|
||||
|
||||
ADD https://github.com/ufoscout/docker-compose-wait/releases/download/2.2.1/wait ./wait
|
||||
RUN chmod +x ./wait
|
||||
|
||||
CMD ./wait && ./zdamegzawodowy
|
||||
CMD ./zdamegzawodowy
|
|
@ -0,0 +1,13 @@
|
|||
image: gitea.dwysokinski.me/zdam-egzamin-zawodowy-docker/backend:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}
|
||||
{{#if build.tags}}
|
||||
tags:
|
||||
{{#each build.tags}}
|
||||
- {{this}}
|
||||
{{/each}}
|
||||
{{/if}}
|
||||
manifests:
|
||||
-
|
||||
image: gitea.dwysokinski.me/zdam-egzamin-zawodowy-docker/backend:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-amd64
|
||||
platform:
|
||||
architecture: amd64
|
||||
os: linux
|
|
@ -0,0 +1,17 @@
|
|||
package internal
|
||||
|
||||
import (
|
||||
"github.com/joho/godotenv"
|
||||
"github.com/pkg/errors"
|
||||
"strings"
|
||||
)
|
||||
|
||||
func LoadENVFiles() error {
|
||||
for _, filename := range [...]string{".env.local", ".env"} {
|
||||
if err := godotenv.Load(filename); err != nil && !strings.Contains(err.Error(), "no such file or directory") {
|
||||
return errors.Wrap(err, "godotenv.Load")
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
|
@ -2,62 +2,59 @@ package main
|
|||
|
||||
import (
|
||||
"context"
|
||||
"github.com/Kichiyaki/appmode"
|
||||
"github.com/Kichiyaki/chilogrus"
|
||||
"github.com/Kichiyaki/goutil/envutil"
|
||||
"github.com/go-chi/chi/v5"
|
||||
"github.com/go-pg/pg/v10"
|
||||
"log"
|
||||
"net/http"
|
||||
"os"
|
||||
"os/signal"
|
||||
"time"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/auth"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/chi/middleware"
|
||||
graphqlhttpdelivery "github.com/zdam-egzamin-zawodowy/backend/internal/graphql/delivery/httpdelivery"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/directive"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/resolvers"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/cmd/internal"
|
||||
"github.com/Kichiyaki/appmode"
|
||||
"github.com/Kichiyaki/chilogrus"
|
||||
"github.com/Kichiyaki/goutil/envutil"
|
||||
"github.com/go-chi/chi/v5"
|
||||
"github.com/go-pg/pg/v10"
|
||||
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/auth"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/chi/middleware"
|
||||
graphqlhttpdelivery "gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/delivery/httpdelivery"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/directive"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/resolvers"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/auth/jwt"
|
||||
authusecase "github.com/zdam-egzamin-zawodowy/backend/internal/auth/usecase"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/dataloader"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/postgres"
|
||||
professionrepository "github.com/zdam-egzamin-zawodowy/backend/internal/profession/repository"
|
||||
professionusecase "github.com/zdam-egzamin-zawodowy/backend/internal/profession/usecase"
|
||||
qualificationrepository "github.com/zdam-egzamin-zawodowy/backend/internal/qualification/repository"
|
||||
qualificationusecase "github.com/zdam-egzamin-zawodowy/backend/internal/qualification/usecase"
|
||||
questionrepository "github.com/zdam-egzamin-zawodowy/backend/internal/question/repository"
|
||||
questionusecase "github.com/zdam-egzamin-zawodowy/backend/internal/question/usecase"
|
||||
userrepository "github.com/zdam-egzamin-zawodowy/backend/internal/user/repository"
|
||||
userusecase "github.com/zdam-egzamin-zawodowy/backend/internal/user/usecase"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/auth/jwt"
|
||||
authusecase "gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/auth/usecase"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/dataloader"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/postgres"
|
||||
professionrepository "gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/profession/repository"
|
||||
professionusecase "gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/profession/usecase"
|
||||
qualificationrepository "gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/qualification/repository"
|
||||
qualificationusecase "gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/qualification/usecase"
|
||||
questionrepository "gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/question/repository"
|
||||
questionusecase "gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/question/usecase"
|
||||
userrepository "gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/user/repository"
|
||||
userusecase "gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/user/usecase"
|
||||
|
||||
"github.com/joho/godotenv"
|
||||
"github.com/sirupsen/logrus"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/fstorage"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/fstorage"
|
||||
|
||||
chimiddleware "github.com/go-chi/chi/v5/middleware"
|
||||
"github.com/go-chi/cors"
|
||||
)
|
||||
|
||||
func init() {
|
||||
os.Setenv("TZ", "UTC")
|
||||
|
||||
if appmode.Equals(appmode.DevelopmentMode) {
|
||||
godotenv.Load(".env.local")
|
||||
func main() {
|
||||
if err := internal.LoadENVFiles(); err != nil {
|
||||
logrus.Fatal("internal.LoadENVFiles", err)
|
||||
}
|
||||
|
||||
prepareLogger()
|
||||
}
|
||||
|
||||
func main() {
|
||||
fileStorage := fstorage.New(&fstorage.Config{
|
||||
BasePath: envutil.GetenvString("FILE_STORAGE_PATH"),
|
||||
})
|
||||
|
@ -93,14 +90,13 @@ func main() {
|
|||
quit := make(chan os.Signal)
|
||||
signal.Notify(quit, os.Interrupt)
|
||||
<-quit
|
||||
logrus.Info("Shutdown Server ...")
|
||||
logrus.Info("Shutdown signal received, exiting...")
|
||||
|
||||
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
|
||||
defer cancel()
|
||||
if err := srv.Shutdown(ctx); err != nil {
|
||||
logrus.Fatalln("Server Shutdown:", err)
|
||||
}
|
||||
logrus.Info("Server exiting")
|
||||
}
|
||||
|
||||
func prepareLogger() {
|
|
@ -0,0 +1,2 @@
|
|||
upload
|
||||
pgdata
|
|
@ -0,0 +1,51 @@
|
|||
# auto detects a good number of processes to run
|
||||
worker_processes auto;
|
||||
|
||||
#Provides the configuration file context in which the directives that affect connection processing are specified.
|
||||
events {
|
||||
# Sets the maximum number of simultaneous connections that can be opened by a worker process.
|
||||
worker_connections 8000;
|
||||
# Tells the worker to accept multiple connections at a time
|
||||
multi_accept on;
|
||||
}
|
||||
|
||||
|
||||
http {
|
||||
# what times to include
|
||||
include /etc/nginx/mime.types;
|
||||
# what is the default one
|
||||
default_type application/octet-stream;
|
||||
|
||||
# Sets the path, format, and configuration for a buffered log write
|
||||
log_format compression '$remote_addr - $remote_user [$time_local] '
|
||||
'"$request" $status $upstream_addr '
|
||||
'"$http_referer" "$http_user_agent"';
|
||||
|
||||
server {
|
||||
# listen on port 80
|
||||
listen 80;
|
||||
# save logs here
|
||||
access_log /var/log/nginx/access.log compression;
|
||||
|
||||
# where the root here
|
||||
root /usr/share/nginx/html;
|
||||
|
||||
# Fonts and media: images, icons, video, audio, HTC
|
||||
location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc|ttf|webp)$ {
|
||||
expires 1m;
|
||||
add_header Cache-Control "public";
|
||||
}
|
||||
|
||||
# Javascript and CSS files
|
||||
location ~* \.(?:css|webmanifest|js|woff2|manifest)$ {
|
||||
expires 1y;
|
||||
add_header Cache-Control "public";
|
||||
}
|
||||
|
||||
location / {
|
||||
# First attempt to serve request as file, then
|
||||
# as directory, then fall back to redirecting to index.html
|
||||
try_files $uri $uri/ =404;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
version: '3.6'
|
||||
|
||||
services:
|
||||
cdn:
|
||||
image: nginx:alpine
|
||||
volumes:
|
||||
- ./dev/upload:/usr/share/nginx/html
|
||||
- ./dev/nginx.conf:/etc/nginx/nginx.conf
|
||||
ports:
|
||||
- "9000:80"
|
||||
environment:
|
||||
- NGINX_PORT=80
|
||||
restart: unless-stopped
|
||||
|
||||
zdamegzzawodowydb:
|
||||
image: postgres:12.11
|
||||
container_name: zdamegzzawodowydb
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "5432:5432"
|
||||
environment:
|
||||
- POSTGRES_PASSWORD=zdamegzzawodowy
|
||||
- POSTGRES_DB=zdamegzzawodowy
|
||||
- TZ=UTC
|
34
go.mod
34
go.mod
|
@ -1,4 +1,4 @@
|
|||
module github.com/zdam-egzamin-zawodowy/backend
|
||||
module gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend
|
||||
|
||||
go 1.17
|
||||
|
||||
|
@ -9,42 +9,34 @@ require (
|
|||
github.com/Kichiyaki/go-pg-logrus-query-logger/v10 v10.0.0-20210502060056-ad595ba7b858
|
||||
github.com/Kichiyaki/gopgutil/v10 v10.0.0-20210521204542-cc672e361b3d
|
||||
github.com/Kichiyaki/goutil v0.1.0
|
||||
github.com/agnivade/levenshtein v1.1.0 // indirect
|
||||
github.com/go-chi/chi/v5 v5.0.5
|
||||
github.com/go-chi/cors v1.2.0
|
||||
github.com/go-chi/chi/v5 v5.0.7
|
||||
github.com/go-chi/cors v1.2.1
|
||||
github.com/go-pg/pg/v10 v10.10.6
|
||||
github.com/golang-jwt/jwt/v4 v4.1.0
|
||||
github.com/golang-jwt/jwt/v4 v4.4.1
|
||||
github.com/google/uuid v1.3.0
|
||||
github.com/gosimple/slug v1.11.0
|
||||
github.com/hashicorp/golang-lru v0.5.4 // indirect
|
||||
github.com/gosimple/slug v1.12.0
|
||||
github.com/joho/godotenv v1.4.0
|
||||
github.com/mitchellh/mapstructure v1.4.1 // indirect
|
||||
github.com/pkg/errors v0.9.1
|
||||
github.com/sethvargo/go-password v0.2.0
|
||||
github.com/sirupsen/logrus v1.8.1
|
||||
github.com/vektah/gqlparser/v2 v2.2.0
|
||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519
|
||||
golang.org/x/sys v0.0.0-20210923061019-b8560ed6a9b7 // indirect
|
||||
golang.org/x/text v0.3.6 // indirect
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
|
||||
gopkg.in/yaml.v2 v2.4.0 // indirect
|
||||
golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e
|
||||
)
|
||||
|
||||
require (
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d // indirect
|
||||
github.com/agnivade/levenshtein v1.1.0 // indirect
|
||||
github.com/go-pg/zerochecker v0.2.0 // indirect
|
||||
github.com/gorilla/websocket v1.4.2 // indirect
|
||||
github.com/gosimple/unidecode v1.0.0 // indirect
|
||||
github.com/gosimple/unidecode v1.0.1 // indirect
|
||||
github.com/hashicorp/golang-lru v0.5.0 // indirect
|
||||
github.com/jinzhu/inflection v1.0.0 // indirect
|
||||
github.com/russross/blackfriday/v2 v2.0.1 // indirect
|
||||
github.com/shurcooL/sanitized_anchor_name v1.0.0 // indirect
|
||||
github.com/mitchellh/mapstructure v1.1.2 // indirect
|
||||
github.com/tmthrgd/go-hex v0.0.0-20190904060850-447a3041c3bc // indirect
|
||||
github.com/urfave/cli/v2 v2.1.1 // indirect
|
||||
github.com/vektah/gqlparser/v2 v2.2.0 // indirect
|
||||
github.com/vmihailenco/bufpool v0.1.11 // indirect
|
||||
github.com/vmihailenco/msgpack/v5 v5.3.4 // indirect
|
||||
github.com/vmihailenco/tagparser v0.1.2 // indirect
|
||||
github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect
|
||||
golang.org/x/mod v0.3.0 // indirect
|
||||
golang.org/x/tools v0.0.0-20210106214847-113979e3529a // indirect
|
||||
golang.org/x/sys v0.0.0-20211007075335-d3039528d8ac // indirect
|
||||
golang.org/x/text v0.3.7 // indirect
|
||||
mellium.im/sasl v0.2.1 // indirect
|
||||
)
|
||||
|
|
51
go.sum
51
go.sum
|
@ -22,7 +22,6 @@ github.com/arbovm/levenshtein v0.0.0-20160628152529-48b4e1c0c4d0 h1:jfIu9sQUG6Ig
|
|||
github.com/arbovm/levenshtein v0.0.0-20160628152529-48b4e1c0c4d0/go.mod h1:t2tdKJDJF9BV14lnkjHmOQgcvEKgtqs5a1N3LNdJhGE=
|
||||
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
|
||||
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d h1:U+s90UTSYgptZMwQh2aRr3LuazLJIa+Pg3Kc1ylSYVY=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU=
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
|
@ -35,20 +34,18 @@ github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMo
|
|||
github.com/fsnotify/fsnotify v1.4.9 h1:hsms1Qyu0jgnwNXIxa+/V/PDsU6CfLf6CNO8H7IWoS4=
|
||||
github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ=
|
||||
github.com/go-chi/chi/v5 v5.0.3/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8=
|
||||
github.com/go-chi/chi/v5 v5.0.4 h1:5e494iHzsYBiyXQAHHuI4tyJS9M3V84OuX3ufIIGHFo=
|
||||
github.com/go-chi/chi/v5 v5.0.4/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8=
|
||||
github.com/go-chi/chi/v5 v5.0.5 h1:l3RJ8T8TAqLsXFfah+RA6N4pydMbPwSdvNM+AFWvLUM=
|
||||
github.com/go-chi/chi/v5 v5.0.5/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8=
|
||||
github.com/go-chi/cors v1.2.0 h1:tV1g1XENQ8ku4Bq3K9ub2AtgG+p16SmzeMSGTwrOKdE=
|
||||
github.com/go-chi/cors v1.2.0/go.mod h1:sSbTewc+6wYHBBCW7ytsFSn836hqM7JxpglAy2Vzc58=
|
||||
github.com/go-chi/chi/v5 v5.0.7 h1:rDTPXLDHGATaeHvVlLcR4Qe0zftYethFucbjVQ1PxU8=
|
||||
github.com/go-chi/chi/v5 v5.0.7/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8=
|
||||
github.com/go-chi/cors v1.2.1 h1:xEC8UT3Rlp2QuWNEr4Fs/c2EAGVKBwy/1vHx3bppil4=
|
||||
github.com/go-chi/cors v1.2.1/go.mod h1:sSbTewc+6wYHBBCW7ytsFSn836hqM7JxpglAy2Vzc58=
|
||||
github.com/go-pg/pg/v10 v10.9.1/go.mod h1:rgmTPgHgl5EN2CNKKoMwC7QT62t8BqsdpEkUQuiZMQs=
|
||||
github.com/go-pg/pg/v10 v10.10.6 h1:1vNtPZ4Z9dWUw/TjJwOfFUbF5nEq1IkR6yG8Mq/Iwso=
|
||||
github.com/go-pg/pg/v10 v10.10.6/go.mod h1:GLmFXufrElQHf5uzM3BQlcfwV3nsgnHue5uzjQ6Nqxg=
|
||||
github.com/go-pg/zerochecker v0.2.0 h1:pp7f72c3DobMWOb2ErtZsnrPaSvHd2W4o9//8HtF4mU=
|
||||
github.com/go-pg/zerochecker v0.2.0/go.mod h1:NJZ4wKL0NmTtz0GKCoJ8kym6Xn/EQzXRl2OnAe7MmDo=
|
||||
github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q=
|
||||
github.com/golang-jwt/jwt/v4 v4.1.0 h1:XUgk2Ex5veyVFVeLm0xhusUTQybEbexJXrvPNOKkSY0=
|
||||
github.com/golang-jwt/jwt/v4 v4.1.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg=
|
||||
github.com/golang-jwt/jwt/v4 v4.4.1 h1:pC5DB52sCeK48Wlb9oPcdhnjkz1TKt1D/P7WKJ0kUcQ=
|
||||
github.com/golang-jwt/jwt/v4 v4.4.1/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0=
|
||||
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
|
||||
github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
|
||||
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||
|
@ -73,13 +70,12 @@ github.com/gorilla/context v0.0.0-20160226214623-1ea25387ff6f/go.mod h1:kBGZzfjB
|
|||
github.com/gorilla/mux v1.6.1/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
|
||||
github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc=
|
||||
github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
|
||||
github.com/gosimple/slug v1.11.0 h1:QkFeOkXIEDvvtIt++P7cUuO4G9PZVQEgLuYbYZzawMA=
|
||||
github.com/gosimple/slug v1.11.0/go.mod h1:MICb3w495l9KNdZm+Xn5b6T2Hn831f9DMxiJ1r+bAjw=
|
||||
github.com/gosimple/unidecode v1.0.0 h1:kPdvM+qy0tnk4/BrnkrbdJ82xe88xn7c9hcaipDz4dQ=
|
||||
github.com/gosimple/unidecode v1.0.0/go.mod h1:CP0Cr1Y1kogOtx0bJblKzsVWrqYaqfNOnHzpgWw4Awc=
|
||||
github.com/gosimple/slug v1.12.0 h1:xzuhj7G7cGtd34NXnW/yF0l+AGNfWqwgh/IXgFy7dnc=
|
||||
github.com/gosimple/slug v1.12.0/go.mod h1:UiRaFH+GEilHstLUmcBgWcI42viBN7mAb818JrYOeFQ=
|
||||
github.com/gosimple/unidecode v1.0.1 h1:hZzFTMMqSswvf0LBJZCZgThIZrpDHFXux9KeGmn6T/o=
|
||||
github.com/gosimple/unidecode v1.0.1/go.mod h1:CP0Cr1Y1kogOtx0bJblKzsVWrqYaqfNOnHzpgWw4Awc=
|
||||
github.com/hashicorp/golang-lru v0.5.0 h1:CL2msUPvZTLb5O648aiLNJw3hnBxN2+1Jq8rCOH9wdo=
|
||||
github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=
|
||||
github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc=
|
||||
github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4=
|
||||
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
|
||||
github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E=
|
||||
github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc=
|
||||
|
@ -97,8 +93,8 @@ github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVc
|
|||
github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
|
||||
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
|
||||
github.com/mitchellh/mapstructure v0.0.0-20180203102830-a4e142e9c047/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
|
||||
github.com/mitchellh/mapstructure v1.4.1 h1:CpVNEelQCZBooIPDn+AR3NpivK/TIKU8bDxdASFVQag=
|
||||
github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
|
||||
github.com/mitchellh/mapstructure v1.1.2 h1:fmNYVwqnSfB9mZU6OS2O6GsXM+wcskZDuKQzvN1EDeE=
|
||||
github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
|
||||
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs=
|
||||
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno=
|
||||
github.com/nxadm/tail v1.4.4 h1:DQuhQpB1tVlglWS2hLQ5OV6B5r8aGxSrPc5Qo6uTN78=
|
||||
|
@ -120,14 +116,12 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb
|
|||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
|
||||
github.com/rs/cors v1.6.0/go.mod h1:gFx+x8UowdsKA9AchylcLynDq+nNFfI8FkUZdN/jGCU=
|
||||
github.com/russross/blackfriday/v2 v2.0.1 h1:lPqVAte+HuHNfhJ/0LC98ESWRz8afy9tM/0RK8m9o+Q=
|
||||
github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
github.com/sergi/go-diff v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0=
|
||||
github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
|
||||
github.com/sethvargo/go-password v0.2.0 h1:BTDl4CC/gjf/axHMaDQtw507ogrXLci6XRiLc7i/UHI=
|
||||
github.com/sethvargo/go-password v0.2.0/go.mod h1:Ym4Mr9JXLBycr02MFuVQ/0JHidNetSgbzutTr3zsYXE=
|
||||
github.com/shurcooL/httpfs v0.0.0-20171119174359-809beceb2371/go.mod h1:ZY1cvUeJuFPAdZ/B6v7RHavJWZn2YPVFQ1OSXhCGOkg=
|
||||
github.com/shurcooL/sanitized_anchor_name v1.0.0 h1:PdmoCO6wvbs+7yrJyMORt4/BmY5IYyJwS/kOiWx8mHo=
|
||||
github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc=
|
||||
github.com/shurcooL/vfsgen v0.0.0-20180121065927-ffb13db8def0/go.mod h1:TrYk7fJVaAttu97ZZKrO9UbRa8izdowaMIZcxYMbVaw=
|
||||
github.com/sirupsen/logrus v1.8.1 h1:dJKuHgqk1NNQlqoA6BTlM1Wf9DOH3NBjQyu0h9+AZZE=
|
||||
|
@ -142,7 +136,6 @@ github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5Cc
|
|||
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||
github.com/tmthrgd/go-hex v0.0.0-20190904060850-447a3041c3bc h1:9lRDQMhESg+zvGYmW5DyG0UqvY96Bu5QYsTLvCHdrgo=
|
||||
github.com/tmthrgd/go-hex v0.0.0-20190904060850-447a3041c3bc/go.mod h1:bciPuU6GHm1iF1pBvUfxfsH0Wmnc2VbpgvbI9ZWuIRs=
|
||||
github.com/urfave/cli/v2 v2.1.1 h1:Qt8FeAtxE/vfdrLmR3rxR6JRE0RoVmbXu8+6kZtYU4k=
|
||||
github.com/urfave/cli/v2 v2.1.1/go.mod h1:SE9GqnLQmjVa0iPEY0f1w3ygNIYcIJ0OKPMoW2caLfQ=
|
||||
github.com/vektah/dataloaden v0.2.1-0.20190515034641-a19b9a6e7c9e/go.mod h1:/HUdMve7rvxZma+2ZELQeNh88+003LL7Pf/CZ089j8U=
|
||||
github.com/vektah/gqlparser/v2 v2.2.0 h1:bAc3slekAAJW6sZTi07aGq0OrfaCjj4jxARAaC7g2EM=
|
||||
|
@ -167,14 +160,14 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk
|
|||
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
|
||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 h1:7I4JAnoQBe7ZtJcBaYHi5UtiO8tQHbUSXxL+pnGRANg=
|
||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
||||
golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e h1:T8NU3HyQ8ClP4SEE+KbFlg6n0NhuTsN4MyznaarGsZM=
|
||||
golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
|
||||
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
|
||||
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
|
||||
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
|
||||
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
|
||||
golang.org/x/mod v0.3.0 h1:RM4zey1++hCTbCVQfnWeKs9/IEsaBLA8vTkd0WVtmH4=
|
||||
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
|
||||
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||
|
@ -187,8 +180,9 @@ golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLL
|
|||
golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
|
||||
golang.org/x/net v0.0.0-20201006153459-a7d1128ccaa0/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110 h1:qWPm9rbaAMKs8Bq/9LRpbMqxWRVUAQwMI9fVrssnTfw=
|
||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
||||
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 h1:CIJ76btIcR3eFI5EgSo6k1qKw9KJexJuRLI9G7Hp5wE=
|
||||
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
|
@ -210,15 +204,18 @@ golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7w
|
|||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20210923061019-b8560ed6a9b7 h1:c20P3CcPbopVp2f7099WLOqSNKURf30Z0uq66HpijZY=
|
||||
golang.org/x/sys v0.0.0-20210923061019-b8560ed6a9b7/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20211007075335-d3039528d8ac h1:oN6lz7iLW/YC7un8pq+9bOLyXrprv2+DKfkJY+2LJJw=
|
||||
golang.org/x/sys v0.0.0-20211007075335-d3039528d8ac/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.3.6 h1:aRYxNxv6iGQlyVaZmk6ZgYEDa+Jg18DxebPSrd6bg1M=
|
||||
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
|
||||
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20190125232054-d66bd3c5d5a6/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
|
@ -228,7 +225,6 @@ golang.org/x/tools v0.0.0-20190515012406-7d7faa4812bd/go.mod h1:RgjU9mgBXZiqYHBn
|
|||
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
golang.org/x/tools v0.0.0-20210106214847-113979e3529a h1:CB3a9Nez8M13wwlr/E2YtwoU+qYHKfC+JrDa45RXXoQ=
|
||||
golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
|
||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
|
@ -262,9 +258,8 @@ gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkep
|
|||
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
|
||||
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||
gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||
gopkg.in/yaml.v2 v2.3.0 h1:clyUAQHOM3G0M3f5vQj7LuJrETvjVot3Z5el9nffUtU=
|
||||
gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
|
||||
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
|
|
|
@ -3,7 +3,7 @@ package auth
|
|||
import (
|
||||
"context"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
type Usecase interface {
|
||||
|
|
|
@ -4,11 +4,11 @@ import (
|
|||
"context"
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/auth"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/auth/jwt"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/auth"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/auth/jwt"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
)
|
||||
|
||||
type Config struct {
|
||||
|
|
|
@ -5,8 +5,8 @@ import (
|
|||
"github.com/pkg/errors"
|
||||
"net/http"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/auth"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/auth"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
const (
|
||||
|
|
|
@ -5,7 +5,7 @@ import (
|
|||
"github.com/pkg/errors"
|
||||
"net/http"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/dataloader"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/dataloader"
|
||||
)
|
||||
|
||||
var (
|
||||
|
|
|
@ -4,10 +4,10 @@ import (
|
|||
"context"
|
||||
"time"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
)
|
||||
|
||||
const (
|
||||
|
|
|
@ -6,7 +6,7 @@ import (
|
|||
"sync"
|
||||
"time"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
// QualificationLoaderConfig captures the config to create a new QualificationLoader
|
||||
|
|
|
@ -6,7 +6,7 @@ import (
|
|||
"sync"
|
||||
"time"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
// QualificationSliceByProfessionIDLoaderConfig captures the config to create a new QualificationSliceByProfessionIDLoader
|
||||
|
|
|
@ -8,7 +8,7 @@ import (
|
|||
"net/http"
|
||||
"time"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/querycomplexity"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/querycomplexity"
|
||||
|
||||
"github.com/99designs/gqlgen/graphql/handler"
|
||||
"github.com/99designs/gqlgen/graphql/handler/extension"
|
||||
|
@ -16,9 +16,9 @@ import (
|
|||
"github.com/99designs/gqlgen/graphql/handler/transport"
|
||||
"github.com/99designs/gqlgen/graphql/playground"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/directive"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/resolvers"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/directive"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/resolvers"
|
||||
)
|
||||
|
||||
const (
|
||||
|
|
|
@ -6,9 +6,9 @@ import (
|
|||
|
||||
"github.com/99designs/gqlgen/graphql"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/chi/middleware"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/chi/middleware"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
)
|
||||
|
||||
type Directive struct{}
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
*.go
|
File diff suppressed because it is too large
Load Diff
|
@ -1,32 +0,0 @@
|
|||
// Code generated by github.com/99designs/gqlgen, DO NOT EDIT.
|
||||
|
||||
package generated
|
||||
|
||||
import (
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
type ProfessionList struct {
|
||||
Total int `json:"total"`
|
||||
Items []*model.Profession `json:"items"`
|
||||
}
|
||||
|
||||
type QualificationList struct {
|
||||
Total int `json:"total"`
|
||||
Items []*model.Qualification `json:"items"`
|
||||
}
|
||||
|
||||
type QuestionList struct {
|
||||
Total int `json:"total"`
|
||||
Items []*model.Question `json:"items"`
|
||||
}
|
||||
|
||||
type UserList struct {
|
||||
Total int `json:"total"`
|
||||
Items []*model.User `json:"items"`
|
||||
}
|
||||
|
||||
type UserWithToken struct {
|
||||
Token string `json:"token"`
|
||||
User *model.User `json:"user"`
|
||||
}
|
|
@ -19,52 +19,52 @@ models:
|
|||
- github.com/99designs/gqlgen/graphql.Int32
|
||||
Role:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.Role
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.Role
|
||||
User:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.User
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.User
|
||||
UserFilter:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.UserFilter
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.UserFilter
|
||||
UserFilterOr:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.UserFilterOr
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.UserFilterOr
|
||||
UserInput:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.UserInput
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.UserInput
|
||||
UpdateManyUsersInput:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.UserInput
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.UserInput
|
||||
Profession:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.Profession
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.Profession
|
||||
ProfessionFilter:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.ProfessionFilter
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.ProfessionFilter
|
||||
ProfessionInput:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.ProfessionInput
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.ProfessionInput
|
||||
Qualification:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.Qualification
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.Qualification
|
||||
QualificationFilter:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.QualificationFilter
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.QualificationFilter
|
||||
QualificationFilterOr:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.QualificationFilterOr
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.QualificationFilterOr
|
||||
QualificationInput:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.QualificationInput
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.QualificationInput
|
||||
Answer:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.Answer
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.Answer
|
||||
Question:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.Question
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.Question
|
||||
QuestionFilter:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.QuestionFilter
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.QuestionFilter
|
||||
QuestionInput:
|
||||
model:
|
||||
- github.com/zdam-egzamin-zawodowy/backend/internal/model.QuestionInput
|
||||
- gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model.QuestionInput
|
||||
|
|
|
@ -1,7 +1,3 @@
|
|||
package graphql
|
||||
|
||||
//go:generate go run github.com/99designs/gqlgen
|
||||
|
||||
import (
|
||||
_ "github.com/99designs/gqlgen/cmd"
|
||||
)
|
||||
//go:generate gqlgen --verbose
|
||||
|
|
|
@ -4,12 +4,12 @@ import (
|
|||
"github.com/99designs/gqlgen/graphql/handler/extension"
|
||||
"github.com/Kichiyaki/goutil/safeptr"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
)
|
||||
|
||||
const (
|
||||
|
|
|
@ -7,11 +7,11 @@ import (
|
|||
"context"
|
||||
"github.com/Kichiyaki/goutil/safeptr"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/chi/middleware"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/chi/middleware"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
)
|
||||
|
||||
func (r *mutationResolver) CreateProfession(ctx context.Context, input model.ProfessionInput) (*model.Profession, error) {
|
||||
|
|
|
@ -7,9 +7,9 @@ import (
|
|||
"context"
|
||||
"github.com/Kichiyaki/goutil/safeptr"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
)
|
||||
|
||||
func (r *mutationResolver) CreateQualification(ctx context.Context, input model.QualificationInput) (*model.Qualification, error) {
|
||||
|
|
|
@ -7,10 +7,10 @@ import (
|
|||
"context"
|
||||
"github.com/Kichiyaki/goutil/safeptr"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/chi/middleware"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/chi/middleware"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
)
|
||||
|
||||
func (r *mutationResolver) CreateQuestion(ctx context.Context, input model.QuestionInput) (*model.Question, error) {
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
package resolvers
|
||||
|
||||
import (
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/auth"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/auth"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
)
|
||||
|
||||
// This file will not be regenerated automatically.
|
||||
|
|
|
@ -7,10 +7,10 @@ import (
|
|||
"context"
|
||||
"github.com/Kichiyaki/goutil/safeptr"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/chi/middleware"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/chi/middleware"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/graphql/generated"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
)
|
||||
|
||||
func (r *mutationResolver) CreateUser(ctx context.Context, input model.UserInput) (*model.User, error) {
|
||||
|
|
|
@ -11,7 +11,7 @@ import (
|
|||
"github.com/pkg/errors"
|
||||
"github.com/sethvargo/go-password/password"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
var log = logrus.WithField("package", "internal/postgres")
|
||||
|
|
|
@ -3,7 +3,7 @@ package profession
|
|||
import (
|
||||
"context"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
type FetchConfig struct {
|
||||
|
|
|
@ -6,12 +6,12 @@ import (
|
|||
"github.com/pkg/errors"
|
||||
"strings"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
|
||||
"github.com/go-pg/pg/v10"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
)
|
||||
|
||||
type PGRepositoryConfig struct {
|
||||
|
|
|
@ -3,7 +3,7 @@ package profession
|
|||
import (
|
||||
"context"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
type Usecase interface {
|
||||
|
|
|
@ -4,8 +4,8 @@ import (
|
|||
"context"
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/profession"
|
||||
)
|
||||
|
||||
type Config struct {
|
||||
|
|
|
@ -3,7 +3,7 @@ package qualification
|
|||
import (
|
||||
"context"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
type FetchConfig struct {
|
||||
|
|
|
@ -6,12 +6,12 @@ import (
|
|||
"github.com/pkg/errors"
|
||||
"strings"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
|
||||
"github.com/go-pg/pg/v10"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
)
|
||||
|
||||
type PGRepositoryConfig struct {
|
||||
|
|
|
@ -3,7 +3,7 @@ package qualification
|
|||
import (
|
||||
"context"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
type Usecase interface {
|
||||
|
|
|
@ -4,8 +4,8 @@ import (
|
|||
"context"
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/qualification"
|
||||
)
|
||||
|
||||
type Config struct {
|
||||
|
|
|
@ -3,7 +3,7 @@ package question
|
|||
import (
|
||||
"context"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
type FetchConfig struct {
|
||||
|
|
|
@ -9,10 +9,10 @@ import (
|
|||
|
||||
"github.com/go-pg/pg/v10"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/fstorage"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/fstorage"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
)
|
||||
|
||||
type PGRepositoryConfig struct {
|
||||
|
|
|
@ -3,12 +3,12 @@ package repository
|
|||
import (
|
||||
"path/filepath"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/fstorage/fstorageutil"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/fstorage/fstorageutil"
|
||||
|
||||
"github.com/99designs/gqlgen/graphql"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/fstorage"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/fstorage"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
type repository struct {
|
||||
|
|
|
@ -3,7 +3,7 @@ package question
|
|||
import (
|
||||
"context"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
type Usecase interface {
|
||||
|
|
|
@ -4,8 +4,8 @@ import (
|
|||
"context"
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/question"
|
||||
)
|
||||
|
||||
var (
|
||||
|
|
|
@ -3,7 +3,7 @@ package user
|
|||
import (
|
||||
"context"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
type FetchConfig struct {
|
||||
|
|
|
@ -6,12 +6,12 @@ import (
|
|||
"github.com/pkg/errors"
|
||||
"strings"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/util/errorutil"
|
||||
|
||||
"github.com/go-pg/pg/v10"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
)
|
||||
|
||||
type PGRepositoryConfig struct {
|
||||
|
|
|
@ -3,7 +3,7 @@ package user
|
|||
import (
|
||||
"context"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
)
|
||||
|
||||
type Usecase interface {
|
||||
|
|
|
@ -5,8 +5,8 @@ import (
|
|||
"github.com/Kichiyaki/goutil/strutil"
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"github.com/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/model"
|
||||
"gitea.dwysokinski.me/zdam-egzamin-zawodowy/backend/internal/user"
|
||||
)
|
||||
|
||||
type Config struct {
|
||||
|
|
Reference in New Issue