fleet/website/api/models/RenderProofOfValue.js
Eric f76a9976d8
Website: Update signup flow and Fleet Premium trial (#34820)
Changes:
- Updated the "Try it now" button on the website's header navigation, it
will now open a signup/login modal on every page (excluding the
dedicated /register and /login pages)
- Updated the website to assign Fleet Premium instances hosted on Render
to eligible users. All other users will be given a 30-day Fleet Premium
trial license key to use with their deployment method of choice.
- Added a script that creates and manages a pool of Render instances.
- Added a new database model: `RenderProofOfValue`
- Added four new email templates
- Updated primary button colors to match the core product.
- Removed the organization requirement for new users signing up.
- Added a new component: `<signup-modal>`
- Added a new attribute to the User model: `fleetPremiumTrialType`
2025-10-27 13:33:47 -05:00

84 lines
2.4 KiB
JavaScript
Vendored

/**
* RenderProofOfValue.js
*
* @description :: A model definition represents a database table/collection.
* @docs :: https://sailsjs.com/docs/concepts/models-and-orm/models
*/
module.exports = {
attributes: {
// ╔═╗╦═╗╦╔╦╗╦╔╦╗╦╦ ╦╔═╗╔═╗
// ╠═╝╠╦╝║║║║║ ║ ║╚╗╔╝║╣ ╚═╗
// ╩ ╩╚═╩╩ ╩╩ ╩ ╩ ╚╝ ╚═╝╚═╝
status: {
type: 'string',
description: '',
isIn: [
'record created',
'provisioning',
'ready for assignment',
'in use',
'expired',
],
defaultsTo: 'record created',
},
slug: {
type: 'string',
description: 'The unique slug generated for this Render instance',
example: 'bumbling-bulbasaur',
unique: true,
required: true
},
instanceUrl: {
type: 'string',
description: 'The full URL of this Fleet instance',
example: 'https://bumbling-bumblesaur.onrender.com',
},
renderProjectId: {
type: 'string',
description: 'The ID of the Render project this Fleet instance belongs to.'
},
renderMySqlServiceId: {
type: 'string',
description: 'The ID of the MySQL service this Render POV is configured to use'
},
renderRedisServiceId: {
type: 'string',
description: 'The ID of the Redis service this Render POV is configured to use'
},
renderFleetServiceId: {
type: 'string',
description: 'The ID of the Fleet service this Render POV is configured to use'
},
renderTrialEndsAt: {
type: 'number',
description: 'A JS timestamp representing when the Render isntance associated with this record will be deleted.',
},
// ╔═╗╔╦╗╔╗ ╔═╗╔╦╗╔═╗
// ║╣ ║║║╠╩╗║╣ ║║╚═╗
// ╚═╝╩ ╩╚═╝╚═╝═╩╝╚═╝
// ╔═╗╔═╗╔═╗╔═╗╔═╗╦╔═╗╔╦╗╦╔═╗╔╗╔╔═╗
// ╠═╣╚═╗╚═╗║ ║║ ║╠═╣ ║ ║║ ║║║║╚═╗
// ╩ ╩╚═╝╚═╝╚═╝╚═╝╩╩ ╩ ╩ ╩╚═╝╝╚╝╚═╝
user: {
model: 'User',
description: 'The ID of the render POV\'s user. This is not always set because we create a pool oif Render isntances.'
}
},
};