Compare commits
No commits in common. "972359cb49ad261712dc0260bce969a13ccc7269" and "46fa347451336a1c8ac1b404cf6bf9fc45745e59" have entirely different histories.
972359cb49
...
46fa347451
6 changed files with 11 additions and 20 deletions
|
|
@ -22,7 +22,6 @@ RUN set -ex; \
|
||||||
export DEBIAN_FRONTEND=noninteractive; \
|
export DEBIAN_FRONTEND=noninteractive; \
|
||||||
apt-get update; apt-get -y install --no-install-recommends \
|
apt-get update; apt-get -y install --no-install-recommends \
|
||||||
easy-rsa \
|
easy-rsa \
|
||||||
git-flow \
|
|
||||||
; rm -rf /var/lib/apt/lists/*; \
|
; rm -rf /var/lib/apt/lists/*; \
|
||||||
ln -s /usr/share/easy-rsa/easyrsa /usr/local/bin;
|
ln -s /usr/share/easy-rsa/easyrsa /usr/local/bin;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -56,7 +56,7 @@ class EasyRSA:
|
||||||
days: int = 365 * 50,
|
days: int = 365 * 50,
|
||||||
cn: str = "kiwi-vpn-ca"
|
cn: str = "kiwi-vpn-ca"
|
||||||
) -> crypto.X509:
|
) -> crypto.X509:
|
||||||
cert = self.__build_cert(
|
return self.__build_cert(
|
||||||
Path("ca.crt"),
|
Path("ca.crt"),
|
||||||
|
|
||||||
f"--passout=pass:{self.__ca_password}",
|
f"--passout=pass:{self.__ca_password}",
|
||||||
|
|
@ -79,9 +79,6 @@ class EasyRSA:
|
||||||
"build-ca",
|
"build-ca",
|
||||||
)
|
)
|
||||||
|
|
||||||
self.__easyrsa("gen-dh")
|
|
||||||
return cert
|
|
||||||
|
|
||||||
def issue(
|
def issue(
|
||||||
self,
|
self,
|
||||||
days: int = 365 * 50,
|
days: int = 365 * 50,
|
||||||
|
|
|
||||||
|
|
@ -15,12 +15,13 @@ from fastapi import FastAPI
|
||||||
from .config import Config, Settings
|
from .config import Config, Settings
|
||||||
from .db import Connection
|
from .db import Connection
|
||||||
from .db.schemas import User
|
from .db.schemas import User
|
||||||
from .routers import main_router
|
from .routers import admin, dn, user
|
||||||
|
|
||||||
settings = Settings.get()
|
settings = Settings.get()
|
||||||
|
|
||||||
|
app = FastAPI()
|
||||||
|
|
||||||
app = FastAPI(
|
api = FastAPI(
|
||||||
title="kiwi-vpn API",
|
title="kiwi-vpn API",
|
||||||
description="This API enables the `kiwi-vpn` service.",
|
description="This API enables the `kiwi-vpn` service.",
|
||||||
contact={
|
contact={
|
||||||
|
|
@ -36,7 +37,11 @@ app = FastAPI(
|
||||||
redoc_url=settings.redoc_url if not settings.production_mode else None,
|
redoc_url=settings.redoc_url if not settings.production_mode else None,
|
||||||
)
|
)
|
||||||
|
|
||||||
app.include_router(main_router)
|
api.include_router(admin.router)
|
||||||
|
api.include_router(user.router)
|
||||||
|
api.include_router(dn.router)
|
||||||
|
|
||||||
|
app.mount("/api", api)
|
||||||
|
|
||||||
|
|
||||||
@app.on_event("startup")
|
@app.on_event("startup")
|
||||||
|
|
|
||||||
|
|
@ -1,10 +0,0 @@
|
||||||
from fastapi import APIRouter
|
|
||||||
|
|
||||||
from . import admin, user
|
|
||||||
|
|
||||||
main_router = APIRouter(prefix="/api/v1")
|
|
||||||
|
|
||||||
main_router.include_router(admin.router)
|
|
||||||
main_router.include_router(user.router)
|
|
||||||
|
|
||||||
__all__ = ["main_router"]
|
|
||||||
|
|
@ -10,7 +10,7 @@ from ..db import Connection
|
||||||
from ..db.schemas import User, UserCapability, UserCreate
|
from ..db.schemas import User, UserCapability, UserCreate
|
||||||
from ._common import Responses, get_current_user
|
from ._common import Responses, get_current_user
|
||||||
|
|
||||||
router = APIRouter(prefix="/admin", tags=["admin"])
|
router = APIRouter(prefix="/admin")
|
||||||
|
|
||||||
|
|
||||||
@router.put(
|
@router.put(
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ from ..db import Connection
|
||||||
from ..db.schemas import User, UserCapability, UserCreate
|
from ..db.schemas import User, UserCapability, UserCreate
|
||||||
from ._common import Responses, get_current_user, get_current_user_if_admin
|
from ._common import Responses, get_current_user, get_current_user_if_admin
|
||||||
|
|
||||||
router = APIRouter(prefix="/user", tags=["user"])
|
router = APIRouter(prefix="/user")
|
||||||
|
|
||||||
|
|
||||||
class Token(BaseModel):
|
class Token(BaseModel):
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue