Merge branch 'main' of https://github.com/ToolJet/ToolJet into appbuilder-1.6
2
.version
|
|
@ -1 +1 @@
|
|||
2.32.3
|
||||
2.33.3
|
||||
|
|
|
|||
17
README.md
|
|
@ -10,7 +10,7 @@ ToolJet is an **open-source low-code framework** to build and deploy internal to
|
|||

|
||||

|
||||

|
||||
[](https://github.com/ToolJet/ToolJet)
|
||||
[](https://github.com/ToolJet/ToolJet)
|
||||
[](https://twitter.com/ToolJet)
|
||||
|
||||
<p align="center">
|
||||
|
|
@ -23,13 +23,13 @@ ToolJet is an **open-source low-code framework** to build and deploy internal to
|
|||
|
||||
## All features
|
||||
|
||||
- **Visual App Builder:** 40+ built-in responsive components, including Tables, Charts, Lists, Forms, and Progress Bars.
|
||||
- **Visual App Builder:** 45+ built-in responsive components, including Tables, Charts, Lists, Forms, and Progress Bars.
|
||||
- **ToolJet Database:** Built-in no-code database.
|
||||
- **Multi-Page:** Build an application with multiple pages.
|
||||
- **Multiplayer editing:** Allows simultaneous app building by multiple developers.
|
||||
- **40+ data sources:** Integrate with external databases, cloud storage, and APIs.
|
||||
- **50+ data sources:** Integrate with external databases, cloud storage, and APIs.
|
||||
- **Desktop & mobile:** Customize layout widths to fit various screen sizes.
|
||||
- **Self-host:** Supports Docker, Kubernetes, Heroku, AWS EC2, Google Cloud Run, and more.
|
||||
- **Self-host:** Supports Docker, Kubernetes, AWS EC2, Google Cloud Run, and more.
|
||||
- **Collaborate:** Add comments anywhere on the canvas and tag your team members.
|
||||
- **Extend with plugins:** Use our [command-line tool](https://www.npmjs.com/package/@tooljet/cli) to easily bootstrap new connectors.
|
||||
- **Version control:** Manage multiple application versions with a structured release cycle.
|
||||
|
|
@ -48,10 +48,9 @@ ToolJet is an **open-source low-code framework** to build and deploy internal to
|
|||
## Quickstart
|
||||
The easiest way to get started with ToolJet is by creating a [ToolJet Cloud](https://tooljet.com) account. ToolJet Cloud offers a hosted solution of ToolJet. If you want to self-host ToolJet, kindly proceed to [deployment documentation](https://docs.tooljet.com/docs/setup/).
|
||||
|
||||
You can deploy ToolJet on Heroku and DigitalOcean using one-click-deployment.
|
||||
You can deploy ToolJet on DigitalOcean using one-click-deployment.
|
||||
|
||||
<p align="center">
|
||||
<a href="https://heroku.com/deploy?template=https://github.com/tooljet/tooljet/tree/main"><img src="https://www.herokucdn.com/deploy/button.svg" alt="Deploy to Heroku" height=32></a>
|
||||
<a href="https://cloud.digitalocean.com/apps/new?repo=https://github.com/ToolJet/ToolJet/tree/main"><img src="https://www.deploytodo.com/do-btn-blue.svg" alt="Deploy to DigitalOcean" height=32></a>
|
||||
</p>
|
||||
|
||||
|
|
@ -59,10 +58,11 @@ You can deploy ToolJet on Heroku and DigitalOcean using one-click-deployment.
|
|||
Want to give ToolJet a quick spin on your local machine? You can run the following command from your terminal to have ToolJet up and running right away.
|
||||
|
||||
```bash
|
||||
docker run \
|
||||
docker run -d \
|
||||
--name tooljet \
|
||||
--restart unless-stopped \
|
||||
-p 80:80 \
|
||||
--platform linux/amd64 \
|
||||
-v tooljet_data:/var/lib/postgresql/13/main \
|
||||
tooljet/try:latest
|
||||
```
|
||||
|
|
@ -81,13 +81,12 @@ Documentation is available at https://docs.tooljet.com.
|
|||
- [Component Reference](https://docs.tooljet.com/docs/widgets/button)
|
||||
|
||||
## Self-hosted
|
||||
You can use ToolJet Cloud for a fully managed solution. If you want to self-host ToolJet, we have guides on deploying ToolJet on Kubernetes, AWS EC2, Docker, Heroku, and more.
|
||||
You can use ToolJet Cloud for a fully managed solution. If you want to self-host ToolJet, we have guides on deploying ToolJet on Kubernetes, AWS EC2, Docker, and more.
|
||||
|
||||
| Provider | Documentation |
|
||||
| :------------- | :------------- |
|
||||
| Digital Ocean | [Link](https://docs.tooljet.com/docs/setup/digitalocean) |
|
||||
| Docker | [Link](https://docs.tooljet.com/docs/setup/docker) |
|
||||
| Heroku | [Link](https://docs.tooljet.com/docs/setup/heroku) |
|
||||
| AWS EC2 | [Link](https://docs.tooljet.com/docs/setup/ec2) |
|
||||
| AWS ECS | [Link](https://docs.tooljet.com/docs/setup/ecs) |
|
||||
| OpenShift | [Link](https://docs.tooljet.com/docs/setup/openshift) |
|
||||
|
|
|
|||
|
|
@ -76,8 +76,8 @@ module.exports = defineConfig({
|
|||
experimentalRunAllSpecs: true,
|
||||
baseUrl: "http://localhost:8082",
|
||||
specPattern: [
|
||||
"cypress/e2e/happypath/appbuilder/commonTestcases/**/*.cy.js",
|
||||
"cypress/e2e/happypath/appbuilder/ceTestcases/**/*.cy.js"
|
||||
"cypress/e2e/happyPath/appbuilder/commonTestcases/**/*.cy.js",
|
||||
"cypress/e2e/happyPath/appbuilder/ceTestcases/**/*.cy.js"
|
||||
],
|
||||
numTestsKeptInMemory: 1,
|
||||
redirectionLimit: 7,
|
||||
|
|
|
|||
|
|
@ -76,8 +76,7 @@ module.exports = defineConfig({
|
|||
experimentalRunAllSpecs: true,
|
||||
baseUrl: "http://localhost:8082",
|
||||
specPattern: [
|
||||
"cypress/e2e/happypath/marketplace/commonTestcases/**/*.cy.js",
|
||||
"cypress/e2e/happypath/marketplace/ceTestcases/**/*.cy.js"
|
||||
"cypress/e2e/happyPath/marketplace/commonTestcases/**/*.cy.js",
|
||||
],
|
||||
numTestsKeptInMemory: 1,
|
||||
redirectionLimit: 7,
|
||||
|
|
|
|||
|
|
@ -76,8 +76,9 @@ module.exports = defineConfig({
|
|||
experimentalRunAllSpecs: true,
|
||||
baseUrl: "http://localhost:8082",
|
||||
specPattern: [
|
||||
"cypress/e2e/happypath/platform/commonTestcases/**/*.cy.js",
|
||||
"cypress/e2e/happypath/platform/ceTestcases/**/*.cy.js"
|
||||
"cypress/e2e/happyPath/platform/ceTestcases/appSlug.cy.js",
|
||||
"cypress/e2e/happyPath/platform/commonTestcases/**/*.cy.js",
|
||||
"cypress/e2e/happyPath/platform/ceTestcases/**/!(*appSlug).cy.js"
|
||||
],
|
||||
numTestsKeptInMemory: 1,
|
||||
redirectionLimit: 15,
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ export const commonSelectors = {
|
|||
workspaceSettings: '[data-cy="workspace-settings"]',
|
||||
manageUsersOption: '[data-cy="users-list-item"]',
|
||||
manageGroupsOption: '[data-cy="groups-list-item"]',
|
||||
manageSSOOption: '[data-cy="sso-list-item"]',
|
||||
manageSSOOption: '[data-cy="workspace-login-list-item"]',
|
||||
workspaceVariableOption: '[data-cy="workspace-variables-list-item"]',
|
||||
clearFilterButton: '[data-cy="clear-filter-button"]',
|
||||
userStatusSelect: '[data-cy="user-status-select-continer"]',
|
||||
|
|
@ -257,6 +257,7 @@ export const commonSelectors = {
|
|||
},
|
||||
defaultModalTitle: '[data-cy="modal-title"]',
|
||||
workspaceConstantsIcon: '[data-cy="icon-workspace-constants"]',
|
||||
confirmationButton: '[data-cy="confirmation-button"]',
|
||||
};
|
||||
|
||||
export const commonWidgetSelector = {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
export const ssoSelector = {
|
||||
pagetitle: "[data-cy=manage-sso-page-title]",
|
||||
generalSettingsElements: {
|
||||
generalSettings: '[data-cy="general-settings-list-item"]',
|
||||
workspaceLoginPage: {
|
||||
enableSignupLabel: '[data-cy="enable-sign-up-label"]',
|
||||
helperText: "[data-cy=enable-sign-up-helper-text]",
|
||||
allowDefaultSSOLabel: '[data-cy="allow-default-sso-label"]',
|
||||
|
|
@ -10,16 +9,22 @@ export const ssoSelector = {
|
|||
allowedDomainHelperText: '[data-cy="allowed-domain-helper-text"]',
|
||||
workspaceLoginUrl: '[data-cy="workspace-login-url-label"]',
|
||||
workspaceLoginHelpText: '[data-cy="workspace-login-help-text"]',
|
||||
ssoHeader: '[data-cy="sso-header"]',
|
||||
instanceSSOHelperText: '[data-cy="instance-sso-helper-text"]',
|
||||
googleLabel: '[data-cy="google-label"]',
|
||||
githubLabel: '[data-cy="github-label"]',
|
||||
defaultSSO: '[data-cy="instance-sso-card"]',
|
||||
},
|
||||
cardTitle: "[data-cy=card-title]",
|
||||
enableSignUpToggle: '[data-cy="enable-sign-up-toggle"]',
|
||||
allowDefaultSSOToggle: '[data-cy="allow-default-sso-toggle"]',
|
||||
allowDefaultSSOToggle:
|
||||
'[style="padding-left: 0px; margin-bottom: 1px;"] > .switch > .slider',
|
||||
defaultSSOImage: '[data-cy="default-sso-status-image"]',
|
||||
allowedDomainInput: "[data-cy=allowed-domain-input]",
|
||||
allowedDomainInput: '[data-cy="allowed-domains"]',
|
||||
workspaceLoginUrl: '[data-cy="workspace-login-url"]',
|
||||
cancelButton: "[data-cy=cancel-button]",
|
||||
saveButton: "[data-cy=save-button]",
|
||||
google: '[data-cy="google-list-item"]',
|
||||
google: '[data-cy="google-sso-card"]',
|
||||
googleEnableToggle: '[data-cy="google-enable-toggle"]',
|
||||
statusLabel: "[data-cy=status-label]",
|
||||
clientIdLabel: "[data-cy=client-id-label]",
|
||||
|
|
@ -29,9 +34,9 @@ export const ssoSelector = {
|
|||
googleTile: '[data-cy="google-sign-in-text"]',
|
||||
googleIcon: "[data-cy=google-sso-icon]",
|
||||
googleSSOText: "[data-cy=google-sso-text]",
|
||||
git: '[data-cy="github-list-item"]',
|
||||
git: '[data-cy="github-sso-card"]',
|
||||
gitEnableToggle: '[data-cy="github-toggle-input"]',
|
||||
githubLabel: '[data-cy="github-toggle-label"]',
|
||||
githubLabel: '[data-cy="github-label"]',
|
||||
clientSecretLabel: "[data-cy=client-secret-label]",
|
||||
encriptedLabel: "[data-cy=encripted-label]",
|
||||
clientSecretInput: "[data-cy=client-secret-input]",
|
||||
|
|
@ -52,4 +57,6 @@ export const ssoSelector = {
|
|||
passwordLoginToggleLbale: '[data-cy="label-password-login"]',
|
||||
alertText: '[data-cy="alert-text"]',
|
||||
disablePasswordHelperText: '[data-cy="disable-password-helper-text"]',
|
||||
defaultGoogle: '[data-cy="dropdown-options-google"]',
|
||||
defaultGithub: '[data-cy="dropdown-options-git"]',
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
export const ssoText = {
|
||||
pagetitle: " SSO",
|
||||
generalSettingsElements: {
|
||||
generalSettings: "General Settings",
|
||||
pagetitle: " Workspace login",
|
||||
workspaceLoginPage: {
|
||||
enableSignupLabel: "Enable Signup",
|
||||
helperText: "New account will be created for user's first time SSO sign in",
|
||||
allowDefaultSSOLabel: "Allow default SSO",
|
||||
|
|
@ -12,34 +11,39 @@ export const ssoText = {
|
|||
"Support multiple domains. Enter domain names separated by comma. example: tooljet.com,tooljet.io,yourorganization.com",
|
||||
workspaceLoginUrl: "Login URL",
|
||||
workspaceLoginHelpText: "Use this URL to login directly to this workspace",
|
||||
ssoHeader: "SSO",
|
||||
instanceSSOHelperText: "Display default SSO for workspace URL login",
|
||||
googleLabel: "Google",
|
||||
githubLabel: "GitHub",
|
||||
defaultSSO: "Default SSO",
|
||||
},
|
||||
cancelButton: "Cancel",
|
||||
saveButton: "Save changes",
|
||||
allowedDomain: "tooljet.io,gmail.com",
|
||||
ssoToast: "updated sso configurations",
|
||||
ssoToast: "Organization settings have been updated",
|
||||
ssoToast2: "updated SSO configurations",
|
||||
googleTitle: "Google",
|
||||
enabledLabel: "Enabled",
|
||||
googleEnabledToast: "Enabled Google SSO",
|
||||
googleSSOToast: "Saved Google SSO configurations",
|
||||
disabledLabel: "Disabled",
|
||||
googleDisableToast: "Disabled Google SSO",
|
||||
googleSSOText: "Sign in with Google",
|
||||
clientIdLabel: "Client Id",
|
||||
clientIdLabel: "Client ID",
|
||||
redirectUrlLabel: "Redirect URL",
|
||||
clientId: "24567098-mklj8t20za1smb2if.apps.googleusercontent.com",
|
||||
testClientId: "12345-client-id-.apps.googleusercontent.com",
|
||||
gitTitle: "GitHub",
|
||||
clientSecretLabel: "Client Secret",
|
||||
clientSecretLabel: "Client secret",
|
||||
encriptedLabel: "Encrypted",
|
||||
gitEnabledToast: "Enabled GitHub SSO",
|
||||
gitDisabledToast: "Disabled GitHub SSO",
|
||||
gitSSOToast: "Saved Git SSO configurations",
|
||||
gitSignInText: "Sign in with GitHub",
|
||||
passwordTitle: "Password Login",
|
||||
passwordEnabledToast: "Enabled Password login",
|
||||
passwordDisabledToast: "Disabled Password login",
|
||||
passwordDisabledToast: "Password login disabled successfully!",
|
||||
passwordDisableWarning:
|
||||
"Users won’t be able to login via username and password if password login is disabled. Please make sure that you have setup other authentication methods before disabling password login, do you want to continue?",
|
||||
hostNameLabel: "Host Name",
|
||||
"Disable password login only if you have configured SSO or else you will get locked out.",
|
||||
hostNameLabel: "Host name",
|
||||
hostNameHelpText: "Required if GitHub is self hosted",
|
||||
hostName: "Tooljet",
|
||||
signInHeader: "Sign in",
|
||||
|
|
@ -51,8 +55,8 @@ export const ssoText = {
|
|||
gitSignUpText: "Sign up with GitHub",
|
||||
gitUserStatusToast:
|
||||
"GitHub login failed - User does not exist in the workspace",
|
||||
passwordLoginToggleLbale: "Password login ",
|
||||
passwordLoginToggleLbale: "Password login",
|
||||
alertText: "Danger zone",
|
||||
disablePasswordHelperText:
|
||||
"Disable password login only if your SSO is configured otherwise you will get logged out.",
|
||||
"Disable password login only if your SSO is configured otherwise you will get locked out",
|
||||
};
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ describe("Data sources MySql", () => {
|
|||
fillDataSourceTextField(
|
||||
postgreSqlText.labelPort,
|
||||
postgreSqlText.placeholderEnterPort,
|
||||
"3306"
|
||||
"3318"
|
||||
);
|
||||
fillDataSourceTextField(
|
||||
postgreSqlText.labelDbName,
|
||||
|
|
@ -141,7 +141,7 @@ describe("Data sources MySql", () => {
|
|||
fillDataSourceTextField(
|
||||
postgreSqlText.labelDbName,
|
||||
postgreSqlText.placeholderNameOfDB,
|
||||
"testdv"
|
||||
"test_db"
|
||||
);
|
||||
fillDataSourceTextField(
|
||||
postgreSqlText.labelUserName,
|
||||
|
|
@ -210,7 +210,7 @@ describe("Data sources MySql", () => {
|
|||
fillConnectionForm({
|
||||
Host: Cypress.env("mysql_host"),
|
||||
Port: Cypress.env("mysql_port"),
|
||||
"Database Name": "testdv",
|
||||
"Database Name": "test_db",
|
||||
Username: Cypress.env("mysql_user"),
|
||||
Password: Cypress.env("mysql_password"),
|
||||
});
|
||||
|
|
@ -388,7 +388,7 @@ describe("Data sources MySql", () => {
|
|||
fillConnectionForm({
|
||||
Host: Cypress.env("mysql_host"),
|
||||
Port: Cypress.env("mysql_port"),
|
||||
"Database Name": "testdv",
|
||||
"Database Name": "test_db",
|
||||
Username: Cypress.env("mysql_user"),
|
||||
Password: Cypress.env("mysql_password"),
|
||||
});
|
||||
|
|
@ -421,7 +421,7 @@ describe("Data sources MySql", () => {
|
|||
|
||||
cy.get(".p-3").should(
|
||||
"have.text",
|
||||
`[{"Tables_in_testdv (${dbName})":"${dbName}"}]`
|
||||
`[{"Tables_in_test_db (${dbName})":"${dbName}"}]`
|
||||
);
|
||||
|
||||
// addQuery(
|
||||
|
|
@ -462,8 +462,8 @@ describe("Data sources MySql", () => {
|
|||
);
|
||||
fillConnectionForm({
|
||||
Host: Cypress.env("mysql_host"),
|
||||
Port: "3306",
|
||||
"Database Name": "testdv",
|
||||
Port: "3318",
|
||||
"Database Name": "test_db",
|
||||
Username: Cypress.env("mysql_user"),
|
||||
Password: Cypress.env("mysql_password"),
|
||||
});
|
||||
|
|
|
|||
|
|
@ -32,6 +32,7 @@ describe("Groups duplication", () => {
|
|||
],
|
||||
"All users"
|
||||
);
|
||||
cy.apiCreateApp(data.appName);
|
||||
});
|
||||
it("Should verify the group duplication feature", () => {
|
||||
data.firstName = fake.firstName;
|
||||
|
|
@ -55,7 +56,6 @@ describe("Groups duplication", () => {
|
|||
"disable"
|
||||
);
|
||||
|
||||
cy.apiCreateApp(data.appName);
|
||||
createGroupAddAppAndUserToGroup(data.groupName, data.email);
|
||||
|
||||
groupPermission(
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import { commonSelectors } from "../../constants/selectors/common";
|
||||
import { commonText } from "../../constants/texts/common";
|
||||
import { commonSelectors } from "Selectors/common";
|
||||
import { commonText } from "Texts/common";
|
||||
import { fake } from "Fixtures/fake";
|
||||
import { addNewUser } from "Support/utils/onboarding";
|
||||
import { logout } from "Support/utils/common";
|
||||
|
|
|
|||
|
|
@ -11,10 +11,11 @@ describe("Manage SSO for multi workspace", () => {
|
|||
const envVar = Cypress.env("environment");
|
||||
beforeEach(() => {
|
||||
cy.defaultWorkspaceLogin();
|
||||
SSO.setSSOStatus("My workspace", "google", false);
|
||||
SSO.setSSOStatus("My workspace", "git", false);
|
||||
});
|
||||
it("Should verify General settings page elements", () => {
|
||||
common.navigateToManageSSO();
|
||||
|
||||
cy.get(commonSelectors.breadcrumbTitle).should(($el) => {
|
||||
expect($el.contents().first().text().trim()).to.eq(
|
||||
commonText.breadcrumbworkspaceSettingTitle
|
||||
|
|
@ -27,14 +28,12 @@ describe("Manage SSO for multi workspace", () => {
|
|||
|
||||
cy.get(ssoSelector.cardTitle).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.generalSettingsElements.generalSettings
|
||||
"Workspace login"
|
||||
);
|
||||
for (const elements in ssoSelector.generalSettingsElements) {
|
||||
cy.get(
|
||||
ssoSelector.generalSettingsElements[elements]
|
||||
).verifyVisibleElement(
|
||||
cy.get(ssoSelector.workspaceLoginPage[elements]).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.generalSettingsElements[elements]
|
||||
ssoText.workspaceLoginPage[elements]
|
||||
);
|
||||
}
|
||||
cy.get(ssoSelector.enableSignUpToggle).should("be.visible");
|
||||
|
|
@ -51,12 +50,6 @@ describe("Manage SSO for multi workspace", () => {
|
|||
ssoText.saveButton
|
||||
);
|
||||
|
||||
SSO.generalSettings();
|
||||
|
||||
cy.get(ssoSelector.alertText).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.alertText
|
||||
);
|
||||
cy.get(ssoSelector.passwordEnableToggle).should("be.visible");
|
||||
cy.get(ssoSelector.passwordLoginToggleLbale).verifyVisibleElement(
|
||||
"have.text",
|
||||
|
|
@ -67,35 +60,32 @@ describe("Manage SSO for multi workspace", () => {
|
|||
ssoText.disablePasswordHelperText
|
||||
);
|
||||
|
||||
SSO.passwordPageElements();
|
||||
SSO.generalSettings();
|
||||
});
|
||||
|
||||
it("Should verify Google SSO page elements", () => {
|
||||
common.navigateToManageSSO();
|
||||
cy.get(ssoSelector.google).should("be.visible").click();
|
||||
cy.get(ssoSelector.cardTitle).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.googleTitle
|
||||
);
|
||||
cy.get(ssoSelector.cardTitle)
|
||||
.eq(1)
|
||||
.verifyVisibleElement("have.text", ssoText.googleTitle);
|
||||
cy.get(ssoSelector.googleEnableToggle).should("be.visible");
|
||||
cy.get(ssoSelector.clientIdLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.clientIdLabel
|
||||
);
|
||||
cy.get(ssoSelector.clientIdInput).should("be.visible");
|
||||
cy.get(ssoSelector.cancelButton).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.cancelButton
|
||||
);
|
||||
cy.get(ssoSelector.saveButton).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.saveButton
|
||||
);
|
||||
cy.get(ssoSelector.cancelButton)
|
||||
.eq(1)
|
||||
.verifyVisibleElement("have.text", ssoText.cancelButton);
|
||||
cy.get(ssoSelector.saveButton)
|
||||
.eq(1)
|
||||
.verifyVisibleElement("have.text", ssoText.saveButton);
|
||||
|
||||
SSO.googleSSOPageElements();
|
||||
SSO.disableDefaultSSO();
|
||||
SSO.visitWorkspaceLoginPage();
|
||||
|
||||
SSO.defaultSSO("My workspace", false);
|
||||
cy.logoutApi();
|
||||
cy.visit("/login/my-workspace");
|
||||
cy.get(ssoSelector.googleIcon).should("be.visible");
|
||||
cy.get(ssoSelector.googleSSOText).verifyVisibleElement(
|
||||
"have.text",
|
||||
|
|
@ -104,6 +94,8 @@ describe("Manage SSO for multi workspace", () => {
|
|||
});
|
||||
|
||||
it("Should verify Git SSO page elements", () => {
|
||||
SSO.defaultSSO("My workspace", true);
|
||||
|
||||
common.navigateToManageSSO();
|
||||
|
||||
cy.get(ssoSelector.git).should("be.visible").click();
|
||||
|
|
@ -139,27 +131,27 @@ describe("Manage SSO for multi workspace", () => {
|
|||
ssoText.encriptedLabel
|
||||
);
|
||||
cy.get(ssoSelector.clientSecretInput).should("be.visible");
|
||||
cy.get(ssoSelector.cancelButton).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.cancelButton
|
||||
);
|
||||
cy.get(ssoSelector.saveButton).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.saveButton
|
||||
);
|
||||
cy.get(ssoSelector.cancelButton)
|
||||
.eq(1)
|
||||
.verifyVisibleElement("have.text", ssoText.cancelButton);
|
||||
cy.get(ssoSelector.saveButton)
|
||||
.eq(1)
|
||||
.verifyVisibleElement("have.text", ssoText.saveButton);
|
||||
|
||||
SSO.gitSSOPageElements();
|
||||
SSO.visitWorkspaceLoginPage();
|
||||
SSO.defaultSSO("My workspace", false);
|
||||
cy.logoutApi();
|
||||
cy.visit("/login/my-workspace");
|
||||
|
||||
cy.get(ssoSelector.googleIcon).should("be.visible");
|
||||
cy.get(ssoSelector.googleSSOText).verifyVisibleElement(
|
||||
cy.get(ssoSelector.gitIcon).should("be.visible");
|
||||
cy.get(ssoSelector.gitSignInText).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.googleSSOText
|
||||
ssoText.gitSignInText
|
||||
);
|
||||
});
|
||||
|
||||
if (envVar === "Community") {
|
||||
it("Should verify the workspace login page", () => {
|
||||
it.skip("Should verify the workspace login page", () => {
|
||||
data.workspaceName = fake.companyName.toLowerCase();
|
||||
cy.apiLogin();
|
||||
cy.apiCreateWorkspace(data.workspaceName, data.workspaceName);
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import { dashboardSelector } from "Selectors/dashboard";
|
|||
import { updateWorkspaceName } from "Support/utils/userPermissions";
|
||||
import { groupsSelector } from "Selectors/manageGroups";
|
||||
import { groupsText } from "Texts/manageGroups";
|
||||
import { addNewUser } from "../../support/utils/onboarding";
|
||||
import { addNewUser } from "Support/utils/onboarding";
|
||||
|
||||
const data = {};
|
||||
data.groupName = fake.firstName.replaceAll("[^A-Za-z]", "");
|
||||
|
|
|
|||
|
|
@ -207,7 +207,7 @@ describe("User permissions", () => {
|
|||
common.navigateToWorkspaceVariable();
|
||||
cy.get('[data-cy="alert-info-text"]>>.text-muted').verifyVisibleElement(
|
||||
"have.text",
|
||||
"There are no Workspace variables. Workspace variables are being deprecated soon, so please use Workspace constants instead."
|
||||
"Workspace variables will no longer be supported after April 30, 2024. To maintain optimal performance, please make the switch to Workspace constants"
|
||||
);
|
||||
cy.get(
|
||||
'[data-cy="go-to-workspace-constants-option-button"]'
|
||||
|
|
|
|||
|
|
@ -275,3 +275,11 @@ export const releaseApp = () => {
|
|||
cy.verifyToastMessage(commonSelectors.toastMessage, "Version v1 released");
|
||||
cy.wait(1000);
|
||||
};
|
||||
|
||||
export const verifyTooltipDisabled = (selector, message) => {
|
||||
cy.get(selector)
|
||||
.trigger("mouseover", { force: true })
|
||||
.then(() => {
|
||||
cy.get(".tooltip-inner").last().should("have.text", message);
|
||||
});
|
||||
};
|
||||
|
|
@ -6,207 +6,190 @@ import { commonText } from "Texts/common";
|
|||
import { dashboardSelector } from "Selectors/dashboard";
|
||||
|
||||
export const generalSettings = () => {
|
||||
cy.get(ssoSelector.enableSignUpToggle).then(($el) => {
|
||||
if ($el.is(":checked")) {
|
||||
cy.get(ssoSelector.enableSignUpToggle).uncheck();
|
||||
cy.get(ssoSelector.cancelButton).click();
|
||||
cy.get(ssoSelector.enableSignUpToggle).should("be.checked");
|
||||
} else {
|
||||
cy.get(ssoSelector.enableSignUpToggle).check();
|
||||
cy.get(ssoSelector.cancelButton).click();
|
||||
cy.get(ssoSelector.enableSignUpToggle).should("not.be.checked");
|
||||
cy.get(ssoSelector.enableSignUpToggle).check();
|
||||
}
|
||||
cy.get(ssoSelector.allowDefaultSSOToggle).then(($el) => {
|
||||
if ($el.is(":checked")) {
|
||||
cy.get(ssoSelector.allowDefaultSSOToggle).uncheck();
|
||||
cy.get(ssoSelector.cancelButton).click();
|
||||
cy.get(ssoSelector.allowDefaultSSOToggle).should("not.be.checked");
|
||||
} else {
|
||||
cy.get(ssoSelector.allowDefaultSSOToggle).check();
|
||||
cy.get(ssoSelector.cancelButton).click();
|
||||
cy.get(ssoSelector.allowDefaultSSOToggle).should("be.checked");
|
||||
cy.get(ssoSelector.allowDefaultSSOToggle).check();
|
||||
}
|
||||
});
|
||||
cy.clearAndType(ssoSelector.allowedDomainInput, ssoText.allowedDomain);
|
||||
cy.get(ssoSelector.saveButton).click();
|
||||
cy.verifyToastMessage(commonSelectors.toastMessage, ssoText.ssoToast);
|
||||
});
|
||||
cy.get(ssoSelector.enableSignUpToggle).check();
|
||||
cy.get(ssoSelector.cancelButton).click();
|
||||
cy.get(ssoSelector.enableSignUpToggle).should("not.be.checked");
|
||||
cy.get(ssoSelector.enableSignUpToggle).check();
|
||||
cy.get(ssoSelector.saveButton).click();
|
||||
cy.get(ssoSelector.enableSignUpToggle).should("be.checked");
|
||||
|
||||
cy.get(ssoSelector.enableSignUpToggle).uncheck();
|
||||
cy.get(ssoSelector.saveButton).click();
|
||||
cy.get(ssoSelector.enableSignUpToggle).should("not.be.checked");
|
||||
|
||||
cy.get(ssoSelector.workspaceLoginPage.defaultSSO).click();
|
||||
cy.get(ssoSelector.defaultGoogle).verifyVisibleElement("have.text", "Google");
|
||||
cy.get(ssoSelector.defaultGithub).verifyVisibleElement("have.text", "Github");
|
||||
|
||||
cy.clearAndType(ssoSelector.allowedDomainInput, ssoText.allowedDomain);
|
||||
cy.get(ssoSelector.saveButton).click();
|
||||
cy.verifyToastMessage(commonSelectors.toastMessage, ssoText.ssoToast);
|
||||
|
||||
cy.get(ssoSelector.passwordEnableToggle).uncheck();
|
||||
cy.get(commonSelectors.modalComponent).should("be.visible");
|
||||
cy.get(commonSelectors.modalMessage).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.passwordDisableWarning
|
||||
);
|
||||
cy.get(commonSelectors.cancelButton).eq(1).click();
|
||||
cy.get(ssoSelector.passwordEnableToggle).uncheck();
|
||||
cy.get(commonSelectors.confirmationButton).click();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.passwordDisabledToast
|
||||
);
|
||||
|
||||
cy.get(ssoSelector.passwordEnableToggle).check();
|
||||
cy.get(commonSelectors.saveButton).click();
|
||||
|
||||
cy.get(ssoSelector.allowDefaultSSOToggle).click();
|
||||
|
||||
cy.get(ssoSelector.passwordEnableToggle).should("be.disabled");
|
||||
|
||||
common.verifyTooltipDisabled(
|
||||
ssoSelector.passwordEnableToggle,
|
||||
"Password login cannot be disabled unless SSO is configured"
|
||||
);
|
||||
|
||||
cy.get(ssoSelector.allowDefaultSSOToggle).click();
|
||||
};
|
||||
|
||||
export const googleSSOPageElements = () => {
|
||||
cy.get(ssoSelector.googleEnableToggle).then(($el) => {
|
||||
if ($el.is(":checked")) {
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.enabledLabel
|
||||
);
|
||||
cy.get(ssoSelector.googleEnableToggle).uncheck();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.googleDisableToast
|
||||
);
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.disabledLabel
|
||||
);
|
||||
cy.get(ssoSelector.googleEnableToggle).check();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.googleEnabledToast
|
||||
);
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.enabledLabel
|
||||
);
|
||||
} else {
|
||||
cy.get(ssoSelector.googleEnableToggle).check();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.googleEnabledToast
|
||||
);
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.enabledLabel
|
||||
);
|
||||
cy.get(ssoSelector.googleEnableToggle).click();
|
||||
cy.get(ssoSelector.saveButton).eq(1).click();
|
||||
|
||||
cy.get(ssoSelector.googleEnableToggle).uncheck();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.googleDisableToast
|
||||
);
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.disabledLabel
|
||||
);
|
||||
cy.get(ssoSelector.googleEnableToggle).check();
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.enabledLabel
|
||||
);
|
||||
}
|
||||
cy.clearAndType(ssoSelector.clientIdInput, ssoText.testClientId);
|
||||
cy.get(ssoSelector.cancelButton).click();
|
||||
cy.clearAndType(ssoSelector.clientIdInput, ssoText.clientId);
|
||||
cy.get(ssoSelector.saveButton).click();
|
||||
cy.verifyToastMessage(commonSelectors.toastMessage, ssoText.ssoToast2);
|
||||
cy.get(ssoSelector.clientIdInput).should("have.value", ssoText.clientId);
|
||||
});
|
||||
cy.get('[data-cy="modal-title"]').verifyVisibleElement(
|
||||
"have.text",
|
||||
"Enable Google"
|
||||
);
|
||||
cy.get('[data-cy="modal-close-button"]').should("be.visible");
|
||||
cy.get('[data-cy="modal-message"]').verifyVisibleElement(
|
||||
"have.text",
|
||||
"Enabling Google at the workspace level will override any Google configurations set at the instance level."
|
||||
);
|
||||
cy.get('[data-cy="confirmation-text"]').verifyVisibleElement(
|
||||
"have.text",
|
||||
"Are you sure you want to continue?"
|
||||
);
|
||||
cy.get('[data-cy="cancel-button"]')
|
||||
.eq(2)
|
||||
.verifyVisibleElement("have.text", "Cancel");
|
||||
cy.get('[data-cy="enable-button"]').verifyVisibleElement(
|
||||
"have.text",
|
||||
"Enable"
|
||||
);
|
||||
|
||||
cy.get('[data-cy="cancel-button"]').eq(2).click();
|
||||
cy.get(ssoSelector.googleEnableToggle).click();
|
||||
cy.get(ssoSelector.saveButton).eq(1).click();
|
||||
cy.get('[data-cy="enable-button"]').click();
|
||||
cy.verifyToastMessage(commonSelectors.toastMessage, ssoText.googleSSOToast);
|
||||
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.enabledLabel
|
||||
);
|
||||
cy.get('[data-cy="redirect-url-label"]').verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.redirectUrlLabel
|
||||
);
|
||||
cy.get('[data-cy="redirect-url"]').should("be.visible");
|
||||
cy.get('[data-cy="copy-icon"]').should("be.visible");
|
||||
|
||||
cy.get(ssoSelector.googleEnableToggle).click();
|
||||
cy.get(ssoSelector.saveButton).eq(1).click();
|
||||
cy.verifyToastMessage(commonSelectors.toastMessage, ssoText.googleSSOToast);
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.disabledLabel
|
||||
);
|
||||
|
||||
cy.clearAndType(ssoSelector.clientIdInput, ssoText.testClientId);
|
||||
cy.get(ssoSelector.cancelButton).eq(1).click();
|
||||
cy.get(ssoSelector.google).click();
|
||||
cy.get(ssoSelector.clientIdInput).should("have.value", "");
|
||||
cy.get(ssoSelector.googleEnableToggle).click();
|
||||
cy.clearAndType(ssoSelector.clientIdInput, ssoText.clientId);
|
||||
cy.get(ssoSelector.saveButton).eq(1).click();
|
||||
cy.get('[data-cy="enable-button"]').click();
|
||||
cy.verifyToastMessage(commonSelectors.toastMessage, ssoText.googleSSOToast);
|
||||
cy.get(ssoSelector.clientIdInput).should("have.value", ssoText.clientId);
|
||||
};
|
||||
|
||||
export const gitSSOPageElements = () => {
|
||||
cy.get(ssoSelector.gitEnableToggle).then(($el) => {
|
||||
if ($el.is(":checked")) {
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.enabledLabel
|
||||
);
|
||||
cy.get(ssoSelector.gitEnableToggle).uncheck();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.gitDisabledToast
|
||||
);
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.disabledLabel
|
||||
);
|
||||
cy.get(ssoSelector.gitEnableToggle).check();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.gitEnabledToast
|
||||
);
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.enabledLabel
|
||||
);
|
||||
} else {
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.disabledLabel
|
||||
);
|
||||
cy.get(ssoSelector.gitEnableToggle).check();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.gitEnabledToast
|
||||
);
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.enabledLabel
|
||||
);
|
||||
cy.get(ssoSelector.gitEnableToggle).uncheck();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.gitDisabledToast
|
||||
);
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.disabledLabel
|
||||
);
|
||||
cy.get(ssoSelector.gitEnableToggle).check();
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.enabledLabel
|
||||
);
|
||||
}
|
||||
cy.clearAndType(ssoSelector.hostNameInput, ssoText.hostName);
|
||||
cy.clearAndType(ssoSelector.clientIdInput, ssoText.clientId);
|
||||
cy.clearAndType(ssoSelector.clientSecretInput, ssoText.testClientId);
|
||||
cy.get(ssoSelector.saveButton).click();
|
||||
cy.verifyToastMessage(commonSelectors.toastMessage, ssoText.ssoToast2);
|
||||
cy.get(ssoSelector.hostNameInput).should("have.value", ssoText.hostName);
|
||||
cy.get(ssoSelector.clientIdInput).should("have.value", ssoText.clientId);
|
||||
cy.get(ssoSelector.clientSecretInput).should(
|
||||
"have.value",
|
||||
ssoText.testClientId
|
||||
);
|
||||
});
|
||||
};
|
||||
cy.get(ssoSelector.gitEnableToggle).click();
|
||||
|
||||
export const passwordPageElements = () => {
|
||||
cy.get(ssoSelector.passwordEnableToggle).then(($el) => {
|
||||
if ($el.is(":checked")) {
|
||||
cy.get(ssoSelector.passwordEnableToggle).uncheck();
|
||||
cy.get(commonSelectors.modalComponent).should("be.visible");
|
||||
cy.get(commonSelectors.modalMessage).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.passwordDisableWarning
|
||||
);
|
||||
cy.get(commonSelectors.buttonSelector("Yes")).click();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.passwordDisabledToast
|
||||
);
|
||||
cy.get(ssoSelector.saveButton).eq(1).click();
|
||||
|
||||
cy.get(ssoSelector.passwordEnableToggle).check();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.passwordEnabledToast
|
||||
);
|
||||
} else {
|
||||
cy.get(ssoSelector.passwordEnableToggle).check();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.passwordEnabledToast
|
||||
);
|
||||
cy.get('[data-cy="modal-title"]').verifyVisibleElement(
|
||||
"have.text",
|
||||
"Enable Git"
|
||||
);
|
||||
cy.get('[data-cy="modal-close-button"]').should("be.visible");
|
||||
cy.get('[data-cy="modal-message"]').verifyVisibleElement(
|
||||
"have.text",
|
||||
"Enabling Git at the workspace level will override any Git configurations set at the instance level."
|
||||
);
|
||||
cy.get('[data-cy="confirmation-text"]').verifyVisibleElement(
|
||||
"have.text",
|
||||
"Are you sure you want to continue?"
|
||||
);
|
||||
cy.get('[data-cy="cancel-button"]')
|
||||
.eq(2)
|
||||
.verifyVisibleElement("have.text", "Cancel");
|
||||
cy.get('[data-cy="enable-button"]').verifyVisibleElement(
|
||||
"have.text",
|
||||
"Enable"
|
||||
);
|
||||
|
||||
cy.get(ssoSelector.passwordEnableToggle).uncheck();
|
||||
cy.verifyToastMessage(
|
||||
commonSelectors.toastMessage,
|
||||
ssoText.passwordDisabledToast
|
||||
);
|
||||
cy.get('[data-cy="cancel-button"]').eq(2).click();
|
||||
cy.get(ssoSelector.gitEnableToggle).click();
|
||||
cy.get(ssoSelector.saveButton).eq(1).click();
|
||||
cy.get('[data-cy="enable-button"]').click();
|
||||
|
||||
cy.get(ssoSelector.passwordEnableToggle).check();
|
||||
}
|
||||
});
|
||||
cy.verifyToastMessage(commonSelectors.toastMessage, ssoText.gitSSOToast);
|
||||
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.enabledLabel
|
||||
);
|
||||
|
||||
cy.get('[data-cy="redirect-url-label"]').verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.redirectUrlLabel
|
||||
);
|
||||
cy.get('[data-cy="redirect-url"]').should("be.visible");
|
||||
cy.get('[data-cy="copy-icon"]').should("be.visible");
|
||||
|
||||
cy.get(ssoSelector.gitEnableToggle).click();
|
||||
cy.get(ssoSelector.saveButton).eq(1).click();
|
||||
|
||||
cy.verifyToastMessage(commonSelectors.toastMessage, ssoText.gitSSOToast);
|
||||
cy.get(ssoSelector.statusLabel).verifyVisibleElement(
|
||||
"have.text",
|
||||
ssoText.disabledLabel
|
||||
);
|
||||
|
||||
cy.get(ssoSelector.gitEnableToggle).click();
|
||||
cy.clearAndType(ssoSelector.hostNameInput, ssoText.hostName);
|
||||
cy.clearAndType(ssoSelector.clientIdInput, ssoText.clientId);
|
||||
cy.clearAndType(ssoSelector.clientSecretInput, ssoText.testClientId);
|
||||
cy.get(ssoSelector.saveButton).eq(1).click();
|
||||
cy.get('[data-cy="enable-button"]').click();
|
||||
cy.verifyToastMessage(commonSelectors.toastMessage, ssoText.gitSSOToast);
|
||||
cy.get(ssoSelector.hostNameInput).should("have.value", ssoText.hostName);
|
||||
cy.get(ssoSelector.clientIdInput).should("have.value", ssoText.clientId);
|
||||
cy.get(ssoSelector.clientSecretInput).should(
|
||||
"have.value",
|
||||
ssoText.testClientId
|
||||
);
|
||||
};
|
||||
|
||||
export const visitWorkspaceLoginPage = () => {
|
||||
cy.get(ssoSelector.generalSettingsElements.generalSettings).click();
|
||||
cy.get(ssoSelector.workspaceLoginUrl).then(($temp) => {
|
||||
const url = $temp.text();
|
||||
common.logout();
|
||||
cy.wait(1000)
|
||||
cy.wait(1000);
|
||||
cy.visit(url);
|
||||
});
|
||||
};
|
||||
|
|
@ -264,7 +247,7 @@ export const workspaceLogin = (workspaceName) => {
|
|||
cy.clearAndType(commonSelectors.workEmailInputField, "dev@tooljet.io");
|
||||
cy.clearAndType(commonSelectors.passwordInputField, "password");
|
||||
cy.get(commonSelectors.loginButton).click();
|
||||
cy.wait(2000)
|
||||
cy.wait(2000);
|
||||
cy.get(commonSelectors.homePageLogo).should("be.visible");
|
||||
cy.get(commonSelectors.workspaceName).verifyVisibleElement(
|
||||
"have.text",
|
||||
|
|
@ -576,3 +559,35 @@ export const updateId = () => {
|
|||
sql: "update sso_configs set id='9628dee2-6fa9-4aca-9c98-ef950601c83e' where sso='git';",
|
||||
});
|
||||
};
|
||||
|
||||
export const setSSOStatus = (workspaceName, ssoType, enabled) => {
|
||||
let workspaceId;
|
||||
|
||||
cy.task("updateId", {
|
||||
dbconfig: Cypress.env("app_db"),
|
||||
sql: `SELECT id FROM organizations WHERE name = '${workspaceName}'`,
|
||||
}).then((resp) => {
|
||||
workspaceId = resp.rows[0].id;
|
||||
|
||||
cy.task("updateId", {
|
||||
dbconfig: Cypress.env("app_db"),
|
||||
sql: `SELECT * FROM sso_configs WHERE organization_id = '${workspaceId}' AND sso = '${ssoType}'`,
|
||||
}).then((ssoConfigResp) => {
|
||||
if (ssoConfigResp.rows.length > 0) {
|
||||
cy.task("updateId", {
|
||||
dbconfig: Cypress.env("app_db"),
|
||||
sql: `UPDATE sso_configs SET enabled = ${enabled ? "true" : "false"
|
||||
} WHERE organization_id = '${workspaceId}' AND sso = '${ssoType}'`,
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
export const defaultSSO = (workspaceName, enabled) => {
|
||||
cy.task("updateId", {
|
||||
dbconfig: Cypress.env("app_db"),
|
||||
sql: `UPDATE organizations SET inherit_sso = ${enabled ? "true" : "false"
|
||||
} WHERE name = '${workspaceName}'`,
|
||||
});
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
version: '3'
|
||||
version: "3"
|
||||
|
||||
services:
|
||||
tooljet:
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
version: '3'
|
||||
version: "3"
|
||||
|
||||
services:
|
||||
tooljet:
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: postgrest
|
||||
image: postgrest/postgrest:v10.1.1.20221215
|
||||
image: postgrest/postgrest
|
||||
ports:
|
||||
- containerPort: 3000
|
||||
env:
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ COPY ./server/ ./server/
|
|||
RUN npm install -g @nestjs/cli
|
||||
RUN npm --prefix server run build
|
||||
|
||||
FROM node:18.18.2-buster
|
||||
FROM node:18.18.2-bullseye
|
||||
# copy postgrest executable
|
||||
COPY --from=postgrest/postgrest:v12.0.2 /bin/postgrest /bin
|
||||
|
||||
|
|
|
|||
|
|
@ -5,55 +5,54 @@ title: Set localStorage
|
|||
|
||||
# Set localStorage
|
||||
|
||||
This action allows you to specify a `key` and its corresponding `value` to be stored in localStorage.
|
||||
This action allows you to specify a `key` and its corresponding `value` to be stored in local storage of the browser. Local storage can be useful in a lot of scenarios. Some of the most common use cases of the local storage includes:
|
||||
- Saving form values so that users don't accidentally lose them if they reload the page
|
||||
- Storing any kind of data that is not going to be transferred to the database
|
||||
|
||||
## Example: App that stores a name in localStorage and displays it on reload
|
||||
<div style={{paddingTop:'24px', paddingBottom:'24px'}}>
|
||||
|
||||
1. Add an input field, button and a text as shown
|
||||
## Example: Setting a Component Value Based on Local Storage
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
1. Add **Text Input**, **Button** and **Text** components to the canvas.
|
||||
|
||||

|
||||
<div style={{textAlign: 'center', marginBotton:'25px'}}>
|
||||
<img className="screenshot-full" src="/img/actions/localstorage/add-components.png" alt="Add Components To The Canvas" />
|
||||
</div>
|
||||
|
||||
|
||||
2. Select the Button, add a new event handler, and add a `Set local storage` action with `key` set to `localtest` and `value` set to `{{components.textinput1.value}}`.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img className="screenshot-full" src="/img/actions/localstorage/set-local-storage.png" alt="Set Local Storage" />
|
||||
</div>
|
||||
|
||||
This will set a local storage value with `localtest` as the key and the value entered in the Text Input component as its value.
|
||||
|
||||
3. Create a `Run JavaScript code` query, and enter the code below:
|
||||
|
||||
```js
|
||||
return localStorage.getItem("localtest");
|
||||
```
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img className="screenshot-full" src="/img/actions/localstorage/create-runjs-query.png" alt="Create RunJS Query" />
|
||||
</div>
|
||||
|
||||
Click on the **Run** button in the Query Panel. This query will fetch the `localtest` local storage variable that we had set earlier.
|
||||
|
||||
4. Select the **Text** component. Under its `Text` property, enter `{{queries.runjs1.data}}`. Now, the Text component will display the value returned by the `Run JavaScript code` query - the local variable we had set earlier.
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img className="screenshot-full" src="/img/actions/localstorage/update-text-component.png" alt="Update Value Of Text Component Based On Local Storage" />
|
||||
</div>
|
||||
|
||||
5. Select the Button component. Add a new event handler to it, add a `Run query` action, select `runjs1` as the query, and set a debounce of `300`.
|
||||
<div style={{textAlign: 'center', marginBottom:'15px'}}>
|
||||
<img className="screenshot-full" src="/img/actions/localstorage/update-text-on-button-click.png" alt="Updating Text On Button Click" />
|
||||
</div>
|
||||
|
||||
Now, every time you click on the Button component, it will set the local storage value, and the Text component will display the value set in local storage.
|
||||
|
||||
:::info
|
||||
Debounce field is empty by default, you can enter a numerical value to specify the time in milliseconds after which the action will be performed. ex: `300`
|
||||
:::
|
||||
|
||||
</div>
|
||||
|
||||
2. Select the button and add a `Set localStorage` action with `key` set to `name` and value pointing at the value of the text field
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||

|
||||
|
||||
</div>
|
||||
|
||||
3. Select the text label we've added and set its value to the name item from localStorage.
|
||||
|
||||
:::info
|
||||
Debounce field is empty by default, you can enter a numerical value to specify the time in milliseconds after which the action will be performed. ex: `300`
|
||||
:::
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||

|
||||
|
||||
</div>
|
||||
|
||||
|
||||
4. Now save the application, this is important as we're about to reload the page.
|
||||
|
||||
5. Type in anything you wish on the input box and click on the button
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||

|
||||
|
||||
</div>
|
||||
|
||||
|
||||
6. Reload the page, you'll see that the value stored in local storage is persisted and it is displayed on screen!
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||

|
||||
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ The following guide is intended for contributors to set-up ToolJet locally. If y
|
|||
Docker compose is the easiest way to setup ToolJet server and client locally.
|
||||
|
||||
:::info
|
||||
If you rather want to try out ToolJet locally with docker, you can follow the steps [here](https://docs.tooljet.com/docs/setup/docker-local).
|
||||
If you rather want to try out ToolJet locally with docker, you can follow the steps [here](https://docs.tooljet.com/docs/setup/try-tooljet).
|
||||
:::
|
||||
|
||||
## Prerequisites
|
||||
|
|
|
|||
|
|
@ -115,11 +115,11 @@ Follow these steps to setup and run ToolJet on macOS for development purposes. O
|
|||
cd ./frontend && npm start
|
||||
```
|
||||
|
||||
The client will start on the port 8082, you can access the client by visiting: [https://localhost:8082](https://localhost:8082)
|
||||
The client will start on the port 8082, you can access the client by visiting: [http://localhost:8082](http://localhost:8082)
|
||||
|
||||
9. Create login credentials
|
||||
|
||||
Visiting [https://localhost:8082](https://localhost:8082) should redirect you to the login page, click on the signup link and enter your email. The emails sent by the server in development environment are captured and are opened in your default browser. Click the invitation link in the email preview to setup the account.
|
||||
Visiting [http://localhost:8082](http://localhost:8082) should redirect you to the login page, click on the signup link and enter your email. The emails sent by the server in development environment are captured and are opened in your default browser. Click the invitation link in the email preview to setup the account.
|
||||
|
||||
## Running tests
|
||||
|
||||
|
|
|
|||
|
|
@ -106,7 +106,7 @@ Follow these steps to setup and run ToolJet on Ubuntu. Open terminal and run the
|
|||
```
|
||||
|
||||
|
||||
The client will start running on the port 8082, you can access the client by visiting: [https://localhost:8082](https://localhost:8082)
|
||||
The client will start running on the port 8082, you can access the client by visiting: [http://localhost:8082](http://localhost:8082)
|
||||
|
||||
9. Create login credentials
|
||||
|
||||
|
|
|
|||
|
|
@ -3,53 +3,55 @@ id: run-py
|
|||
title: Run Python code
|
||||
---
|
||||
|
||||
You can write custom Python code to interact with components and queries. To do that, you just need to create a new query and select **Run Python Code** from the available datasources.
|
||||
You can write custom Python code to interact with components and queries. To do that, you need to create a new query and select **Run Python code** from the available data sources.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img className="screenshot-full" src="/img/datasource-reference/custom-python/run-py.png" alt="Run JavaScript code" />
|
||||
<img className="screenshot-full" src="/img/datasource-reference/custom-python/add-run-py.png" alt="Run Python code" />
|
||||
</div>
|
||||
|
||||
## Using Python code to trigger component specific actions
|
||||
## Using Python Code to Trigger Component Specific Actions
|
||||
|
||||
- Let's drag a **button** and a **text** widget onto the canvas. We will set a text on the text component and trigger button click event from the Python query.
|
||||
- Click on the `+` on the query panel to create a query and select **Run Python code** from the available datasources
|
||||
- Let's write the code in **Python Editor** and save the query:
|
||||
- Drag a **Text** component onto the canvas. We will set the text on the Text component using the Python query.
|
||||
- Create a query and select **Run Python code** from the available data sources
|
||||
- Paste the below code in the code editor and save the query:
|
||||
|
||||
```python
|
||||
class Person:
|
||||
def __init__(self, name, age):
|
||||
```python
|
||||
class Person:
|
||||
def __init__(self, name, age):
|
||||
self.name = name
|
||||
self.age = age
|
||||
|
||||
def myfunc(self):
|
||||
def myfunc(self):
|
||||
return "Hello my name is " + self.name
|
||||
|
||||
p1 = Person(tj_globals.currentUser.firstName, 36)
|
||||
|
||||
components.text1.setText(p1.myfunc())
|
||||
components.button1.click()
|
||||
```
|
||||
- The code above has a function `myfunc` which returns a string and we using the component specific action to set the **text component**'s value from the Python query. We are also triggering the button click using `components.button1.click()`
|
||||
|
||||
p1 = Person(tj_globals.currentUser.firstName, 36)
|
||||
|
||||
components.text1.setText(p1.myfunc())
|
||||
```
|
||||
|
||||
- The above code has a function `myfunc` which returns a string and we are using a **[Component Specific Action](/docs/tooljet-concepts/component-specific-actions)** to set the Text Component's value from the Python query.
|
||||
|
||||
:::tip
|
||||
- ToolJet's global variables can be accessed using **tj_globals**. ex: `tj_globals.currentUser.firstName`
|
||||
- As of now, Run Python code only supports the [Python standard library](https://docs.python.org/3/library/) only.
|
||||
- Check **[RunPy Limitations](/docs/contributing-guide/troubleshooting/runpy-limitations)**
|
||||
- As of now, Run Python code only supports the [Python standard library](https://docs.python.org/3/library/).
|
||||
- Check **[RunPy Limitations](/docs/contributing-guide/troubleshooting/runpy-limitations)** to go through the limitations with using Python code
|
||||
:::
|
||||
|
||||
- Let's edit the properties of widgets:
|
||||
- Add an event handler to the button - Select **On Click** event, **Show alert** action, and set a success message `Triggered using RunPy`. This will show a success alert popup whenever the button click event is triggered from the Python code.
|
||||
- For the text component, we don't have to edit any property since we are changing the value directly from the Python code.
|
||||
## Trigger Queries
|
||||
To trigger queries in Python, you can use the below functions:
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img className="screenshot-full" src="/img/datasource-reference/custom-python/runpyg.gif" alt="Run Python code" />
|
||||
</div>
|
||||
```py
|
||||
actions.runQuery('getSalesData')
|
||||
#replace getSalesData with your query name
|
||||
```
|
||||
|
||||
You can also write custom Python code to get the data from **External APIs** and manipulate the response for graphical representation.
|
||||
```py
|
||||
queries.getSalesData.run()
|
||||
#replace getSalesData with your query name
|
||||
```
|
||||
|
||||
## Get Query Data
|
||||
|
||||
To immediately access the data returned by a query in the RunPy code, you can use the below functions:
|
||||
To immediately access the data returned by a query in **Run Python code**, you can use the below functions:
|
||||
|
||||
#### Retrieve the latest data of a query:
|
||||
```py
|
||||
|
|
@ -73,7 +75,7 @@ value = queries.getCustomerData.getRawData()
|
|||
value
|
||||
```
|
||||
|
||||
#### Retreive the loading state of a query:
|
||||
#### Retrieve the loading state of a query:
|
||||
```py
|
||||
response = await queries.getTodos.run()
|
||||
#replace getTodos with your query name
|
||||
|
|
@ -86,7 +88,7 @@ value
|
|||
|
||||
## Get Variables
|
||||
|
||||
To immediately access a variable or page variable after setting it in the RunPy code, you can use the below functions.
|
||||
To immediately access a variable or page variable after setting it in the **Run Python code**, you can use the below functions.
|
||||
|
||||
#### Retrieve the current value of a variable:
|
||||
```py
|
||||
|
|
@ -106,6 +108,48 @@ actions.getPageVariable('number')
|
|||
#replace number with your desired variable name
|
||||
```
|
||||
|
||||
## Using Transformations With Python
|
||||
**Run Python code** can be used to transform the data that is fetched in the queries. To test transformations using Python, create a new `REST API` query, leave the method as `GET` and enter the below url under the `URL` property.
|
||||
|
||||
```js
|
||||
https://dummyjson.com/products
|
||||
```
|
||||
|
||||
Click on the **Run** button and check the preview of the returned data, below is the data structure of the response:
|
||||
|
||||
```js
|
||||
products_data = {
|
||||
"products": [
|
||||
{"title": "iPhone 9", ...},
|
||||
{"title": "iPhone X", ...},
|
||||
# Additional products...
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
#### Filter the titles from the response
|
||||
To extract a list of product titles from the given data structure, we iterate through the `products` list and collect each product's `title` using the below code. Enable `Transformations` in the Query Editor and use the below code:
|
||||
|
||||
```python
|
||||
return [product["title"] for product in data["products"]]
|
||||
```
|
||||
|
||||
### Filtering Products by Category
|
||||
|
||||
To filter products by a specific category, such as "smartphones", and extract their titles. Enable `Transformations` in the Query Editor and use the below code:
|
||||
|
||||
```python
|
||||
return [product["title"] for product in data["products"] if product["category"] == "smartphones"]
|
||||
```
|
||||
|
||||
### Calculating Average Price of a Category
|
||||
|
||||
To calculate the average price of products within the "laptops" category. Enable `Transformations` in the Query Editor and use the below code:
|
||||
|
||||
```python
|
||||
return sum(product["price"] for product in data["products"] if product["category"] == "laptops") / len([product for product in data["products"] if product["category"] == "laptops"]) if len([product for product in data["products"] if product["category"] == "laptops"]) > 0 else 0
|
||||
```
|
||||
|
||||
:::info
|
||||
Issues with writing custom Python code? Ask in our [Slack community](https://www.tooljet.com/slack).
|
||||
:::
|
||||
|
|
|
|||
|
|
@ -26,9 +26,7 @@ GitSync provides a straightforward solution for creating backups of your applica
|
|||
Facilitating the movement of applications across different ToolJet deployments (e.g., from development to staging to production), GitSync acts as a pivotal tool for environment migration. Users can effortlessly transfer their applications across environments by pushing changes to a Git repository.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/envmigration.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/envmigration.png" alt="GitSync" />
|
||||
</div>
|
||||
|
||||
<br/>
|
||||
|
|
@ -49,9 +47,7 @@ Facilitating the movement of applications across different ToolJet deployments (
|
|||
Create a new repository on GitHub. The repository can be public or private. You can also use an existing repository. Make sure that the repository is empty.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/github1.png" alt="GitHub" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/github1.png" alt="GitSync" />
|
||||
</div>
|
||||
|
||||
### Step 2: Obtain the repository URL
|
||||
|
|
@ -59,9 +55,7 @@ Create a new repository on GitHub. The repository can be public or private. You
|
|||
Obtain the **SSH URL** of the repository. When a repository is created, GitHub shows a screen with the repository URL. If the repository is already created, you can obtain the URL by clicking on the **Clone or download** button.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/github2.png" alt="GitHub" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/github2.png" alt="GitSync" />
|
||||
</div>
|
||||
|
||||
### Step 3: Configure the GitSync feature on ToolJet
|
||||
|
|
@ -69,18 +63,18 @@ Obtain the **SSH URL** of the repository. When a repository is created, GitHub s
|
|||
Go to the **Workspace settings**, and click on the **Configure git** tab.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/gitsync.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/gitsync.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
Enter the **SSH URL** of the repository (obtained in Step 2) in the **Git repository URL** field. Click on the **Generate SSH key** button, and copy the SSH key that is generated. The SSH key is used to authenticate ToolJet with the repository.
|
||||
|
||||
There are two types of generated SSH keys: **
|
||||
- **ED25519**: This is a secure and efficient algorithm that is used for generating SSH keys. It is recommended to use this key type. VCS providers like GitHub and GitLab recommend using this key type
|
||||
- **RSA**: This is an older algorithm that is used for generating SSH keys. It is not recommended to use this key type. Older VCS providers like Bitbucket recommend using this key type.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/git2.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/ssh2.png" alt="GitSync" />
|
||||
</div>
|
||||
|
||||
### Step 4: Deploy the SSH key to GitHub repository
|
||||
|
|
@ -88,17 +82,13 @@ Enter the **SSH URL** of the repository (obtained in Step 2) in the **Git reposi
|
|||
Go to the **Settings** tab of the GitHub repository that you created in Step 1, and click on the **Deploy keys** tab. Click on the **Add deploy key** button.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/github3.png" alt="GitHub" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/github3.png" alt="GitSync" />
|
||||
</div>
|
||||
|
||||
Enter a title for the SSH key in the **Title** field. Paste the SSH key that you copied in Step 3 in the **Key** field. Make sure that the **Allow write access** checkbox is checked, especially when configuring the GitSync feature to [push changes to Git](#pushing-changes-to-git-repo). However, it is not mandatory to check this option when setting up the GitSync feature for [pulling changes from Git](#pulling-changes-from-git-repo). Finally, click on the **Add key** button.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/github4.png" alt="GitHub" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/github4.png" alt="GitSync" />
|
||||
</div>
|
||||
|
||||
### Step 5: Finish the GitSync configuration on ToolJet
|
||||
|
|
@ -106,10 +96,25 @@ Enter a title for the SSH key in the **Title** field. Paste the SSH key that you
|
|||
Go back to the **Configure git** tab on ToolJet, and click on the **Finalize setup** button. If the SSH key is configured correctly, you will see a success message.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/git5.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/git55.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
## Auto-commit on promoting environment
|
||||
|
||||
When you promote an environment, from **Developement to Staging** or from **Staging to Production**, the changes will be automatically committed to the git repository. The commit message will be `<version_number> Version of <app_name> promoted from <source_environment> to <destination_environment>`. The author will be the user who promoted the environment.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/promoted.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
This option can be enabled or disabled from the **Configure git** tab on the **Workspace settings** page. By default, this option is disabled.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/autocommit.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
## Enable/Disable GitSync
|
||||
|
||||
|
|
@ -124,10 +129,9 @@ On clicking the GitSync button, the users will be able to commit changes to the
|
|||
2. For admin users: The users will see a dialogue box with a link to configure the GitSync feature.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/connect.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/connect.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
## Delete GitSync configuration
|
||||
|
||||
|
|
@ -137,10 +141,9 @@ To delete the GitSync configuration, go to the **Configure git** tab on the **Wo
|
|||
- Deleting the GitSync configuration will not delete the apps from the git repository. The apps will still be available in the git repository in the same state as they were before the GitSync configuration was deleted.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/deleteconfig.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/deleteconfig.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
## Git repo
|
||||
|
||||
|
|
@ -149,10 +152,9 @@ Once the initial commit is made, you can see the app files in the git repository
|
|||
The **meta.json** file holds information about apps such as the **App name**, **last commit message**, **last commit user**, **last commit date**, **version name**, and **version id**.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/gitcommit.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/gitcommit.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
## Pushing changes to git repo
|
||||
|
||||
|
|
@ -167,29 +169,25 @@ If the app name is same as the name of the existing app in the git repo, it will
|
|||
:::
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/commitchanges.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/commitchanges.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
Selecting the `Commit changes` option will create a new commit in the git repository. The commit message will be `App creation` and the author will be the user who created the app.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/firstcommit.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/firstcommit.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
### App rename
|
||||
|
||||
Whenever an app is renamed, the changes will be automatically committed to the git repository. The commit message will be `App is renamed` and the author will be the user who renamed the app.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/rename.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/rename.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
### App updates
|
||||
|
||||
|
|
@ -198,19 +196,16 @@ Whenever a user makes a change in an app, they can make a commit to the git repo
|
|||
**Last commit details** helps the user to know the last commit message, author, date, and time. This helps the user to know the last commit details and make the commit message accordingly.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/modalgit.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/modalgit.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
Once the changes are committed, the user can see the commit message, author, and date in the git repository.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/commitgitsync.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/commitgitsync.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
### App deletion
|
||||
|
||||
|
|
@ -221,10 +216,9 @@ Whenever a user deleted an app from the workspace, the app will not be deleted f
|
|||
Whenever a user creates a new app version and creates a commit to git repository, the **JSON** file in the app folder will be replaced with the new version of the app that was created. The **meta.json** file in the **.meta** folder will also be updated with the new version id and version name.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/replace.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/replace.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
## Pulling changes from git repo
|
||||
|
||||
|
|
@ -233,9 +227,7 @@ You can configure the GitSync feature on another workspace to pull the changes f
|
|||
Once the GitSync feature is configured, go to the ToolJet dashboard and click on the three dots on the right side of the **Create new app** button. Click on the **Import from git repository** option.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/importgit.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/importgit.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
|
|
@ -248,20 +240,18 @@ On clicking the **Import from git repository** option, a modal will open with th
|
|||
:::
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/importmodal.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/importmodal.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
### Checking for updates
|
||||
|
||||
You can check for updates in the git repository by clicking on the **GitSync** button on the topbar. On clicking the **GitSync** button, a modal will open with the option to **Check for updates**. Click on the **Check for updates** button to check for updates in the git repository. If there are any updates, you will see the details of the updates such as commit message, author, and the date in the modal. Click on the **Pull changes** button to pull the changes from the git repository.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
|
||||
<img className="screenshot-full" src="/img/gitsync/updatecheck.png" alt="GitSync" />
|
||||
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/updatecheck.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
</TabItem>
|
||||
|
||||
|
|
@ -285,8 +275,9 @@ You can check for updates in the git repository by clicking on the **GitSync** b
|
|||
Create a new repository on GitLab. The repository can be public or private. You can also use an existing repository. **Make sure that the repository is empty**.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{padding: '10px', marginBottom:'15px', borderRadius: '6px' }} className="screenshot-full" src="/img/gitsync/gitlab/repo.png" alt="GitLab Repo" />
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/gitlab/repo.png" alt="GitLab Repo" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
</div>
|
||||
|
||||
|
|
@ -297,8 +288,9 @@ Create a new repository on GitLab. The repository can be public or private. You
|
|||
Obtain the **SSH URL** of the repository. On GitLab, you can obtain the URL by clicking on the **Clone** button and selecting the **SSH** option.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{padding: '10px', marginBottom:'15px', borderRadius: '6px' }} className="screenshot-full" src="/img/gitsync/gitlab/gitlabssh.png" alt="GitLab SSH" />
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/gitlab/gitlabssh.png" alt="GitLab Repo" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
</div>
|
||||
|
||||
|
|
@ -309,14 +301,20 @@ Obtain the **SSH URL** of the repository. On GitLab, you can obtain the URL by c
|
|||
Go to the **Workspace settings**, and click on the **Configure git** tab.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{padding: '10px', marginBottom:'15px', borderRadius: '6px' }} className="screenshot-full" src="/img/gitsync/gitsync.png" alt="GitLab SSH Key" />
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/gitsync.png" alt="GitLab Repo" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
Enter the **SSH URL** of the repository (obtained in Step 2) in the **Git repository URL** field. Click on the **Generate SSH key** button, and copy the SSH key that is generated. The SSH key is used to authenticate ToolJet with the gitlab repository.
|
||||
|
||||
There are two types of generated SSH keys: **
|
||||
- **ED25519**: This is a secure and efficient algorithm that is used for generating SSH keys. It is recommended to use this key type. VCS providers like GitHub and GitLab recommend using this key type
|
||||
- **RSA**: This is an older algorithm that is used for generating SSH keys. It is not recommended to use this key type. Older VCS providers like Bitbucket recommend using this key type.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{padding: '10px', marginBottom:'15px', borderRadius: '6px' }} className="screenshot-full" src="/img/gitsync/gitlab/sshkey.png" alt="GitLab SSH Key" />
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/ssh2.png" alt="GitLab Repo" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
</div>
|
||||
|
||||
|
|
@ -327,17 +325,16 @@ Enter the **SSH URL** of the repository (obtained in Step 2) in the **Git reposi
|
|||
From the top-left corner, click on the user avatar and select the **Edit Profile** option. Navigate to the **SSH Keys** tab and click on the **Add new key** button.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{padding: '10px', marginBottom:'15px', borderRadius: '6px' }} className="screenshot-full" src="/img/gitsync/gitlab/addingssh.png" alt="GitLab SSH Key" />
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/gitlab/addingssh.png" alt="GitLab SSH Key" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
Paste the SSH key that you copied in Step 3 in the **Key** field, enter a title for the SSH key in the **Title** field, set **Usage type** to **Authenticatioin & signing**, and set the ***Expiration date(optional)**. Finally, click on the **Add key** button.
|
||||
|
||||
<!--
|
||||
Enter a title for the SSH key in the **Title** field. Paste the SSH key that you copied in Step 3 in the **Key** field. Make sure that the **Allow write access** checkbox is checked, especially when configuring the GitSync feature to [push changes to Git](#pushing-changes-to-git-repo). However, it is not mandatory to check this option when setting up the GitSync feature for [pulling changes from Git](#pulling-changes-from-git-repo). Finally, click on the **Add key** button. -->
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{padding: '10px', marginBottom:'15px', borderRadius: '6px' }} className="screenshot-full" src="/img/gitsync/gitlab/activessh.png" alt="GitLab SSH Key" />
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/gitlab/activessh.png" alt="GitLab SSH Key" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
</div>
|
||||
|
||||
|
|
@ -348,13 +345,25 @@ Enter a title for the SSH key in the **Title** field. Paste the SSH key that you
|
|||
Go back to the **Configure git** tab on ToolJet, and click on the **Finalize setup** button. If the SSH key is configured correctly, you will see a success message.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{padding: '10px', marginBottom:'15px', borderRadius: '6px' }} className="screenshot-full" src="/img/gitsync/gitlab/configfin.png" alt="GitLab SSH Key" />
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/gitlab/configfin.png" alt="GitLab SSH Key" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
## Auto-commit on promoting environment
|
||||
|
||||
When you promote an environment, from **Developement to Staging** or from **Staging to Production**, the changes will be automatically committed to the git repository. The commit message will be `<version_number> Version of <app_name> promoted from <source_environment> to <destination_environment>`. The author will be the user who promoted the environment.
|
||||
|
||||
This option can be enabled or disabled from the **Configure git** tab on the **Workspace settings** page. By default, this option is disabled.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/gitsync/autocommit.png" alt="GitSync" />
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
<div style={{paddingTop:'24px', paddingBottom:'24px'}}>
|
||||
|
||||
## Enable/Disable GitSync
|
||||
|
|
|
|||
|
|
@ -12,11 +12,13 @@ ToolJet allows you to execute various [actions](/docs/actions/show-alert) within
|
|||
**Syntax:**
|
||||
|
||||
```js
|
||||
queries.queryName.run();
|
||||
queries.getSalesData.run()
|
||||
// replace getSalesData with your query name
|
||||
```
|
||||
or
|
||||
```js
|
||||
await actions.runQuery('queryName');
|
||||
await actions.runQuery('getSalesData')
|
||||
// replace getSalesData with your query name
|
||||
```
|
||||
|
||||
**Example:**
|
||||
|
|
|
|||
103
docs/docs/how-to/use-url-params-on-load.md
Normal file
|
|
@ -0,0 +1,103 @@
|
|||
---
|
||||
id: use-url-params-on-load
|
||||
title: Use URL Parameters on page load
|
||||
---
|
||||
|
||||
In this guide, we will learn how to use URL parameters at the time of page load. The URL parameters are used to pass data from one page to another. Currently, we can add URL parameters in the following ways:
|
||||
|
||||
- From events through the [Switch page](/docs/actions/switch-page) action
|
||||
- From the [JavaScript code](/docs/actions/switch-page/#switch-page-with-query-params) queries
|
||||
|
||||
If a page is opened with URL parameters, you can access them using the `{{globals.urlparams}}`. This object contains all the URL parameters as key-value pairs and specific parameters can be accessed using the key like `{{globals.urlparams.<parameter_name>}}`.
|
||||
|
||||
Let's take a look at an example below to understand how to use URL parameters on page load.
|
||||
|
||||
## Using URL parameters on page load to execute REST API queries
|
||||
|
||||
Create two pages, `Home` and `Dashboard`. When a new app is created, a page named `Home` is created by default. Create a new page named `Dashboard` from the Pages menu in the left sidebar.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/how-to/use-url-params/pages.png" alt="Use URL Parameters on page load" />
|
||||
</div>
|
||||
|
||||
## Home and Dashboard Pages
|
||||
|
||||
Add a form component to the `Home` page. The form component will have a text input fields and a button. The text input field will be used to enter the name and the button will be used to navigate to the `Dashboard` page. Let's name the text input field as `email` and the button as `Submit`.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/how-to/use-url-params/form.png" alt="Use URL Parameters on page load" />
|
||||
</div>
|
||||
|
||||
Select the button and add the event `On click`, select action `Switch page`, and then select the page `Dashboard`. Here, we will also find the option to add URL parameters. Add the URL parameter `email` and set the value to `{{components.form1.data.textinput1.value}}`. This will pass the value of the email input field to the `Dashboard` page as a URL parameter.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/how-to/use-url-params/event.png" alt="Use URL Parameters on page load" />
|
||||
</div>
|
||||
|
||||
Now, on clicking the `Submit` button, the `Dashboard` page will be opened with the URL parameter `email` containing the value of the email input field. You can open the Inspector on left sidebar and navigate to the `URL Params` under the `globals` to check the URL parameters.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/how-to/use-url-params/urlparams.png" alt="Use URL Parameters on page load" />
|
||||
</div>
|
||||
|
||||
## Queries and binding data
|
||||
|
||||
In the `Dashboard` page, add two table components. We will be loading the data from two different REST API queries on these tables.
|
||||
|
||||
### Query 1: Get products
|
||||
|
||||
- Create a new REST API query and name it as `products`. We will be using a mock REST API to fetch the data. The URL for the REST API is `https://fakestoreapi.com/products`. Run the query and check the preview to see the returned data.
|
||||
- Go to the `table1` properties, set the value of table data to `{{queries.products.data}}`. This will bind the data returned from the REST API query to the table.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/how-to/use-url-params/table1.png" alt="Use URL Parameters on page load" />
|
||||
</div>
|
||||
|
||||
### Query 2: Get user details
|
||||
|
||||
- Create a new REST API query and name it as `users`. We will be using a mock REST API to fetch the data. The URL for the REST API is `https://jsonplaceholder.typicode.com/users`. Run the query and check the preview to see the returned data.
|
||||
- Go to the `table2` properties, set the value of table data to `{{queries.users.data}}`. This will bind the data returned from the REST API query to the table.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/how-to/use-url-params/table2.png" alt="Use URL Parameters on page load" />
|
||||
</div>
|
||||
|
||||
### Query 3: JavaScript code to use URL parameters
|
||||
|
||||
- Create a new JavaScript code query and name it as `urlparams`. We will be using this query to access the URL parameters and to check if the email parameter is present in the URL, then trigger the REST API queries.
|
||||
|
||||
```javascript
|
||||
function waitForURLParams(timeout) { // Wait for URL parameters to be available
|
||||
const check = resolve => { // Check if URL parameters are available
|
||||
if (location.search.length > 0) resolve(); // URL parameters are available
|
||||
else setTimeout(_ => check(resolve), timeout); // Check again after a timeout
|
||||
}
|
||||
return new Promise(check); // Return a promise that resolves when URL parameters are available
|
||||
}
|
||||
|
||||
async function checkAndRunQuery(timeout) { // Check if URL parameters are available and run the REST API queries
|
||||
await waitForURLParams(timeout); // Wait for URL parameters to be available
|
||||
const urlParams = new URLSearchParams(window.location.search); // Get URL parameters
|
||||
|
||||
if (urlParams.get('email')) { // Check if email parameter is present in the URL
|
||||
await actions.runQuery('products'); // Run the REST API query to get products
|
||||
await actions.runQuery('users'); // Run the REST API query to get user details
|
||||
}
|
||||
else {
|
||||
alert('URL param not found'); // Alert if email parameter is not present in the URL
|
||||
}
|
||||
}
|
||||
|
||||
checkAndRunQuery(5000); // Check if URL parameters are available and run the REST API queries after a timeout of 5 seconds
|
||||
```
|
||||
|
||||
## Dashboard page event handler
|
||||
|
||||
- Finally, go to the Pages menu in the left sidebar and open the menu for the `Dashboard` page.
|
||||
- Select the option to add Event handler and add a new `On page load`, select the option to `Run query` and select the query `urlparams`. This will trigger the JavaScript code query to check if the email parameter is present in the URL and then run the REST API queries whenever the `Dashboard` page is loaded.
|
||||
|
||||
<div style={{textAlign: 'center'}}>
|
||||
<img style={{ border:'0', marginBottom:'15px', borderRadius:'5px', boxShadow: '0px 1px 3px rgba(0, 0, 0, 0.2)' }} className="screenshot-full" src="/img/how-to/use-url-params/onpageload.png" alt="Use URL Parameters on page load" />
|
||||
</div>
|
||||
|
||||
Now, whenever the user will enter the email in the `Home` page and click the `Submit` button, the `Dashboard` page will be opened with the URL parameter `email` containing the value of the email input field. The JavaScript code query will check if the email parameter is present in the URL and then run the REST API queries to fetch the data. The data will be displayed in the tables on the `Dashboard` page.
|
||||
|
|
@ -69,19 +69,19 @@ Please note that you need to set up a PostgreSQL database manually to be used by
|
|||
|
||||
You can access ToolJet via the application URL provided in the overview tab.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
||||
|
|
|
|||
|
|
@ -97,18 +97,18 @@ Summarising the steps below:
|
|||
cd tooljet-assets && gcloud app deploy
|
||||
```
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
|
|||
|
|
@ -108,18 +108,18 @@ Follow the steps below to deploy ToolJet Database on DigitalOcean:
|
|||
|
||||
5. Update your existing ToolJet application deployment with [environment variables](/docs/setup/env-vars#enable-tooljet-database--optional-) required for PostgREST.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
|
|||
|
|
@ -38,17 +38,18 @@ Confused about which setup to select? Feel free to ask the community via Slack:
|
|||
curl -LO https://tooljet-deployments.s3.us-west-1.amazonaws.com/docker/docker-compose-db.yaml
|
||||
mv docker-compose-db.yaml docker-compose.yaml
|
||||
mkdir postgres_data
|
||||
mkdir redis_data
|
||||
```
|
||||
|
||||
2. Create `.env` file in the current directory (where the docker-compose.yaml file is downloaded as in step 1):
|
||||
|
||||
```bash
|
||||
```bash
|
||||
curl -LO https://tooljet-deployments.s3.us-west-1.amazonaws.com/docker/.env.internal.example
|
||||
curl -LO https://tooljet-deployments.s3.us-west-1.amazonaws.com/docker/internal.sh && chmod +x internal.sh
|
||||
mv .env.internal.example .env && ./internal.sh
|
||||
```
|
||||
|
||||
`internal.sh` helps to generate the basic .env variables such as the LOCKBOX_MASTER_KEY, SECRET_KEY_BASE, and the password for postgreSQL database.
|
||||
|
||||
3. To start the docker container, use the following command:
|
||||
|
||||
```bash
|
||||
|
|
@ -84,7 +85,6 @@ Confused about which setup to select? Feel free to ask the community via Slack:
|
|||
2. Download our production docker-compose file into the server.
|
||||
```bash
|
||||
curl -LO https://tooljet-deployments.s3.us-west-1.amazonaws.com/docker/docker-compose.yaml
|
||||
mkdir redis_data
|
||||
```
|
||||
|
||||
3. Create `.env` file in the current directory (where the docker-compose.yaml file is downloaded as in step 1):
|
||||
|
|
@ -143,19 +143,19 @@ cat your_dump.sql | docker exec -i --user postgres <postgres-db-container-name>
|
|||
```
|
||||
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
||||
|
|
|
|||
|
|
@ -86,19 +86,19 @@ ToolJet AMI comes inbuilt with PostgREST. If you intend to use this feature, you
|
|||
|
||||
You can learn more about this feature [here](/docs/tooljet-database).
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
||||
|
|
|
|||
|
|
@ -227,19 +227,19 @@ Follow the steps below to deploy PostgREST on a ECS cluster.
|
|||
|
||||
Update ToolJet deployment with the appropriate env variables [here](https://docs.tooljet.com/docs/setup/env-vars/#enable-tooljet-database--optional-) and apply the changes.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
||||
|
|
|
|||
|
|
@ -165,18 +165,18 @@ Once the Service is created and live, to make the Cloud Service URL public. Ple
|
|||
</div>
|
||||
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -35,18 +35,18 @@ If you plan to use this feature, you need to set up and deploy the PostgREST ser
|
|||
|
||||
To enable the ToolJet database, please set the environment variable `ENABLE_TOOLJET_DB` to true in the `values.yaml` file.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -54,18 +54,18 @@ If you intend to use this feature, you'd have to set up and deploy PostgREST ser
|
|||
|
||||
2. Update ToolJet deployment with the appropriate env variables [here](https://tooljet-deployments.s3.us-west-1.amazonaws.com/kubernetes/AKS/deployment.yaml) and apply the changes.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
|
|||
|
|
@ -80,18 +80,18 @@ If you intend to use this feature, you'd have to set up and deploy PostgREST ser
|
|||
|
||||
2. Update ToolJet deployment with the appropriate env variables [here](https://tooljet-deployments.s3.us-west-1.amazonaws.com/kubernetes/GKE/deployment.yaml) and apply the changes.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
|
|||
|
|
@ -63,18 +63,18 @@ If you intend to use this feature, you'd have to set up and deploy PostgREST ser
|
|||
|
||||
2. Update ToolJet deployment with the appropriate env variables [here](https://tooljet-deployments.s3.us-west-1.amazonaws.com/kubernetes/deployment.yaml) and apply the changes.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
|
|||
|
|
@ -69,18 +69,18 @@ If you intend to use this feature, you'd have to set up and deploy PostgREST ser
|
|||
https://tooljet-deployments.s3.us-west-1.amazonaws.com/openshift/postgrest.yaml
|
||||
```
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
|
|||
31
docs/docs/setup/system-requirements.md
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
---
|
||||
id: system-requirements
|
||||
title: System Requirements
|
||||
---
|
||||
|
||||
This page details the system requirements for setting up and running our software, including both Docker local setups and server deployments. Tailor your setup to match these requirements for optimal performance.
|
||||
|
||||
## Docker Local Setup Requirements
|
||||
|
||||
#### Windows
|
||||
For users setting up Docker locally on a Windows machine:
|
||||
- **RAM**: Minimum of 16GB RAM is required.
|
||||
|
||||
#### Mac
|
||||
For Docker setups on Mac systems:
|
||||
- **RAM**: It is recommended to have 16GB RAM.
|
||||
|
||||
## Server Requirements
|
||||
|
||||
The basic requirements for server setups are as follows:
|
||||
- **RAM**: Minimum of 2GB.
|
||||
- **CPU**: At least 1 CPU core.
|
||||
|
||||
Adjustments can be made based on specific needs and the expected load on the server.
|
||||
|
||||
## Bare-Metal Setup
|
||||
|
||||
For those opting for a **[bare-metal setup](/docs/contributing-guide/setup/docker)** instead of Docker:
|
||||
- **RAM**: 8GB RAM is sufficient for a bare-metal setup.
|
||||
|
||||
Please ensure your system meets these requirements before proceeding with the installation. Adjustments to the server specifications should be made considering the specific demands of your deployment scenario.
|
||||
|
|
@ -20,19 +20,19 @@ You'll need to setup the following environment variables if ToolJet installation
|
|||
See all **[Environment Variables](/docs/setup/env-vars)** here.
|
||||
:::
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
- It is **crucial to perform a comprehensive backup of your database** before starting the upgrade process to prevent data loss.
|
||||
|
||||
- Ensure that your current version is v2.23.0-ee2.10.2 before upgrading.
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.0-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
||||
|
|
|
|||
|
|
@ -197,7 +197,7 @@ This column type is automatically selected by default when a column is added or
|
|||
| Column name | Specify the name to be displayed on the table column header |
|
||||
| Overflow | Manage the handling of content that exceeds the cell dimensions. `Wrap` wraps the content onto the next line within the cell, `Scroll` enables scrolling for content that exceeds the cell, and `Hide` conceals content that goes beyond the cell boundary. |
|
||||
| Key | Specify the key name associated with the loaded data in the table. If no key is provided, the `Column name` is used as the key for that column. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can change use a JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can use JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Text color | Modify the color of the text in the column. You can use a hex color code or color name. The value can be dynamically assigned using JS. Refer to the [how-to guide](/docs/how-to/access-cellvalue-rowdata). |
|
||||
| Cell background color | Adjust the background color of the cell in the column. You can utilize a hex color code or color name. The value can be dynamically assigned using JS. |
|
||||
| Make editable | This option is disabled by default. Enabling it allows the column to be edited by app users. Its value can also be dynamically set to `{{true}}` or `{{false}}` to toggle it on or off. |
|
||||
|
|
@ -211,7 +211,7 @@ Selecting the column type as **Number** will only load numerical data in the col
|
|||
| ----------- | ----------- |
|
||||
| Column name | Specify the name to be displayed on the table column header |
|
||||
| Key | Specify the key name associated with the loaded data in the table. If no key is provided, the `Column name` is used as the key for that column. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can change use a JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can use JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. |
|
||||
| Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Make editable | This option is disabled by default. Enabling it allows the column to be edited by app users. Its value can also be dynamically set to `{{true}}` or `{{false}}` to toggle it on or off. |
|
||||
| Column Visibility | This option is enabled by default. Disabling it hides the column from the table. Its value can also be dynamically set to `{{true}}` or `{{false}}` to show or hide the column. |
|
||||
|
|
@ -230,7 +230,7 @@ The **Badge** column type is utilized to exhibit labels on the columns using the
|
|||
| ----------- | ----------- |
|
||||
| Column name | Specify the name to be displayed on the table column header |
|
||||
| Key | Specify the key name associated with the loaded data in the table. If no key is provided, the `Column name` is used as the key for that column. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can change use a JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can use JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Values | Provide the values for the badge as an array |
|
||||
| Labels | Provide the labels for the values in the badge as an array |
|
||||
| Make editable | This option is disabled by default. Enabling it allows the column to be edited by app users. Its value can also be dynamically set to `{{true}}` or `{{false}}` to toggle it on or off. |
|
||||
|
|
@ -250,7 +250,7 @@ Similar to the **Badge** column type, the **Multiple Badges** type is used to di
|
|||
| ----------- | ----------- |
|
||||
| Column name | Specify the name to be displayed on the table column header |
|
||||
| Key | Specify the key name associated with the loaded data in the table. If no key is provided, the `Column name` is used as the key for that column. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can change use a JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can use JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Values | Provide the values for the multiple badges as an array |
|
||||
| Labels | Provide the labels for the values in the multiple badges as an array |
|
||||
| Make editable | This option is disabled by default. Enabling it allows the column to be edited by app users. Its value can also be dynamically set to `{{true}}` or `{{false}}` to toggle it on or off. |
|
||||
|
|
@ -270,7 +270,7 @@ The **Tags** column type is utilized to display tags within the column cells usi
|
|||
| ----------- | ----------- |
|
||||
| Column name | Specify the name to be displayed on the table column header |
|
||||
| Key | Specify the key name associated with the loaded data in the table. If no key is provided, the `Column name` is used as the key for that column. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can change use a JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can use JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Make editable | This option is disabled by default. Enabling it allows the column to be edited by app users. Its value can also be dynamically set to `{{true}}` or `{{false}}` to toggle it on or off. |
|
||||
| Column Visibility | This option is enabled by default. Disabling it hides the column from the table. Its value can also be dynamically set to `{{true}}` or `{{false}}` to show or hide the column. |
|
||||
|
||||
|
|
@ -288,7 +288,7 @@ The **Dropdown** column type is used to display a dropdown in the column cells u
|
|||
| ----------- | ----------- |
|
||||
| Column name | Specify the name to be displayed on the table column header |
|
||||
| Key | Specify the key name associated with the loaded data in the table. If no key is provided, the `Column name` is used as the key for that column. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can change use a JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can use JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Values | Provide the values for the dropdown as an array |
|
||||
| Labels | Provide the labels for the values in the dropdown as an array |
|
||||
| Make editable | This option is disabled by default. Enabling it allows the column to be edited by app users. Its value can also be dynamically set to `{{true}}` or `{{false}}` to toggle it on or off. |
|
||||
|
|
@ -308,7 +308,7 @@ The **Radio** column type is used to show radio buttons in the column cells usin
|
|||
| ----------- | ----------- |
|
||||
| Column name | Specify the name to be displayed on the table column header |
|
||||
| Key | Specify the key name associated with the loaded data in the table. If no key is provided, the `Column name` is used as the key for that column. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can change use a JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can use JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Values | Provide the values for the radio as an array |
|
||||
| Labels | Provide the labels for the values in the radio as an array |
|
||||
| Make editable | This option is disabled by default. Enabling it allows the column to be edited by app users. Its value can also be dynamically set to `{{true}}` or `{{false}}` to toggle it on or off. |
|
||||
|
|
@ -328,7 +328,7 @@ The **Multiselect** column type is used to show a multiselect dropdown in the co
|
|||
| ----------- | ----------- |
|
||||
| Column name | Specify the name to be displayed on the table column header |
|
||||
| Key | Specify the key name associated with the loaded data in the table. If no key is provided, the `Column name` is used as the key for that column. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can change use a JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can use JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Values | Provide the values for the multiselect as an array |
|
||||
| Labels | Provide the labels for the values in the multiselect as an array |
|
||||
| Make editable | This option is disabled by default. Enabling it allows the column to be edited by app users. Its value can also be dynamically set to `{{true}}` or `{{false}}` to toggle it on or off. |
|
||||
|
|
@ -348,7 +348,7 @@ The **Toggle Switch** column type is used to display a toggle switch in the colu
|
|||
| ----------- | ----------- |
|
||||
| Column name | Specify the name to be displayed on the table column header |
|
||||
| Key | Specify the key name associated with the loaded data in the table. If no key is provided, the `Column name` is used as the key for that column. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can change use a JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Transformation | Allows you to transform the data of a cell value. The default value will be `{{cellValue}}`. You can use JavaScript code to dynamically generate a value. For instance, to round off a value, you can use <br/>`{{cellValue > 4.5 ? 5 : 4}}`. || Horizontal alignment | Positions content left, center, or right within table column cells for improved readability and visual presentation. |
|
||||
| Active color | Set the color of the toggle switch when it is active using this property. |
|
||||
| + Add Event Handler | Add an event handler to perform actions whenever the toggle switch is turned on or off. |
|
||||
| Make editable | This option is disabled by default. Enabling it allows the column to be edited by app users. Its value can also be dynamically set to `{{true}}` or `{{false}}` to toggle it on or off. |
|
||||
|
|
|
|||
|
|
@ -49,6 +49,7 @@ const sidebars = {
|
|||
},
|
||||
'items': [
|
||||
'setup/try-tooljet',
|
||||
'setup/system-requirements',
|
||||
'setup/digitalocean',
|
||||
'setup/docker',
|
||||
'setup/ec2',
|
||||
|
|
@ -185,6 +186,7 @@ const sidebars = {
|
|||
'type': 'category',
|
||||
'label': 'How To',
|
||||
'items': [
|
||||
'how-to/use-url-params-on-load',
|
||||
'how-to/use-custom-parameters',
|
||||
'how-to/setup-rsyslog',
|
||||
'how-to/use-inspector',
|
||||
|
|
|
|||
BIN
docs/static/img/actions/localstorage/add-components.png
vendored
Normal file
|
After Width: | Height: | Size: 292 KiB |
BIN
docs/static/img/actions/localstorage/create-runjs-query.png
vendored
Normal file
|
After Width: | Height: | Size: 253 KiB |
BIN
docs/static/img/actions/localstorage/set-local-storage.png
vendored
Normal file
|
After Width: | Height: | Size: 343 KiB |
BIN
docs/static/img/actions/localstorage/update-text-component.png
vendored
Normal file
|
After Width: | Height: | Size: 260 KiB |
BIN
docs/static/img/actions/localstorage/update-text-on-button-click.png
vendored
Normal file
|
After Width: | Height: | Size: 289 KiB |
BIN
docs/static/img/datasource-reference/custom-python/add-run-py.png
vendored
Normal file
|
After Width: | Height: | Size: 438 KiB |
BIN
docs/static/img/gitsync/autocommit.png
vendored
Normal file
|
After Width: | Height: | Size: 390 KiB |
BIN
docs/static/img/gitsync/git55.png
vendored
Normal file
|
After Width: | Height: | Size: 388 KiB |
BIN
docs/static/img/gitsync/promoted.png
vendored
Normal file
|
After Width: | Height: | Size: 326 KiB |
BIN
docs/static/img/gitsync/ssh2.png
vendored
Normal file
|
After Width: | Height: | Size: 354 KiB |
BIN
docs/static/img/how-to/use-url-params/event.png
vendored
Normal file
|
After Width: | Height: | Size: 365 KiB |
BIN
docs/static/img/how-to/use-url-params/form.png
vendored
Normal file
|
After Width: | Height: | Size: 303 KiB |
BIN
docs/static/img/how-to/use-url-params/onpageload.png
vendored
Normal file
|
After Width: | Height: | Size: 528 KiB |
BIN
docs/static/img/how-to/use-url-params/pages.png
vendored
Normal file
|
After Width: | Height: | Size: 310 KiB |
BIN
docs/static/img/how-to/use-url-params/table1.png
vendored
Normal file
|
After Width: | Height: | Size: 688 KiB |
BIN
docs/static/img/how-to/use-url-params/table2.png
vendored
Normal file
|
After Width: | Height: | Size: 718 KiB |
BIN
docs/static/img/how-to/use-url-params/urlparams.png
vendored
Normal file
|
After Width: | Height: | Size: 196 KiB |
|
|
@ -8,7 +8,7 @@ title: Docker
|
|||
Docker compose is the easiest way to setup ToolJet server and client locally.
|
||||
|
||||
:::info
|
||||
If you rather want to try out ToolJet locally with docker, you can follow the steps [here](https://docs.tooljet.com/docs/setup/docker-local).
|
||||
If you rather want to try out ToolJet locally with docker, you can follow the steps [here](https://docs.tooljet.com/docs/setup/try-tooljet).
|
||||
:::
|
||||
|
||||
## Prerequisites
|
||||
|
|
|
|||
|
|
@ -100,7 +100,7 @@ Follow these steps to setup and run ToolJet on macOS for development purposes. O
|
|||
cd ./frontend && npm start
|
||||
```
|
||||
|
||||
The client will start on the port 8082, you can access the client by visiting: [https://localhost:8082](https://localhost:8082)
|
||||
The client will start on the port 8082, you can access the client by visiting: [http://localhost:8082](http://localhost:8082)
|
||||
|
||||
9. Create login credentials
|
||||
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@ Follow these steps to setup and run ToolJet on Ubuntu. Open terminal and run the
|
|||
```
|
||||
|
||||
|
||||
The client will start running on the port 8082, you can access the client by visiting: [https://localhost:8082](https://localhost:8082)
|
||||
The client will start running on the port 8082, you can access the client by visiting: [http://localhost:8082](http://localhost:8082)
|
||||
|
||||
9. Create login credentials
|
||||
|
||||
|
|
|
|||
|
|
@ -66,11 +66,11 @@ Please note that you need to set up a PostgreSQL database manually to be used by
|
|||
|
||||
You can access ToolJet via the application URL provided in the overview tab.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -78,6 +78,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -97,11 +97,11 @@ Summarising the steps below:
|
|||
cd tooljet-assets && gcloud app deploy
|
||||
```
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -109,6 +109,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -44,11 +44,11 @@ Now you can quickly deploy ToolJet using the Deploy to DigitalOcean button.
|
|||
ToolJet server and client can be deployed as standalone applications. If you do not want to deploy the client on DigitalOcean, modify `package.json` accordingly. We have a [guide](/docs/setup/client) on deploying ToolJet client using services such as Firebase.
|
||||
:::
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -56,6 +56,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -131,11 +131,11 @@ Confused about which setup to select? Feel free to ask the community via Slack:
|
|||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -143,7 +143,7 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
||||
|
|
@ -151,4 +151,3 @@ For specific issues or questions, refer to our **[Slack](https://tooljet.slack.c
|
|||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -73,11 +73,11 @@ Follow the steps below to deploy ToolJet on AWS EC2 instances.
|
|||
|
||||
12. You're all done, ToolJet client would now be served at the value you've set in `TOOLJET_HOST`.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -85,6 +85,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -95,11 +95,11 @@ The setup above is just a template. Feel free to update the task definition and
|
|||
- email: `dev@tooljet.io`
|
||||
- password: `password`
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -107,6 +107,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -143,11 +143,11 @@ The deployment will fail as it only runs a seed script. Check logs to see that d
|
|||
|
||||
The default username of the admin is `dev@tooljet.io` and the password is `password`.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -155,6 +155,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -35,11 +35,11 @@ If you plan to use this feature, you need to set up and deploy the PostgREST ser
|
|||
|
||||
To enable the ToolJet database, please set the environment variable `ENABLE_TOOLJET_DB` to true in the `values.yaml` file.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -47,6 +47,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -62,11 +62,11 @@ The one click deployment will create a **free dyno** and a **free postgresql dat
|
|||
ToolJet server and client can be deployed as standalone applications. If you do not want to deploy the client on Heroku, modify `package.json` accordingly. We have a [guide](/docs/setup/client) on deploying ToolJet client using services such as Firebase.
|
||||
:::
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -74,6 +74,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -50,11 +50,11 @@ This seeds the database with a default user with the following credentials:
|
|||
|
||||
**password**: `password`
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -62,6 +62,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -75,11 +75,11 @@ This seeds the database with a default user with the following credentials:
|
|||
|
||||
**password**: `password`
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -87,6 +87,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -50,11 +50,11 @@ If there are self signed HTTPS endpoints that Tooljet needs to connect to, pleas
|
|||
If you want to serve ToolJet client from services such as Firebase or Netlify, please read the client Setup documentation **[here](/docs/setup/client)**.
|
||||
:::
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -62,6 +62,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -20,11 +20,11 @@ You'll need to setup the following environment variables if ToolJet installation
|
|||
See all **[Environment Variables](/docs/setup/env-vars)** here.
|
||||
:::
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -32,8 +32,7 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ title: Docker
|
|||
Docker compose is the easiest way to setup ToolJet server and client locally.
|
||||
|
||||
:::info
|
||||
If you rather want to try out ToolJet locally with docker, you can follow the steps [here](https://docs.tooljet.com/docs/setup/docker-local).
|
||||
If you rather want to try out ToolJet locally with docker, you can follow the steps [here](https://docs.tooljet.com/docs/setup/try-tooljet).
|
||||
:::
|
||||
|
||||
## Prerequisites
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@ Follow these steps to setup and run ToolJet on macOS for development purposes. O
|
|||
cd ./frontend && npm start
|
||||
```
|
||||
|
||||
The client will start on the port 8082, you can access the client by visiting: [https://localhost:8082](https://localhost:8082)
|
||||
The client will start on the port 8082, you can access the client by visiting: [http://localhost:8082](http://localhost:8082)
|
||||
|
||||
9. Create login credentials
|
||||
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ Follow these steps to setup and run ToolJet on Ubuntu. Open terminal and run the
|
|||
```
|
||||
|
||||
|
||||
The client will start running on the port 8082, you can access the client by visiting: [https://localhost:8082](https://localhost:8082)
|
||||
The client will start running on the port 8082, you can access the client by visiting: [http://localhost:8082](http://localhost:8082)
|
||||
|
||||
9. Create login credentials
|
||||
|
||||
|
|
|
|||
|
|
@ -66,11 +66,11 @@ Please note that you need to set up a PostgreSQL database manually to be used by
|
|||
|
||||
You can access ToolJet via the application URL provided in the overview tab.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -78,6 +78,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -97,11 +97,11 @@ Summarising the steps below:
|
|||
cd tooljet-assets && gcloud app deploy
|
||||
```
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -109,6 +109,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -65,11 +65,11 @@ Follow the steps below to deploy ToolJet Database on DigitalOcean:
|
|||
|
||||
5. Update your existing ToolJet application deployment with [environment variables](/docs/setup/env-vars#tooljet-database-feature-enable--optional-) required for PostgREST.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -77,6 +77,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -131,11 +131,11 @@ Confused about which setup to select? Feel free to ask the community via Slack:
|
|||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -143,7 +143,7 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
||||
|
|
@ -151,4 +151,3 @@ For specific issues or questions, refer to our **[Slack](https://tooljet.slack.c
|
|||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -79,11 +79,11 @@ ToolJet AMI comes inbuilt with PostgREST. If you intend to use this feature, you
|
|||
|
||||
You can learn more about this feature [here](/docs/tooljet-database).
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
||||
|
|
@ -99,4 +99,3 @@ For specific issues or questions, refer to our **[Slack](https://tooljet.slack.c
|
|||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -77,11 +77,11 @@ Follow the steps below to deploy ToolJet on a ECS cluster.
|
|||
The setup above is just a template. Feel free to update the task definition and configure parameters for resources and environment variables according to your needs.
|
||||
:::
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -89,6 +89,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -153,11 +153,11 @@ Once the Service is created and live, to make the Cloud Service URL public. Ple
|
|||
</div>
|
||||
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -165,6 +165,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -35,11 +35,11 @@ If you plan to use this feature, you need to set up and deploy the PostgREST ser
|
|||
|
||||
To enable the ToolJet database, please set the environment variable `ENABLE_TOOLJET_DB` to true in the `values.yaml` file.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -47,6 +47,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -144,11 +144,11 @@ Please install Heroku CLI on your local machine. Please refer Heroku CLI install
|
|||
|
||||
Please enter the below env variables in the Tooljet application, under the setting tab. You can also refer environment variable [**here**](/docs/setup/env-vars#tooljet-database).
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -156,6 +156,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -54,11 +54,11 @@ If you intend to use this feature, you'd have to set up and deploy PostgREST ser
|
|||
|
||||
2. Update ToolJet deployment with the appropriate env variables [here](https://raw.githubusercontent.com/ToolJet/ToolJet/main/deploy/kubernetes/AKS/deployment.yaml) and apply the changes.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -66,6 +66,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -80,11 +80,11 @@ If you intend to use this feature, you'd have to set up and deploy PostgREST ser
|
|||
|
||||
2. Update ToolJet deployment with the appropriate env variables [here](https://raw.githubusercontent.com/ToolJet/ToolJet/main/deploy/kubernetes/GKE/deployment.yaml) and apply the changes.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -92,6 +92,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -62,11 +62,11 @@ If you intend to use this feature, you'd have to set up and deploy PostgREST ser
|
|||
|
||||
2. Update ToolJet deployment with the appropriate env variables [here](https://raw.githubusercontent.com/ToolJet/ToolJet/main/deploy/kubernetes/deployment.yaml) and apply the changes.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -74,6 +74,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -69,11 +69,11 @@ If you intend to use this feature, you'd have to set up and deploy PostgREST ser
|
|||
https://raw.githubusercontent.com/ToolJet/ToolJet/main/deploy/openshift/postgrest.yaml
|
||||
```
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -81,6 +81,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -20,11 +20,11 @@ You'll need to setup the following environment variables if ToolJet installation
|
|||
See all **[Environment Variables](/docs/setup/env-vars)** here.
|
||||
:::
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -32,8 +32,7 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ title: Docker
|
|||
Docker compose is the easiest way to setup ToolJet server and client locally.
|
||||
|
||||
:::info
|
||||
If you rather want to try out ToolJet locally with docker, you can follow the steps [here](https://docs.tooljet.com/docs/setup/docker-local).
|
||||
If you rather want to try out ToolJet locally with docker, you can follow the steps [here](https://docs.tooljet.com/docs/setup/try-tooljet).
|
||||
:::
|
||||
|
||||
## Prerequisites
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@ Follow these steps to setup and run ToolJet on macOS for development purposes. O
|
|||
cd ./frontend && npm start
|
||||
```
|
||||
|
||||
The client will start on the port 8082, you can access the client by visiting: [https://localhost:8082](https://localhost:8082)
|
||||
The client will start on the port 8082, you can access the client by visiting: [http://localhost:8082](http://localhost:8082)
|
||||
|
||||
9. Create login credentials
|
||||
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ Follow these steps to setup and run ToolJet on Ubuntu. Open terminal and run the
|
|||
```
|
||||
|
||||
|
||||
The client will start running on the port 8082, you can access the client by visiting: [https://localhost:8082](https://localhost:8082)
|
||||
The client will start running on the port 8082, you can access the client by visiting: [http://localhost:8082](http://localhost:8082)
|
||||
|
||||
9. Create login credentials
|
||||
|
||||
|
|
|
|||
|
|
@ -66,11 +66,11 @@ Please note that you need to set up a PostgreSQL database manually to be used by
|
|||
|
||||
You can access ToolJet via the application URL provided in the overview tab.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -78,6 +78,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -97,11 +97,11 @@ Summarising the steps below:
|
|||
cd tooljet-assets && gcloud app deploy
|
||||
```
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -109,6 +109,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||
|
|
@ -65,11 +65,11 @@ Follow the steps below to deploy ToolJet Database on DigitalOcean:
|
|||
|
||||
5. Update your existing ToolJet application deployment with [environment variables](/docs/setup/env-vars#tooljet-database-feature-enable--optional-) required for PostgREST.
|
||||
|
||||
## Upgrading to v2.24.3-ee2.10.2
|
||||
## Upgrading to the Latest Version
|
||||
|
||||
Version v2.24.3-ee2.10.2 includes architectural changes and, hence, comes with new migrations.
|
||||
The latest version includes architectural changes and, hence, comes with new migrations.
|
||||
|
||||
If this is a new installation of the application, you may start directly with version v2.24.3-ee2.10.2. This guide is not required for new installations.
|
||||
If this is a new installation of the application, you may start directly with the latest version. This guide is not required for new installations.
|
||||
|
||||
#### Prerequisites for Upgrading to the Latest Version:
|
||||
|
||||
|
|
@ -77,6 +77,6 @@ If this is a new installation of the application, you may start directly with ve
|
|||
|
||||
- Ensure that your current version is v2.23.3-ee2.10.2 before upgrading.
|
||||
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to v2.24.3-ee2.10.2.
|
||||
- Users on versions earlier than v2.23.3-ee2.10.2 must first upgrade to this version before proceeding to the latest version.
|
||||
|
||||
For specific issues or questions, refer to our **[Slack](https://tooljet.slack.com/join/shared_invite/zt-25438diev-mJ6LIZpJevG0LXCEcL0NhQ#)**.
|
||||