Merge pull request #1370 from appwrite/fix-roles-self-hosted

default scopes for self-hosted
This commit is contained in:
Torsten Dittmann
2024-09-25 12:03:33 +02:00
committed by GitHub
3 changed files with 65 additions and 4 deletions
+59
View File
@@ -61,6 +61,65 @@ export enum Dependencies {
MESSAGING_TOPIC_SUBSCRIBERS = 'dependency:messaging_topic_subscribers'
}
export const defaultScopes: string[] = [
'global',
'public',
'home',
'console',
'graphql',
'sessions.write',
'account',
'teams.read',
'teams.write',
'documents.read',
'documents.write',
'files.read',
'files.write',
'projects.read',
'projects.write',
'locale.read',
'avatars.read',
'execution.read',
'execution.write',
'targets.read',
'targets.write',
'subscribers.write',
'subscribers.read',
'assistant.read',
'users.read',
'users.write',
'databases.read',
'databases.write',
'collections.read',
'collections.write',
'buckets.read',
'buckets.write',
'functions.read',
'functions.write',
'platforms.read',
'platforms.write',
'keys.read',
'keys.write',
'webhooks.read',
'webhooks.write',
'rules.read',
'rules.write',
'migrations.read',
'migrations.write',
'vcs.read',
'vcs.write',
'providers.read',
'providers.write',
'messages.read',
'messages.write',
'topics.read',
'topics.write',
'billing.read',
'billing.write'
];
export const defaultRoles: string[] = ['owner'];
export const scopes: {
scope: string;
description: string;
@@ -11,13 +11,14 @@ import ProjectsAtRisk from '$lib/components/billing/alerts/projectsAtRisk.svelte
import { get } from 'svelte/store';
import { preferences } from '$lib/stores/preferences';
import type { Organization } from '$lib/stores/organization';
import { defaultRoles, defaultScopes } from '$lib/constants';
export const load: LayoutLoad = async ({ params, depends }) => {
depends(Dependencies.ORGANIZATION);
depends(Dependencies.MEMBERS);
depends(Dependencies.PAYMENT_METHODS);
let roles = [];
let scopes = [];
let roles = isCloud ? [] : defaultScopes;
let scopes = isCloud ? [] : defaultRoles;
try {
if (isCloud) {
@@ -6,6 +6,7 @@ import { preferences } from '$lib/stores/preferences';
import { failedInvoice } from '$lib/stores/billing';
import { isCloud } from '$lib/system';
import type { Organization } from '$lib/stores/organization';
import { defaultRoles, defaultScopes } from '$lib/constants';
export const load: LayoutLoad = async ({ params, depends }) => {
depends(Dependencies.PROJECT);
@@ -16,8 +17,8 @@ export const load: LayoutLoad = async ({ params, depends }) => {
const newPrefs = { ...prefs, organization: project.teamId };
sdk.forConsole.account.updatePrefs(newPrefs);
preferences.loadTeamPrefs(project.teamId);
let roles = [];
let scopes = [];
let roles = isCloud ? [] : defaultScopes;
let scopes = isCloud ? [] : defaultRoles;
if (isCloud) {
const res = await sdk.forConsole.billing.getRoles(project.teamId);
roles = res.roles;