def import_settings( db: Session = Depends(get_db), upload: UploadFile = File(...), Authorize: AuthJWT = Depends(), ): auth_check(Authorize) return scrud.import_settings(db=db, upload=upload)
def set_template_variables( new_variables: List[schemas.TemplateVariables], db: Session = Depends(get_db), Authorize: AuthJWT = Depends(), ): auth_check(Authorize) return crud.set_template_variables(new_variables=new_variables, db=db)
def update_user( user: schemas.UserCreate, db: Session = Depends(get_db), Authorize: AuthJWT = Depends(), ): auth_check(Authorize) current_user = Authorize.get_jwt_subject() return crud.update_user(db=db, user=user, current_user=current_user)
def get_api_keys(db: Session = Depends(get_db), Authorize: AuthJWT = Depends()): auth_check(Authorize) current_user = Authorize.get_jwt_subject() if current_user is not None: user = crud.get_user_by_name(db=db, username=current_user) else: raise HTTPException(status_code=401, detail="Not logged in.") return crud.get_keys(user, db)
def create_user( user: schemas.UserCreate, Authorize: AuthJWT = Depends(), db: Session = Depends(get_db), ): auth_check(Authorize) db_user = crud.get_user_by_name(db, username=user.username) if db_user: raise HTTPException(status_code=400, detail="Username already in use") return crud.create_user(db=db, user=user)
def add_template( template: schemas.TemplateBase, db: Session = Depends(get_db), Authorize: AuthJWT = Depends(), ): auth_check(Authorize) existing_template = crud.get_template(db=db, url=template.url) if existing_template: raise HTTPException(status_code=400, detail="Template already in Database.") return crud.add_template(db=db, template=template)
def create_api_key( key: schemas.GenerateAPIKEY, db: Session = Depends(get_db), Authorize: AuthJWT = Depends(), ): name = key.key_name auth_check(Authorize) current_user = Authorize.get_jwt_subject() if current_user is not None: user = crud.get_user_by_name(db=db, username=current_user) else: raise HTTPException(status_code=401, detail="Not logged in.") return crud.create_key(name, user, Authorize, db)
def get_user(db: Session = Depends(get_db), Authorize: AuthJWT = Depends()): auth_check(Authorize) auth_setting = str(settings.DISABLE_AUTH) if auth_setting.lower() == "true": current_user = schemas.User current_user.authDisabled = True current_user.id = 0 current_user.username = "******" current_user.is_active = True current_user.is_superuser = True return current_user else: Authorize.jwt_required() current_user = Authorize.get_jwt_subject() if current_user is not None: return crud.get_user_by_name(db=db, username=current_user) else: raise HTTPException(status_code=401, detail="Not logged in.")
def update_self(background_tasks: BackgroundTasks, Authorize: AuthJWT = Depends()): auth_check(Authorize) return _update_self(background_tasks)
async def sse_stats(app_name: str, request: Request, Authorize: AuthJWT = Depends()): auth_check(Authorize) stat_generator = actions.stat_generator(request, app_name) return EventSourceResponse(stat_generator)
def deploy_app(template: schemas.DeployForm, Authorize: AuthJWT = Depends()): auth_check(Authorize) return actions.deploy_app(template=template)
def get_support_bundle(app_name, Authorize: AuthJWT = Depends()): auth_check(Authorize) return actions.generate_support_bundle(app_name)
def get_volumes(Authorize: AuthJWT = Depends()): auth_check(Authorize) return resources.get_volumes()
def delete_image(image_id, Authorize: AuthJWT = Depends()): auth_check(Authorize) return resources.delete_image(image_id)
def pull_image(image_id, Authorize: AuthJWT = Depends()): auth_check(Authorize) return resources.update_image(image_id)
async def all_sse_stats(request: Request, Authorize: AuthJWT = Depends()): auth_check(Authorize) stat_generator = actions.all_stat_generator(request) return EventSourceResponse(stat_generator)
def get_container_processes(app_name, Authorize: AuthJWT = Depends()): auth_check(Authorize) return actions.get_app_processes(app_name=app_name)
def write_volume(name: VolumeWrite, Authorize: AuthJWT = Depends()): auth_check(Authorize) return resources.write_volume(name.name)
def container_actions(app_name, action, Authorize: AuthJWT = Depends()): auth_check(Authorize) return actions.app_action(app_name, action)
def delete_volume(volume_name, Authorize: AuthJWT = Depends()): auth_check(Authorize) return resources.delete_volume(volume_name)
async def logs(app_name: str, request: Request, Authorize: AuthJWT = Depends()): auth_check(Authorize) log_generator = actions.log_generator(request, app_name) return EventSourceResponse(log_generator)
def get_networks(Authorize: AuthJWT = Depends()): auth_check(Authorize) return resources.get_networks()
def read_template_variables(db: Session = Depends(get_db), Authorize: AuthJWT = Depends()): auth_check(Authorize) return crud.read_template_variables(db=db)
def write_network(form: NetworkWrite, Authorize: AuthJWT = Depends()): auth_check(Authorize) return resources.write_network(form)
def export_settings(db: Session = Depends(get_db), Authorize: AuthJWT = Depends()): auth_check(Authorize) return scrud.export_settings(db=db)
def index(Authorize: AuthJWT = Depends()): auth_check(Authorize) return actions.get_apps()
def prune_resources(resource: str, Authorize: AuthJWT = Depends()): auth_check(Authorize) return resources.prune_resources(resource)
def check_app_updates(app_name, Authorize: AuthJWT = Depends()): auth_check(Authorize) return actions.check_app_update(app_name)
def _check_self_update(Authorize: AuthJWT = Depends()): auth_check(Authorize) return check_self_update()
def update_container(app_name, Authorize: AuthJWT = Depends()): auth_check(Authorize) return actions.app_update(app_name)