Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { AWS_REGIONS, FLY_REGIONS } from 'shared-data'
export function getAvailableRegions(cloudProvider: CloudProvider): Region {
switch (cloudProvider) {
case 'AWS':
case 'AWS_NEW':
case 'AWS_K8S':
return AWS_REGIONS
case 'FLY':
return FLY_REGIONS
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import { useProjectPauseMutation } from 'data/projects/project-pause-mutation'
import { setProjectStatus } from 'data/projects/projects-query'
import { useCheckPermissions } from 'hooks/misc/useCheckPermissions'
import { useSelectedOrganization } from 'hooks/misc/useSelectedOrganization'
import { useIsAwsNew } from 'hooks/misc/useSelectedProject'
import { useIsAwsK8s } from 'hooks/misc/useSelectedProject'
import { PROJECT_STATUS } from 'lib/constants'
import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal'

Expand All @@ -33,9 +33,9 @@ const PauseProjectButton = () => {
'queue_jobs.projects.pause'
)

const isAwsNew = useIsAwsNew()
const isAwsK8s = useIsAwsK8s()
const isFreePlan = organization?.plan.id === 'free'
const isPaidAndNotAwsNew = !isFreePlan && !isAwsNew
const isPaidAndNotAwsK8s = !isFreePlan && !isAwsK8s

const { mutate: pauseProject, isLoading: isPausing } = useProjectPauseMutation({
onSuccess: (_, variables) => {
Expand All @@ -53,7 +53,7 @@ const PauseProjectButton = () => {
}

const buttonDisabled =
isPaidAndNotAwsNew || project === undefined || isPaused || !canPauseProject || !isProjectActive
isPaidAndNotAwsK8s || project === undefined || isPaused || !canPauseProject || !isProjectActive

return (
<>
Expand All @@ -72,7 +72,7 @@ const PauseProjectButton = () => {
? 'You need additional permissions to pause this project'
: !isProjectActive
? 'Unable to pause project as project is not active'
: isPaidAndNotAwsNew
: isPaidAndNotAwsK8s
? 'Projects on a paid plan will always be running'
: undefined,
},
Expand Down
36 changes: 18 additions & 18 deletions apps/studio/data/projects/new-project.constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,142 +31,142 @@ export const instanceSizeSpecs: Record<
cpu: '2-core',
priceHourly: 0.01344,
priceMonthly: 10,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id, PROVIDERS.FLY.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id, PROVIDERS.FLY.id],
},
small: {
label: 'Small',
ram: '2 GB',
cpu: '2-core',
priceHourly: 0.0206,
priceMonthly: 15,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id, PROVIDERS.FLY.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id, PROVIDERS.FLY.id],
},
medium: {
label: 'Medium',
ram: '4 GB',
cpu: '2-core',
priceHourly: 0.0822,
priceMonthly: 60,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id, PROVIDERS.FLY.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id, PROVIDERS.FLY.id],
},
large: {
label: 'Large',
ram: '8 GB',
cpu: '2-core',
priceHourly: 0.1517,
priceMonthly: 110,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id, PROVIDERS.FLY.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id, PROVIDERS.FLY.id],
},
xlarge: {
label: 'XL',
ram: '16 GB',
cpu: '4-core',
priceHourly: 0.2877,
priceMonthly: 210,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id, PROVIDERS.FLY.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id, PROVIDERS.FLY.id],
},
'2xlarge': {
label: '2XL',
ram: '32 GB',
cpu: '8-core',
priceHourly: 0.562,
priceMonthly: 410,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id, PROVIDERS.FLY.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id, PROVIDERS.FLY.id],
},
'4xlarge': {
label: '4XL',
ram: '64 GB',
cpu: '16-core',
priceHourly: 1.32,
priceMonthly: 960,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id, PROVIDERS.FLY.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id, PROVIDERS.FLY.id],
},
'8xlarge': {
label: '8XL',
ram: '128 GB',
cpu: '32-core',
priceHourly: 2.562,
priceMonthly: 1870,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id],
},
'12xlarge': {
label: '12XL',
ram: '192 GB',
cpu: '48-core',
priceHourly: 3.836,
priceMonthly: 2800,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id],
},
'16xlarge': {
label: '16XL',
ram: '256 GB',
cpu: '64-core',
priceHourly: 5.12,
priceMonthly: 3730,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id],
},
'24xlarge': {
label: '24XL',
ram: '384 GB',
cpu: '96-core',
priceHourly: 9.73,
priceMonthly: 7100,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id],
},
'24xlarge_optimized_cpu': {
label: '24XL - Optimized CPU',
ram: '192 GB',
cpu: '96-core',
priceHourly: 8.9,
priceMonthly: 6500,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id],
},
'24xlarge_optimized_memory': {
label: '24XL - Optimized Memory',
ram: '768 GB',
cpu: '96-core',
priceHourly: 13.84,
priceMonthly: 10100,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id],
},
'24xlarge_high_memory': {
label: '24XL - High Memory',
ram: '1536 GB',
cpu: '96-core',
priceHourly: 21.91,
priceMonthly: 16000,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id],
},
'48xlarge': {
label: '48XL',
ram: '768 GB',
cpu: '192-core',
priceHourly: 19.47,
priceMonthly: 14200,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id],
},
'48xlarge_optimized_cpu': {
label: '48XL - Optimized CPU',
ram: '384 GB',
cpu: '192-core',
priceHourly: 17.8,
priceMonthly: 13000,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id],
},
'48xlarge_optimized_memory': {
label: '48XL - Optimized Memory',
ram: '1536 GB',
cpu: '192-core',
priceHourly: 27.68,
priceMonthly: 20200,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id],
},
'48xlarge_high_memory': {
label: '48XL - High Memory',
ram: '3072 GB',
cpu: '192-core',
priceHourly: 43.84,
priceMonthly: 32000,
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_NEW.id],
cloud_providers: [PROVIDERS.AWS.id, PROVIDERS.AWS_K8S.id],
},
}
8 changes: 4 additions & 4 deletions apps/studio/hooks/misc/useSelectedProject.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,11 @@ export function useProjectByRef(
}, [project, projects, ref])
}

export const useIsAwsNew = () => {
export const useIsAwsK8s = () => {
const project = useSelectedProject()
const isAwsNew =
project?.cloud_provider !== PROVIDERS.AWS.id && project?.cloud_provider !== PROVIDERS.FLY.id
return isAwsNew
const isAwsK8s = project?.cloud_provider === PROVIDERS.AWS_K8S.id

return isAwsK8s
}

export const useIsOrioleDb = () => {
Expand Down
4 changes: 2 additions & 2 deletions apps/studio/lib/constants/infrastructure.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@ export const PROVIDERS = {
default_region: AWS_REGIONS_DEFAULT,
regions: { ...AWS_REGIONS },
},
AWS_NEW: {
id: 'AWS_NEW',
AWS_K8S: {
id: 'AWS_K8S',
name: 'AWS (Revamped)',
DEFAULT_SSH_KEY: 'supabase-app-instance',
default_region: AWS_REGIONS_DEFAULT,
Expand Down
2 changes: 1 addition & 1 deletion packages/shared-data/regions.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
export type CloudProvider = 'FLY' | 'AWS' | 'AWS_NEW'
export type CloudProvider = 'FLY' | 'AWS' | 'AWS_K8S'
export type Region = typeof AWS_REGIONS | typeof FLY_REGIONS

export const AWS_REGIONS = {
Expand Down
Loading