From 4369910eb5023a4581966455629733052d6a4379 Mon Sep 17 00:00:00 2001 From: amanchopra1905 Date: Thu, 30 Jan 2025 19:37:46 +0530 Subject: [PATCH 1/2] deleted TAS Files --- docs/tas-configurations-framework.md | 36 -- docs/tas-configurations-managing-secrets.md | 75 ---- docs/tas-configuring-tas-yml.md | 337 ------------------ docs/tas-faq.md | 111 ------ ...tas-getting-started-creating-an-account.md | 51 --- ...ing-started-integrating-your-first-repo.md | 61 ---- docs/tas-how-to-guides-badge.md | 30 -- docs/tas-how-to-guides-bb-token.md | 37 -- docs/tas-how-to-guides-gh-token.md | 29 -- docs/tas-how-to-guides-gl-token.md | 30 -- docs/tas-learn-about-tas-architecture.md | 68 ---- ...-learn-about-tas-features-and-languages.md | 55 --- docs/tas-learn-about-tas-how-tas-works.md | 56 --- docs/tas-overview.md | 83 ----- docs/tas-self-hosted-configuration.md | 179 ---------- docs/tas-self-hosted-installation.md | 205 ----------- docs/tas-self-hosted-overview.md | 51 --- docs/tas-telemetry-and-security.md | 42 --- docs/tas-tier-and-credits.md | 28 -- docs/tas-tutorial-cloud-demo.md | 62 ---- docs/tas-tutorial-self-hosted-demo.md | 76 ---- sidebars.js | 81 ----- 22 files changed, 1783 deletions(-) delete mode 100644 docs/tas-configurations-framework.md delete mode 100644 docs/tas-configurations-managing-secrets.md delete mode 100644 docs/tas-configuring-tas-yml.md delete mode 100644 docs/tas-faq.md delete mode 100644 docs/tas-getting-started-creating-an-account.md delete mode 100644 docs/tas-getting-started-integrating-your-first-repo.md delete mode 100644 docs/tas-how-to-guides-badge.md delete mode 100644 docs/tas-how-to-guides-bb-token.md delete mode 100644 docs/tas-how-to-guides-gh-token.md delete mode 100644 docs/tas-how-to-guides-gl-token.md delete mode 100644 docs/tas-learn-about-tas-architecture.md delete mode 100644 docs/tas-learn-about-tas-features-and-languages.md delete mode 100644 docs/tas-learn-about-tas-how-tas-works.md delete mode 100644 docs/tas-overview.md delete mode 100644 docs/tas-self-hosted-configuration.md delete mode 100644 docs/tas-self-hosted-installation.md delete mode 100644 docs/tas-self-hosted-overview.md delete mode 100644 docs/tas-telemetry-and-security.md delete mode 100644 docs/tas-tier-and-credits.md delete mode 100644 docs/tas-tutorial-cloud-demo.md delete mode 100644 docs/tas-tutorial-self-hosted-demo.md diff --git a/docs/tas-configurations-framework.md b/docs/tas-configurations-framework.md deleted file mode 100644 index 0233ddf21..000000000 --- a/docs/tas-configurations-framework.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -id: tas-configurations-framework -title: Configurations for Framework -hide_title: true -sidebar_label: Configurations for Framework -description: Custom configuration for frameworks. -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Configurations for Framework - - TAS - Configuration -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-configurations-framework/ ---- - -# Configurations for Framework -*** -### Mocha - -Follow these steps to use a custom configuration file in mocha framework. - -- Create a `mocha` configuration file in the repository. - -```yml title="mocharc.yaml" -require: - - ts-node/register - - jsdom-global/register -``` -- Add `configFile` parameter in the tas yml file and reference the mocha config file. - -```yml title=".tas.yaml" -... -configFile: mocharc.yml -... -``` diff --git a/docs/tas-configurations-managing-secrets.md b/docs/tas-configurations-managing-secrets.md deleted file mode 100644 index 010e56480..000000000 --- a/docs/tas-configurations-managing-secrets.md +++ /dev/null @@ -1,75 +0,0 @@ ---- -id: tas-configurations-managing-secrets -title: Managing Secrets -hide_title: true -sidebar_label: Managing Secrets -description: Managing secrets in TAS. -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Managing Secrets - - TAS - Configuration -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-configurations-managing-secrets/ ---- - -# Managing Secrets -*** -You can add environment variables in TAS to securely use sensitive information such as username, passwords, api keys etc. We securely encrypt and store the secrets on our end. The secrets have scope limited to the repository. - -## Adding secrets for your repository -*** -### Adding secrets for the first time - TAS CLOUD -- While configuring .tas.yml -- Click on the `Manage secrets` option located at the bottom -- You can add secrets in this section and use them while configuring the `.tas.yml` (steps mentioned below.) - -

- Import Repository -

- -
- -### Add more secrets - TAS CLOUD -- Open a the repository and navigate to the **Settings** section. -- Select **Environment Variables** from the sidebar. -- Add **Secret Name**, **Secret Value** and click on **Add Secret**. - -

-Import Repository -

- -
- -### Adding secrets - TAS Self Hosted -- In case of TAS Self Hosted mode, you need to define your secrets in the **.synapse.json** file. [See more details](/docs/tas-self-hosted-configuration#reposecrets) - -
- -## Using the secrets -*** -- You can use the secrets added in TAS portal inside your `.tas.yml` using `${secret_name}` parameter -- The following sample file demonstrates how we can refer secrets inside `.tas.yml`. - -```yml title=".tas.yml" -framework: mocha -blocklist: - - "src/test/api1.js##this is a test-suite" -preRun: - command: - - npm ci -postMerge: - env: - REPONAME: nexe - AWS_KEY: ${{ secrets.AWS_KEY }} #Using secrets inside Yml <-------- - pattern: - - "./test/**/*.spec.ts" -preMerge: - pattern: - - "./test/**/*.spec.ts" -postRun: - command: - - node --version -version: 1.0 -``` diff --git a/docs/tas-configuring-tas-yml.md b/docs/tas-configuring-tas-yml.md deleted file mode 100644 index f7f202db3..000000000 --- a/docs/tas-configuring-tas-yml.md +++ /dev/null @@ -1,337 +0,0 @@ ---- -id: tas-configuring-tas-yml -title: Configuring TAS yml -hide_title: true -sidebar_label: Configuring TAS yml -description: Configuring TAS yml -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Configuring TAS yml - - TAS - Configuration -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-configuring-tas-yml/ ---- - -# Configuring TAS yml -*** -In this section we will explain how to make a `.tas.yml` configuration file for your project. This file defines the steps that are required for a test execution job to run on TAS. This step is same for **TAS Cloud** mode and **TAS - Self Hosted** mode.
-You can begin with the **Basic configurations** first and then go towards the **Advanced configurations** as per the requirements of your project. You can also refer to our **sample configuration file** given at the end of this page. - -## Basic configuration parameters -*** -### framework -You need to specify which testing `framework` you are using in your repo. Currently, we provide support for `mocha`, `jest` and `jasmine` testing frameworks.
- -**Example** -```yml -framework: jest -``` - -| Required | Type | Sample Values | -| :----: | ---- | ---- | -| Yes | `string` | `mocha`, `jest`, `jasmine` | -
- -### preRun -These are shell commands executed inside the root level of your git repository before running the tests. `preRun` commands are executed using non-login shells by default, so you must explicitly source any dotfiles as part of the command.
- -> **NOTE:** You do not need to run any command like `npm run test` etc as we will be running the test cases mentioned by you in the `preRun.command` and `preMerge.pattern`. - -**Example** -```yml -preRun: - command: - - npm ci - - npm run lint - #env: in case you need to set any env variables - #NODE_ENV: development - #AWS_KEY: ${{ secrets.AWS_KEY }} # More details in Managing Secrets section -``` - -| Sub-Parameters | Required | Type | Description | -| ------------- | :-------: | --------- | :------------- | -| `preRun.command` | Yes | `array` | Array of shell commands executed after running the tests, typically to cleanup the test execution environment. | -| `preRun.env` | Optional | `map` | Map of `key/value` pairs to set env variables for the pre run commands. | -
- -### postMerge -This section contains the glob patterns for the test cases that you want to execute in the post-merge jobs, a test execution job that will be initiated every time a PR is merged into a branch.
- -**Example** -```yml -postMerge: - pattern: - # This is a sample glob pattern for all the tests inside the "unit" folder ending with .js extension. - - test/unit/**/*.js - # This is a sample glob pattern for all the tests inside the "unit", "node" and "development" folder ending with .js extension. - - test/{unit,node,development}/**/*.js - # env: (optional) in case you need to set any env variables - # NODE_ENV: development - # AWS_KEY: ${{ secrets.AWS_KEY }} # More details in Managing Secrets section -``` - -| Sub-Parameters | Required | Type | Description | -| ------------- | :-------: | --------- | :------------- | -| `postMerge.pattern` | Yes | `array` | Array of testfile glob(s) or relative testfile(s) that needs to be executed. | -| `postMerge.env` | Optional | `map` | Map of `key/value` pairs to set env variables for the postMerge execution environment. | -
- -## Advanced configuration parameters -*** - -### blocklist -There can be some test cases that you don't want to execute. Here you can add the list of tests, test suites or files that you want to blocklist (ignore) during execution. The input for this parameter is of the format `"####"`
- -**Example** -```yml -blocklist: - # blocklist test file. - - "test/unit/adapters/http.js" - # blocklist test suite. - - "test/unit/adapters/http.js##supports http with nodejs" - # blocklist test-case. - - "test/unit/adapters/http.js##supports http with nodejs##should support sockets" -``` - -| Required | Type | -| :-------: | ---- | -| Optional | `array` | -
- -### preMerge -This section contains the glob patterns for the test cases that you want to execute in the pre-merge jobs, a test execution job that will be initiated every time a PR is raised.
- -**Example** -```yml -preMerge: - pattern: - # This is a sample glob pattern for all the tests inside the "unit" folder ending with .js extension. - - test/unit/**/*.js - # This is a sample glob pattern for all the tests inside the "unit", "node" and "development" folder ending with .js extension. - - test/{unit,node,development}/**/*.js - # env: (optional) in case you need to set any env variables - # NODE_ENV: development - # AWS_KEY: ${{ secrets.AWS_KEY }} # More details in Managing Secrets section -``` - -| Sub-Parameters | Required | Type | Description | -| ------------- | :-------: | --------- | :------------- | -| `preMerge.pattern` | Yes | `array` | Array of testfile glob(s) or relative testfile(s) that needs to be executed. | -| `preMerge.env` | Optional | `map` | Map of `key/value` pairs to set env variables for the preMerge execution environment. | -
- -### postRun -These are shell commands executed inside the root level of your git repository after running the tests. postRun commands are executed using non-login shells by default, so you must explicitly source any dotfiles as part of the command.
- -**Example** -```yml -postRun: - command: - - node --version - #env: in case you need to set any env variables - #NODE_ENV: development - #AWS_KEY: ${{ secrets.AWS_KEY }} # More details in Managing Secrets section -``` - -| Sub-Parameters | Required | Type | Description | -| ------------- | :-------: | --------- | :------------- | -| `postRun.command` | Optional | `array` | Array of shell commands executed after running the tests, typically to cleanup the test execution environment. | -| `postRun.env` | Optional | `map` | Map of `key/value` pairs to set env variables for the post run commands. | -
- -### configFile -You might need to add a framework specific configuration file in some cases. The relative path for the configuration file like your custom `mocharc`, `jest.config`, `spec/support/jasmine.json` etc will need to be mentioned here. - -```yml -configFile: test/jest.config.json -``` - -| Required | Type | -| :---: | --- | -| Optional | `string` |​ -
- -### nodeVersion -TAS uses the Latest node LTS version as default. You can provide the semantic version of nodejs required for your project here.
- -**Example** -```yml -nodeVersion: 14.17.2 -``` - -| Required | Type | Default | -| :-------: | --------- | :------------- | -| Optional | `SemVer` | Latest node LTS version. | -
- -### smartRun -You can configure whether to run test-cases smartly i.e. only run affected/impacted tests.
- -**Example** -```yml -smartRun: true -``` - -| Required | Type | Default | -| :-------: | --------- | :------------- | -| Optional | `boolean` | `true` | -
- -### tier -If your project requires a higher configuration to run, you can set the machine configuration on which the tests should run using this parameter. Acceptable values: xsmall, small, medium, large.
- -**Example** -```yml -tier: small -``` - -| Required | Type | Default | -| :-------: | --------- | :------------- | -| Optional | `string` | `small` | -
- -### parallelism -You can define the number of containers in which the tests must be split into for parallel execution.
- -**Example** -```yml -parallelism: 2 -``` - -| Required | Type | -| :-------: | --------- | -| Optional | `integer` | -
- -### splitMode -You can define mode in which the tests are split in the containers. Only applicable if parallelism > 1.
- -**Example** -```yml -splitMode: test -``` - -| Required | Type | Sample Values | Default | -| :----: | ---- | ---- | ---- | -| Optional | `string` | `file`, `test` | `test` | -
- -### containerImage -The containerImage field is intended to be used in order to provide a custom docker image for test execution. This field will not work if you are on the TAS-Cloud mode. -Configure this parameter only if you are Self Hosting TAS and you want to provide a custom docker image for test execution. - -> **NOTE:** This option is only supported for TAS Self-Hosted mode and is currently in **beta**.
- -**Example** -```yml -containerImage: lambdatest/nucleus:latest -``` - -| Required | Type | -| :-------: | --------- | -| Optional | `string` | -
- -### version -The version field is intended to be used in order to issue warnings for deprecation or breaking changes on the platform level.
- -**Example** -```yml -version: 1.0.0 -``` - -| Required | Type | -| :-------: | --------- | -| Optional | `SemVer` | -
- -## Sample .tas.yml file -*** -This sample `.tas.yml` configuration is generic configuration file trying to demonstrate the usage of all the above mentioend parameters. - -```yml title=".tas.yaml" -# THIS IS A SAMPLE ".tas.yml" CONFIGURATION FILE - -# FIRSTLY -# You need to specify which testing framework you are using. -# Currently supported JS frameworks are : mocha, jest and jasmine. -framework: mocha # framework should be as per your project. - -blocklist: # Optional parameter - # format: "######" - - "src/test/api.js" - - "src/test/api1.js##this is a test-suite" - - "src/test/api2.js##this is a test-suite##this is a test-case" - -preRun: - # SECONDLY - # You need to set the preRun commands. - # These are shell commands executed inside the root level of your git repository before running the tests. - # preRun commands are executed using non-login shells by default, so you must explicitly source any dotfiles as part of the command. - # The commands should be according to the package manager used in your project. - command: - - npm install - # - yarn install - # - npm ci - # - yarn build - -postMerge: - # THIRDLY - # You need to set postMerge patterns only. env is a an optional parameter. - # A postMerge test execution job is initiated whenever a PR is merged into a branch. - env: # Optional parameter - REPONAME: nexe - AWS_KEY: ${{ secrets.AWS_KEY }} - pattern: - # These would be the glob patterns for the test cases that you want to execute in the post-merge jobs. - # - "./unit_test_folder_A/**/*.spec.ts" - # - "./unit_test_folder_B/**/*.ts" - - "./test/**/*.spec.ts" - -preMerge: # Optional parameter - pattern: - # regex pattern to discover tests to run in case of premerge - - "./test/**/*.spec.ts" - -postRun: # Optional parameter - # set of commands to run after running the tests - command: - - node --version - -# path to your custom configuration file required by framework -configFile: mocharc.yml # Optional parameter - -# provide the semantic version of nodejs required for your project -nodeVersion: 14.17.2 # Optional parameter - -# configure whether to smartSelect test-cases. Default true -smartRun: false # Optional parameter - -# supported tiers: xsmall|small|medium|large -tier: small # Optional parameter - -# number of parallel instances of containers to spawned to distribute test execution -parallelism: 2 # Optional parameter - -# version of tas file intended to be used in order to issue warnings for deprecation or breaking changes -version: 1.0 -``` -
- -## Next Steps -*** -Once you have prepared the configuration file, place this file correctly inside your repo using the steps mentioned below: -1. In your master branch, **create** a new file as `.tas.yml` at the root level of your repository . -2. **Copy** the configuration from the TAS yml configuration page and **paste** them in the `.tas.yml` file you just created. -3. Commit and Push the changes to your repo. - -  OR -1. Download the configuration file you have created on the TAS yml configuration page. -2. Rename it to `.tas.yml`. Place it at the root level of your repository. -3. Commit and Push the changes to your master branch. - -

-Import Repository -

diff --git a/docs/tas-faq.md b/docs/tas-faq.md deleted file mode 100644 index 01b83433c..000000000 --- a/docs/tas-faq.md +++ /dev/null @@ -1,111 +0,0 @@ ---- -id: tas-faq-and-troubleshooting -title: FAQs and Troubleshooting -hide_title: true -sidebar_label: FAQs and Troubleshooting -description: Common Questions and Answers for TAS. -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - FAQs and Troubleshooting -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-faq-and-troubleshooting/ ---- - -# FAQs -*** - -**How do I start using TAS?** -- You can simply login on the TAS portal with your existing GitHub or GitLab account. Allow necessary access to Git organisations and onboard your repositories onto TAS. Add a .tas.yml and you’re ready to go. - -**Will it work on my local setup?** -- Yes. Through our Self-Hosted mode, it is possible. However, test-insights will only be available on TAS portal. [Setup TAS on a self-hosted environment](/docs/tas-self-hosted-installation) - -**Does TAS look inside my code?** -- In order to discover and execute the test-cases in your repository, TAS needs access to your code. However, TAS provides an option to run a repository on self-hosted environment. The test-at-scale binary (hosted on machine(s) provided by you) has the access to your code. TAS Servers store metadata only related to tests like name of testFile, testCase, testSuite. At no point, we collect the business logic of your code. - -**Do I need to migrate from my current CI to TAS?** -- You need to migrate the step in your CI pipeline that runs the tests of your repository. - -**What are the different Hosting options?** -- **TAS Cloud** - The entire infrastructure is managed by TAS including the "test runners" that has access to your code for running the tests. The tests in your repository will be executed on cloud runners managed by TAS. -- **Self Hosted** - In this option, you need to provide the machines (and manage those machines yourselves) to run tests in your repository. TAS will only receive the tests metadata to show you the insights on TAS portal. - -**Will this work on an on-premise data centre.** -- Yes it will. Soon we will be bringing all of our offerings to on-prem as well. So that everything stays inside your infrastructure, including the tests metadata and TAS portal. - -
- -# Troubleshooting -*** - -## Getting TAS Error in my jobs. -If your jobs are running into TAS Error in case of a self hosted environment, there are two possible reasons for the same: -1. It is possible that your synapse isn't up and running. -2. It is possible that your self hosted environment was not allocated enough resources. -
- -### How to check if synapse is running or not? -In order to check the synapse status, simply go to settings from the left side bar and click on connected synapse to view the list. If you have any connected synapses they will show up here. -

-Connected_Synapse -

- -If you are still facing an issue, try **restarting** the synapse or **view the logs** using the steps given below. - -- **Restarting the synapse** - - If you want to restart the docker container you can use the below command in the same directory as your `docker-compose.yml`. - ```bash - docker-compose down - docker-compose up -d - ``` - -- **Viewing agent container (synapse) logs** - - If you want to check logs from the docker container (synapse) you can use the following command. - ```bash - docker logs synapse -f - ``` - -- **Viewing job container logs** - - If your synapse is connected and still your jobs are failing you can checkout job logs by navigating into logs directory mounted in docker-compose file (by default it's same directory as your docker-compose). You can navigate to specific job logs by navigating into `logs/synapse/`. - > **NOTE**: You can modify logs directory by updating docker-compose volume mounts. - ``` - volumes: - - "./logs/synapse:/var/log/synapse" - ``` - -
- -### Synapse is connected but still facing TAS error. -If your **synapse** is connected but you are still facing TAS error, it is possible that synapse was not allocated enough resources. -- **NOTE:** In order to run test-at-scale synapse you require a minimum configuration of 2 CPU cores and 4 GBs of RAM. Execute the following command to ensure that resources usable by Docker are atleast **CPU: 2, RAM: 4294967296**. - - ```bash - docker info --format "CPU: {{.NCPU}}, RAM: {{.MemTotal}}" - ``` -- If you see resources allocated are less than **CPU: 2, RAM: 4294967296**, go to settings tab on docker application and increase the resources allocated. - -

- Synapse Resource Update -


- - -### General Troubleshooting -- If you get docker (synapse) error logs as below, then please verify if your `docker-compose.yml` and `.synapse.json` files are in the same directory by using `ls -la` command. - - ``` - synapse | Warning: No configuration file found. Proceeding with defaults - synapse | Warning: No configuration file found. Proceeding with defaults - synapse | error in reading config file: open : no such file or directory - synapse | error in umarshaling secrets: unexpected end of JSON input - ``` - -- In case you have followed all the steps but still facing some issue due to which you are not able to execute your jobs in your self hosted environment, feel free to **reach out to us** on our Discord Channel. You can directly raise your doubts on the "**tas-support**" channel, if you have any **suggestions** or **feedback**, you can submit that to us using the "**suggestions**" channel. - -

- Synapse Resource Update -

\ No newline at end of file diff --git a/docs/tas-getting-started-creating-an-account.md b/docs/tas-getting-started-creating-an-account.md deleted file mode 100644 index 20f0b7886..000000000 --- a/docs/tas-getting-started-creating-an-account.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -id: tas-getting-started-creating-an-account -title: Creating an Account -hide_title: true -sidebar_label: Creating an Account -description: Creating an Account on TAS -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Creating an Account - - TAS - Getting Started -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-getting-started-creating-an-account/ ---- - -# Creating an Account -*** -In order to get started with the TAS Platform you need to create an account first. - -## Setting up a New Account -*** -In order to setup a new account, visit [TAS Login Page](https://tas.lambdatest.com/login/). (Or [TAS Home Page](https://tas.lambdatest.com/)). -1. **Login** using the suitable Git Provider. -2. **Select your organization** on the next step that you want to continue with. -> **If you are using Github and you can't see your organization** -> - Click on **Can’t see your git organization?**. -> - This will redirect you to Github app installation page. -> - **Select the organization** that you want to integrate with TAS and click on **Install & Authorize**. -3. Tell us your specialization, team size and hit **Proceed**. -4. Select Test at Scale Mode. [Learn more](#selecting-test-at-scale-mode) -
- -**Congratulations!** Your free account is ready now. - -## Selecting Test at Scale Mode -*** - -​TAS comes in two modes, you can select how you want to use it for your selected organisation. - -1. **TAS Cloud** - You can get started right away on our cloud. No technical setup or installation required. **(Recommended)** -> ❤️ **TAS Cloud** is free for Open source & educational projects. Including hosting and smart features. - -2. **TAS - Self Hosted** - You need to setup TAS on your own workstation or cloud. Basic installation & configuration required. - - -> **NOTE**: If any team member from your organisation has already signed up on TAS and selected a TAS mode, you will not be asked to select it again. The selected mode would be linked to your organisation and **can not be modified or reverted** later. - -

-Signup with TAS -

\ No newline at end of file diff --git a/docs/tas-getting-started-integrating-your-first-repo.md b/docs/tas-getting-started-integrating-your-first-repo.md deleted file mode 100644 index 67ea450ed..000000000 --- a/docs/tas-getting-started-integrating-your-first-repo.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -id: tas-getting-started-integrating-your-first-repo -title: Integrating Your First Repository -hide_title: true -sidebar_label: Integrating Your First Repository -description: Integrating your first repository with TAS -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Integrating Your First Repository - - TAS - Getting Started -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-getting-started-integrating-your-first-repo/ ---- - -# Integrating Your First Repository -*** -Once you have selected your [setup mode](/docs/tas-getting-started-creating-an-account#selecting-test-at-scale-mode), you are ready for the next step of setting up your repositories in TAS. -​ -- For **TAS Cloud** - You will see your repositories immediately after selecting **TAS Cloud** as your setup mode therefore can directly start following the 3 steps given below. -- For **TAS - Self Hosted** - First you need to **configure your self-hosted environments** [(see configuration steps)](/docs/tas-self-hosted-installation/), before you can start with the following steps to setup your repositories. - -## Step 1 - Integrating the repositories -*** -- On the page where you see all of your repositories. -- Click the **Setup Project** button for the repository you want to integrate with TAS. It will redirect you to `tas.yml` configurations page. - -> **Note**: You need admin rights to integrate a repo with TAS. In case you do not have admin rights to a repository, you will not be able to import and integrate that project with TAS. - -## Step 2 - Configuring the .tas.yml -*** -### Preparing the file -Once you've imported the repo, you'll be taken to the `.tas.yml` configuration page. - -This step remains same for both **TAS Cloud** and **TAS - Self Hosted** modes. - -The three main parameters that need to be configured for successful execution are: -- **[framework](/docs/tas-configuring-tas-yml#framework)** : The name of the specify testing framework you are using. -- **[preRun](/docs/tas-configuring-tas-yml#prerun)** : Shell commands executed inside the root level of your git repository before running the tests. -- **[postMerge](/docs/tas-configuring-tas-yml#prerun)** : The glob patterns for the test cases that you want to execute in the post-merge jobs. - -**To Generate the TAS Configuration file** -- Select your **Language**, **Framework**, **Set Command you want to run before running tests** and **Enter the test file glob pattern**. This will generate a basic `tas.yml` file. -- To copy the generated file, Click on **Copy** button. - -A detailed list of all the configuration parameters can be found [here](/docs/tas-configuring-tas-yml).
- -

-Import Repository -

- -### Adding the file to your project -Once you have copied the configuration file, place this file correctly inside your repo using the steps mentioned below: -1. In your master branch, **create a new file** as `.tas.yml` at the **root level of your repository**. -2. In the `.tas.yml` file content, **Paste** the yml file you had copied using Copy button. -3. **Commit** and **Push** the changes to your repo. - -

-Import Repository -

diff --git a/docs/tas-how-to-guides-badge.md b/docs/tas-how-to-guides-badge.md deleted file mode 100644 index d1562c9bc..000000000 --- a/docs/tas-how-to-guides-badge.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -id: tas-how-to-guides-badge -title: Adding a Status Badge -hide_title: true -sidebar_label: Adding a Status Badge -description: Adding a Status Badge -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Adding a Status Badge - - TAS - How to Guides -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-how-to-guides-badge/ ---- - -# Adding a Status Badge -*** - -You can use TAS badge to get the test status at a glance of project page. It gives you insights about last build without visiting TAS portal. - -Status badge is commonly added to the `README.md` file of the project. - -**For adding status badge to your readme file, use the following snippet.** - -``` -![TAS Badge](https://badge.tas.lambdatest.com/tas/tests////) -``` - -> **Note**: Possible values for `GIT_PROVIDER` based on your version control: `github`, `gitlab`, `bitbucket`. diff --git a/docs/tas-how-to-guides-bb-token.md b/docs/tas-how-to-guides-bb-token.md deleted file mode 100644 index e779e104d..000000000 --- a/docs/tas-how-to-guides-bb-token.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -id: tas-how-to-guides-bb-token -title: Generating Bitbucket Personal Access Token -hide_title: true -sidebar_label: Generating Bitbucket Personal Access Token -description: Generating your Personal Access Token for Bitbucket -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Generating Bitbucket Personal Access Token - - TAS - How to Guides -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-how-to-guides-bb-token/ ---- - -# Generating Bitbucket Personal Access Token -*** -- Navigate to [Bitbucket Settings](https://bitbucket.org/account/settings/app-passwords/new). -- Enter **App password label**. -- **Set the permissions** for the app password. Add read access to `Account`, `Workspace membership`, `Projects`, `Repositories` and `Pull requests`. -- Click on **Create**. -- **Copy and save** your app password securely. - -> **NOTE:** TAS needs read access to `Account`, `Workspace membership`, `Projects`, `Repositories` and `Pull requests` in order to function properly. - -

- -

- -
- -- **Go to the terminal** and run the following command and **copy the access token**. -```bash -echo -n ":" | base64 -``` -> **NOTE:** Set TokenType to `Basic` in syanpse config file. \ No newline at end of file diff --git a/docs/tas-how-to-guides-gh-token.md b/docs/tas-how-to-guides-gh-token.md deleted file mode 100644 index 04b7fc222..000000000 --- a/docs/tas-how-to-guides-gh-token.md +++ /dev/null @@ -1,29 +0,0 @@ ---- -id: tas-how-to-guides-gh-token -title: Generating GitHub Personal Access Token -hide_title: true -sidebar_label: Generating GitHub Personal Access Token -description: Generating your Personal Access Token on GitHub -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Generating GitHub Personal Access Token - - TAS - How to Guides -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-how-to-guides-gh-token/ ---- - -# Generating GitHub Personal Access Token -*** -- Navigate to [GitHub Settings](https://github.com/settings/tokens), click on **Generate new token** and **confirm your password** if prompted. -- Add **Expiry** to `never`. -- **Select the scopes** for the token. Add `repo` access to the scope. -- Click on **Generate Token**. -- **Copy and Save** your token securely. - -> **NOTE:** TAS needs repo permissions in order to function properly. - -

- -

\ No newline at end of file diff --git a/docs/tas-how-to-guides-gl-token.md b/docs/tas-how-to-guides-gl-token.md deleted file mode 100644 index 5fbd39e39..000000000 --- a/docs/tas-how-to-guides-gl-token.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -id: tas-how-to-guides-gl-token -title: Generating GitLab Personal Access Token -hide_title: true -sidebar_label: Generating GitLab Personal Access Token -description: Generating your Personal Access Token on GitLab -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Generating GitLab Personal Access Token - - TAS - How to Guides -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-how-to-guides-gl-token/ ---- - -# Generating GitLab Personal Access Token -*** -- Navigate to [GitLab Settings](https://gitlab.com/-/profile/personal_access_tokens). -- Enter **Token name** and add **Expiration date**. -- **Select the scopes** for the token. Add `api`, `read_api`, `read_user`, `read_repository` access to the scope. -- Click on **Create personal access token**. -- **Copy and Save** your token securely. - -> **NOTE:** TAS needs `api`, `read_api`, `read_user`, `read_repository` permissions in order to function properly. - -

- - -

\ No newline at end of file diff --git a/docs/tas-learn-about-tas-architecture.md b/docs/tas-learn-about-tas-architecture.md deleted file mode 100644 index 816a1fa52..000000000 --- a/docs/tas-learn-about-tas-architecture.md +++ /dev/null @@ -1,68 +0,0 @@ ---- -id: tas-learn-about-tas-architecture -title: Architecture -hide_title: true -sidebar_label: Architecture -description: TAS Architecture -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Introduction - - TAS - Learn more about TAS - - TAS - Architecture -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-learn-about-tas-architecture/ ---- - -# Architecture -*** - -## TAS Terminology -*** - -- **Action**: Action is a term to signify generic execution triggered by the TAS server in response to a webhook or any other request. Job, Task, pre-processing, and post-processing, FTM, Culprit finding, git-bisect are different kinds of action. - -- **Task**: An action triggered for running activities for a particular commit. This includes fetching dependencies, discovering tests, running tests, and publishing results. - -- **FTM**: Flaky test management is a type of Task that gets triggered on special events such as new test introduction, test updates, etc. The TAS server will conduct Flaky test management tasks just like any other actions and will spawn containers for them. - -- **Job**: The collection of tasks is called a job. - -## Major Components -*** - -

-TAS Architecture Diagram -

- -### TAS Server - -TAS server consists of multiple components. - -The first component is responsible for receiving webhooks from git providers and queueing actions to be taken as a response to events received. - -The second component runs the business logic by executing an action in response to the request/event received. The action can be triggering a build, run pre or post-processing of a build, -execute FTM etc. It triggers every action in a separate container. - -### Nucleus -This component is the driving agent of the container executed to run the actions scheduled by the TAS server. All actions are executed on Linux containers and the nucleus manages the lifecycle of the container. -Synapse -The role of this component is to connect on-prem/local runners to LamdaTest Server and be able to run actions for a particular repository on self-hosted infrastructure instead of using LambdaTest infra to run containers. - - -### Synapse -The role of this component is to connect on-prem/local runners to LamdaTest Server and be able to run actions for a particular repository on self-hosted infrastructure instead of using LambdaTest infra to run containers. - -### Process Flow - -- TAS server receives a git event webhook from git event provider (github/gitlab/bitbucket) -- TAS server processes the webhook information and determines if the request should run on a Self-Hosted Environment or TAS Cloud. - - For Self-Hosted Environment - - An event is sent to synapse connection (if available) - - Synapse requests task information from TAS Server - - Synapse runs container for action on the local system - - For TAS Cloud - - TAS queues the action in the relevant queue depending on the license type - - Queued actions will schedule containers for each action - diff --git a/docs/tas-learn-about-tas-features-and-languages.md b/docs/tas-learn-about-tas-features-and-languages.md deleted file mode 100644 index 0d6f74ecb..000000000 --- a/docs/tas-learn-about-tas-features-and-languages.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -id: tas-learn-about-tas-features-and-languages -title: Features and Languages -hide_title: true -sidebar_label: Features and Languages -description: Features and Languages Supported on TAS -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Features and Languages - - TAS - Learn more about TAS -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-learn-about-tas-features-and-languages/ ---- - -# Features and Languages -*** - -TAS enables developers and engineering leaders to accelerate testing, reduce build times upto 95% & gain actionable visibility into their test cases. But that's not it, have a look at all of our features. - -## Features -*** - -### Smart Test Selection - -Even though only certain sections of a codebase are changed in a commit, development teams usually execute the whole test suite every time. This practice clogs the development pipelines and becomes a bottleneck in achieving high development velocity. - -TAS understands the dependencies in a codebase by executing the whole set of unit tests in the first iteration and then uses the stored information to accelerate the subsequent builds. Our smart test engine analyses the code changes and intelligently selects only a subset of the test suite that requires execution. This drastically reduces the testing time making frequent testing more feasible. TAS enables development teams to test smarter, release faster. - -

-Signup with TAS -

- -### Test Insights -With TAS you get actionable insights on your test cases. -- See how tests are behaving over multiple commits in one glance. -- TAS Trends give you in depth analysis on Tests Executed, Slowest Tests, Failing Tests, Contributor causing Failed Jobs -- Find out contributor level test insights. - -

-Signup with TAS -

- -### Other Key Features -- Post-merge Testing Pipelines : You can setup post merge pipelines that will only execute a build after certain thresholds as configured by you. -- Test Blocklisting : With TAS it becomes super easy to blocklist test cases from our yaml configuration file. - -## Supported Languages -*** - -Currently we support Javascript [Jest](https://jestjs.io/), [Mocha](https://mochajs.org/) & [Jasmine](https://jasmine.github.io/) - -:::tip New features coming every week. Stay Tuned. -::: diff --git a/docs/tas-learn-about-tas-how-tas-works.md b/docs/tas-learn-about-tas-how-tas-works.md deleted file mode 100644 index 511951e2b..000000000 --- a/docs/tas-learn-about-tas-how-tas-works.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -id: tas-learn-about-tas-how-tas-works -title: Introduction -hide_title: true -sidebar_label: Introduction -description: Introduction about TAS -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Introduction - - TAS - Learn more about TAS -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-learn-about-tas-how-tas-works/ ---- - -# Introduction -*** - -## What is TAS? -*** -TAS is an intelligent test execution platform for engineering teams to test smarter, release faster. -It intelligently interprets & runs only a subset of the test pool which is relevant to the latest commit, leading to shorter build durations, and faster feedback on code changes. - -## Why is TAS needed? -*** -Development teams don’t know what subset of test cases were impacted by their latest code changes. Hence, teams keep executing all the tests every time in every build which is pointless and just leads to Clogged Pipelines, Low Productivity, Slow Release Cycles & wasting Expensive Resources. - -> TAS **enables developers** and **engineering leaders** to accelerate their testing, reduce build times up to **95%** & gain actionable visibility into their test cases. - -## How it works? -*** -TAS understands the dependencies in a codebase by executing the whole test pool in the first iteration and then uses the stored information to accelerate the subsequent builds. - -For subsequent changes, our smart test engine analyses the code changes and intelligently selects only a subset of the test suite that requires execution. This drastically reduces the testing time making frequent testing more feasible. TAS enables development teams to test smarter, release faster. - -TAS automatically detects new tests and tests that were updated and aligns them for execution along with other test cases that were impacted due to certain code changes. Resulting in execution of a smaller subset of tests instead of the whole test pool. - -| BEFORE TAS | AFTER TAS | -| ----------------------------------------- | ------------------------------------------------- | -| All the tests executed every time | Only a subset of tests executed | -| Clogged CI/CD pipelines | Accelerated Pipelines from dev to release | -| Long waiting for feedback on code changes | Faster feedback on code changes | -| Slower release cycles | Shorter release cycles. High development velocity | - -:::tip We ❤️ Open Source. -**TAS Cloud** is free for Open source & educational projects. -Includes hosting and smart features. -::: - -## Getting Started -*** -Get started with TAS -- [Creating an Account](/docs/tas-getting-started-creating-an-account/) -- [Integrating your first repo](/docs/tas-getting-started-integrating-your-first-repo/) -- [Configuring .tas.yml for running tests](/docs/tas-configuring-tas-yml/) diff --git a/docs/tas-overview.md b/docs/tas-overview.md deleted file mode 100644 index 9e6b9a580..000000000 --- a/docs/tas-overview.md +++ /dev/null @@ -1,83 +0,0 @@ ---- -id: tas-overview -title: Lamdatest TAS Overview -hide_title: true -sidebar_label: TAS - Overview -description: Lamdatest TAS Overview - Find answer to common questions, learn more about TAS -keywords: - - LambdaTest TAS - - LambdaTest TAS help - - LambdaTest TAS documentation -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest TAS -slug: tas-overview/ ---- - - - -# Overview - - -
- -
-

TAS - Self Hosted

- -
-
-

Tutorial

- -
-
-

Learn about TAS

- -
-
-

Community

- -
-
-

Support

- -
-
diff --git a/docs/tas-self-hosted-configuration.md b/docs/tas-self-hosted-configuration.md deleted file mode 100644 index dc9c8bcff..000000000 --- a/docs/tas-self-hosted-configuration.md +++ /dev/null @@ -1,179 +0,0 @@ ---- -id: tas-self-hosted-configuration -title: Configuration File -hide_title: true -sidebar_label: Configuration File -description: Configuration for TAS Self hosted. -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Configuration File - - TAS - Self Hosted -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-self-hosted-configuration/ ---- - -# Configuration File -*** - -In this section we will learn about all the configuration parameters that are required in order to configure the test-at-scale self hosted mode. This file will contain the parameters such as: -- **LambdaTest Secret Key** : required to link your self hosted environment with the TAS server. -- **Git Token** : required to clone your repositories to your self hosted environments while running the test execution jobs. -- Some other **optional** parameters such as **Repository Secrets** etc. -- Do not change the predefined **ContainerRegistry** settings inside this file - -All the configuration parameters are explained in detail below. - -## Parameters -*** - -### LambdaTest Secret Key -This specify secret key will be provided to you after login in and selecting the TAS Self-Hosted mode. It is required to link your self hosted environment with the TAS server.
- -**Example** -```json -"Lambdatest": { - "SecretKey": "add-your-secret-key-here" -} -``` - -| Key | Type | Usage | -| --- | ---- | ----- | -| `Lambdatest.SecretKey` | `string` | Secret key provided by Lambdatest | -
- -### Git -This token is required to clone your repositories to your self hosted environments while running the test execution jobs. - -To create a new token you can use the following steps. -- [GitHub Personal Access Token](/docs/tas-how-to-guides-gh-token/) -- [GitLab Personal Access Token](/docs/tas-how-to-guides-gl-token/) -- [Bitbucket Personal Access Token](/docs/tas-how-to-guides-bb-token/) - -| Key | Type | Usage | -| --- | ---- | ----- | -| `Git.Token` | `string` | Personal Access token | -| `Git.TokenType` | `string` | Token type is Bearer or Basic: `Bearer`, `Basic` | - -> **NOTE:** Set TokenType to `Basic` in case of bitbucket. - -
- -**Example** -```json -"Git": { - "Token": "add-your-git-token-here", - "TokenType": "bearer" -} -``` -
- -### ContainerRegistry -This parameter would already contain the correct values inside your downloaded **.synapse.json**. You can continue with those values if you want to use the image provided by test-at-scale, containing the smart features. In case you want to use a custom image to run your tests, you need to first build that image and publish on dockerhub, then specify the [container image](/docs/tas-configuring-tas-yml#containerimage) in `.tas.yml` and container registry options given here in `.synapse.json`. - -> **NOTE:** As of now, we are only supporting **dockerhub**. This is in **beta** currently. -
- -**Example** -```json -"ContainerRegistry": { - "PullPolicy": "always", - "Mode": "public", - "Username": "registryUsername", - "Password": "registryPassword" -} -``` - -| Key | Type | Usage | -| --- | ---- | ----- | -| `ContainerRegistry.PullPolicy` | `string` | Defines when to pull images: `always`, `never` (keep never if image is present in local system) | -| `ContainerRegistry.Mode` | `string` | Image is private or public: `public`, `private` | -| `ContainerRegistry.Username` | `string` | Registry username if the image is private | -| `ContainerRegistry.Password` | `string` | Registry password if the image is private | -
- -### RepoSecrets -Your repositories might need some secrets while compiling or during test execution. You can specify those secrets here and these would be used in the **.tas.yml** configuration file later. A **.tas.yml** file contains all the necessary steps for dependency installation, env variable setup and test execution. - -| Key | Type | Usage | -| --- | ---- | ----- | -| `RepoSecrets` | map of repository name containing secrets | Repository secrets being used by `.tas.yml` | -
- -**Example** -```json -"RepoSecrets": { - "synapse":{ - "SAMPLE_SECRET_KEY": "sample_secret_value" - } -} -``` -
- -### LogConfig -You can specify logging configuration options here to customize the logs deployed on your self hosted agent container for debugging purpose.
- -**Example** -```json -"LogConfig": { - "EnableConsole": true, - "ConsoleJSONFormat": true, - "Consolelevel": "error" -} -``` - -| Key | Type | Usage | -| --------------------------| ------- | ----------------------------------------- | -| `LogConfig.EnableConsole` | `bool` | Enable/Disable console(stdout) logs on the self hosted agent container. | -| `LogConfig.ConsoleJSONFormat` | `bool` | Display self hosted agent container logs in JSON format. | -| `LogConfig.Consolelevel` | `string` | Set self hosted agent container logging levels to display specific logslevel of logs: `error`, `info`, `debug`. | - -### Name -You can name your synapse instance which will be shown in the TAS portal. - -| Key | Type | Usage | -| --- | ---- | ----- | -| `Name` | string | name of your synapse instance | - -**Example** -```json -"Name": "my-synapse-1" -``` -## Sample configuration file -*** - -Here is a sample configuration file for TAS setup on self hosted environment. - -```json title=".synapse.json" -{ - "Name": "my-synapse-1", - "LogConfig": { - "EnableConsole": true, - "ConsoleJSONFormat": true, - "Consolelevel": "error" - }, - "Lambdatest": { - "SecretKey": "add-your-secret-key-here" - }, - "Git": { - "Token": "add-your-git-token-here", - "TokenType": "bearer" - }, - "ContainerRegistry": { - "PullPolicy": "always", - "Mode": "public" - }, - "RepoSecrets": { - "synapse":{ - "SAMPLE_SECRET_KEY": "sample_secret_value" - } - } -} -``` - -#### Setup TAS on Self Hosted Environments -- [Docker](/docs/tas-self-hosted-installation#docker) -- [AWS](/docs/tas-self-hosted-installation#aws) -- [GCP](/docs/tas-self-hosted-installation#gcp) -- [Azure](/docs/tas-self-hosted-installation#azure) \ No newline at end of file diff --git a/docs/tas-self-hosted-installation.md b/docs/tas-self-hosted-installation.md deleted file mode 100644 index 97dab8eb9..000000000 --- a/docs/tas-self-hosted-installation.md +++ /dev/null @@ -1,205 +0,0 @@ ---- -id: tas-self-hosted-installation -title: Installation -hide_title: true -sidebar_label: Installation -description: Installation steps for TAS self hosted. -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Installation - - TAS - Self Hosted -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-self-hosted-installation/ ---- - -# Installation -*** -You can deploy test-at-scale in multiple ways on your infrastructure. We've engineered the platform such that you can setup the system anywhere, from your local workstation to any cloud (AWS, Azure, GCP etc), as per your convenience. - -In order to get started and self host test-at-scale follow the steps given below: - -## Prerequisites -*** -### 1. Getting the LambdaTest Secret Key - -- [Login](https://tas.lambdatest.com/login/) into your TAS account. Select your organisation and select TAS Self Hosted.
(**Note**: The TAS mode selection window will come only once for an organisation). -- After this you should see your **LambdaTest Secret Key** on the next screen. -- Keep this key securely with you and do not share it with anyone as it would be required in the following steps. - -

-Synapse Architecture -

-
- -### 2. Getting the Git Token -A git token is required to clone your repositories to your self hosted environments while running the test execution jobs. -- Generating [GitHub](/docs/tas-how-to-guides-gh-token/) personal access token. -- Generating [GitLab](/docs/tas-how-to-guides-gl-token/) personal access token. -- Generating [Bitbucket](/docs/tas-how-to-guides-bb-token/) personal access token. - -
- -## Step 1 : Creating a configuration file -*** -Before installation we need to create a file that will be used for configuring test-at-scale. - -- Open any **Terminal** of your choice. -- Move to your desired directory or you can create a new directory and move into it. -- Then download our **sample configuration file** using the given command. - -```bash -mkdir ~/test-at-scale -cd ~/test-at-scale -``` -```bash -curl https://raw.githubusercontent.com/LambdaTest/test-at-scale/main/.sample.synapse.json -o .synapse.json -``` -- Open the downloaded **.synapse.json** configuration file in any editor of your choice. The downloaded sample file will contain values for some parameters already. -- Add both of the following parameters into your **.synapse.json** file: - 1. **LambdaTest Secret Key** that you got after login. [Can't find it?](/docs/tas-self-hosted-installation#prerequisites). - 2. **Git Token** that you have already generated. [Can't find git tokens?](/docs/tas-self-hosted-installation#2-getting-the-git-token). - 3. Do not change the predefined **ContainerRegistry** settings inside this file - -Other **optional** parameters such as **Repository Secrets** etc that might be required in configuring test-at-scale on your local/self-hosted environment can also be added in this file. You can learn more about the configuration options [here](/docs/tas-self-hosted-configuration#parameters). - -
- -## Step 2 : Installation -*** -### Installation on Docker - -#### Prerequisites -- [Docker](https://docs.docker.com/get-docker/) and [Docker-Compose](https://docs.docker.com/compose/install/) (Recommended) - -> **NOTE:** **Docker Desktop for Mac and windows** includes Docker-Compose along with other Docker desktop, so you do not need to install Compose separately. - -#### Docker Compose -- Run the docker application. -- **NOTE:** In order to run test-at-scale you require a minimum configuration of 2 CPU cores and 4 GBs of RAM. -- Execute the following command to ensure that resources usable by Docker are atleast **CPU: 2, RAM: 4294967296**. - -```bash -docker info --format "CPU: {{.NCPU}}, RAM: {{.MemTotal}}" -``` - -- The **.synapse.json** configuration file made in [Step 1](/docs/tas-self-hosted-installation#step-1--creating-a-configuration-file) above, will be required before executing the next command. -- Run the docker compose file using the following command. - -```bash -cd ~/test-at-scale -curl -L https://raw.githubusercontent.com/LambdaTest/test-at-scale/main/docker-compose.yml -o docker-compose.yml -docker-compose up -d -``` - -> **NOTE:** This docker-compose file will pull the latest version of test-at-scale and install on your self hosted environment. - - -### Learn more - -- [Docker basic commands](https://docs.docker.com/engine/reference/commandline/docker/) -- [Docker-Compose basic commands](https://docs.docker.com/engine/reference/commandline/compose/) -- [TAS Self-Hosted Basic Troubleshooting](/docs/tas-faq-and-troubleshooting/) - -
- -#### Without Docker Compose -To get up and running quickly, you can use the following instructions to setup Test at Scale on Self hosted environment without docker-compose. - - -- Create a configuration file using [these steps](/docs/tas-self-hosted-installation#step-1--creating-a-configuration-file). -- Execute the following command to run Test at Scale docker container - -```bash -docker network create --internal test-at-scale -docker run --name synapse --restart always \ - -v /var/run/docker.sock:/var/run/docker.sock \ - -v /tmp/synapse:/tmp/synapse \ - -v ${PWD}/.synapse.json:/home/synapse/.synapse.json \ - -v /etc/machine-id:/etc/machine-id \ - --network=test-at-scale \ - lambdatest/synapse:latest -``` - -> **WARNING:** We strongly recommend to use docker-compose while Test at Scale on Self hosted environment. - -
- -### AWS -*** - -#### Prerequisites -- [AWS Account](https://aws.amazon.com/premiumsupport/knowledge-center/create-and-activate-aws-account/) - -#### Create a key pair -- Follow [these](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html#having-ec2-create-your-key-pair) steps to create a key pair. - -> **NOTE:** You can skip this step if you already have a key-pair. - -#### Create AWS Security Groups -- Synapse needs to initiate the connection to the TAS server to fetch the jobs. Make sure the security group allows outbound traffic to `wss://tas.lambdatest.com`. -- Follow [these](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/working-with-security-groups.html#creating-security-group) steps to create a new security group. - -> **NOTE:** You can skip this step if you already have a security group which allows outbound traffic to `wss://tas.lambdatest.com`. - -#### Launch EC2 Instance -- Follow [these](https://docs.aws.amazon.com/efs/latest/ug/gs-step-one-create-ec2-resources.html) steps to create and launch ec2 instance. - -> **NOTE:** Make sure to select the security group which allows outbound traffic to `wss://tas.lambdatest.com` - -#### Running Synapse -- Once the instance is up and running SSH into your instance and deploy synapse on EC2 instance using [docker-compose](/docs/tas-self-hosted-installation#installation-on-docker) - -
- -### GCP -*** - -#### Prerequisites -- [GCP Account](https://cloud.google.com/gcp/) - -#### Create a key pair -- Follow [these](https://cloud.google.com/compute/docs/connect/create-ssh-keys) steps to create a key pair. - -> **NOTE:** you can skip this step if you already have a key-pair. - -#### Add firewall rules -- Synapse needs to initiate the connection to the TAS server to fetch the jobs. Make sure the firewall rules allows outbound traffic to `wss://tas.lambdatest.com`. -- Follow [these](https://cloud.google.com/vpc/docs/using-firewalls) to create new firewall rules. - -> **NOTE:** You can skip this step if you already have firewall rules which allows outbound traffic to `wss://tas.lambdatest.com`. - -#### Launch compute instance -- Follow [these](https://cloud.google.com/compute/docs/instances/create-start-instance) steps to create and launch compute instance in GCP. - -> **NOTE:** Make sure firewall is attached with compute instance by mentioning them in network tags - -#### Running Synapse -- Once the instance is up and running SSH into your instance and deploy synapse on compute instance using [docker-compose](/docs/tas-self-hosted-installation#installation-on-docker) - -
- -### Azure -*** - -#### Prerequisites -- [Azure Account](https://azure.microsoft.com/en-gb/) - -#### Create a key pair -- Follow [these](https://docs.microsoft.com/en-us/azure/virtual-machines/linux/mac-create-ssh-keys) steps if you are **Linux** or **Mac** user. -- Follow [these](https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ssh-from-windows) steps if you are **Windows** user - -> **NOTE:** you can skip this step if you already have a key-pair. - -#### Create Azure Security Group -- Synapse needs to initiate the connection to the TAS server to fetch the jobs. Make sure the security groupallows outbound traffic to `wss://tas.lambdatest.com`. -- Follow [these](https://docs.microsoft.com/en-us/azure/virtual-network/network-security-group-how-it-works) to create new firewall rules. - -> **NOTE:** you can skip this step if you already have the security group which allows outbound traffic to `wss://tas.lambdatest.com`. - -#### Launch virtual machine -- Follow [these](https://docs.microsoft.com/en-us/azure/virtual-machines/linux/quick-create-portal) steps to create and launch VM instance in Azure. - -#### Running Synapse -- Once the instance is up and running SSH into your instance and deploy synapse on vm instance using [docker-compose](/docs/tas-self-hosted-installation#installation-on-docker) diff --git a/docs/tas-self-hosted-overview.md b/docs/tas-self-hosted-overview.md deleted file mode 100644 index 68793b73e..000000000 --- a/docs/tas-self-hosted-overview.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -id: tas-self-hosted-overview -title: Overview -hide_title: true -sidebar_label: Overview -description: TAS self hosted overview -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Overview - - TAS - Self Hosted -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-self-hosted-overview/ ---- - -# Overview -*** -## Summary -*** -The Test At Scale platform accelerates your testing, shortens the build durations and helps you get faster feedback on your code changes. We've engineered the platform such that you can setup the system anywhere, from your local workstation to any cloud (AWS, Azure, GCP etc), as per your convenience. - -When you configure TAS to run in self-hosted environment, all the test execution jobs are executed inside your setup environment. Your code stays within your setup environment. To provide you with test-insights on the TAS portal we store information only related to tests like name of testFile, testCase, testSuite. At no point, we collect business logic of your code.​
- -## Repo Overview -*** -[LambdtaTest/test-at-scale](https://github.com/LambdaTest/test-at-scale/) consists of 2 components: - -- **Synapse:** is the agent responsible for fetching jobs from Test at Scale servers to execute them on the self hosted environment (your laptop or your server farm). Synapse coordinates with nucleus (test runner) and TAS cloud to execute tests and push out test details such as test name, test suite, execution logs, execution metrics. -- **Test Runners:** This component is the driving agent of the container executed to run the actions received by synapse. All actions will be executed on Linux containers and itself manages the lifecycle of the container. It provides functionalities such as logging, metric collections, etc.​
- -## How it works -*** -​
-

-Synapse Architecture -

- -Here is a sample flow for you to understand how it works -- After configuring TAS self-hosted mode and integrating your repositories with TAS platform. -- Whenever you make a commit, raise a PR or merge a PR, the TAS platform receives a webhook event from your git provider. -- This webhook event is simply sent to your self-hosted environment in order to initiate jobs for test execution. -- The test-at-scale binary running on your self hosted environment receives this event and spawns containers to execute those jobs. -- Your code or business logic never leaves your setup environment. -- Only basic test metadata is sent to the TAS server in order to provide you with test insights and other relevant information on the TAS dashboard.​
- -As your workload increases -- You can add more servers running Test-at-scale binary, which will distribute the load amongst themselves automatically. -- Routing: TAS platform will send the test execution jobs to the connected self hosted environments which are online and have enough resources to run the job. -- If the resources are insufficient or fully occupied, the jobs will remain queued on for 2.5 hour and keep checking for resource availability every 30 seconds. -- If TAS platform is unable to find any connected self-hosted binary which can execute the job, it will be marked as failed. diff --git a/docs/tas-telemetry-and-security.md b/docs/tas-telemetry-and-security.md deleted file mode 100644 index c234cbec6..000000000 --- a/docs/tas-telemetry-and-security.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -id: tas-telemetry-and-security -title: Telemetry and Security -hide_title: true -sidebar_label: Telemetry and Security -description: Telemetry and Security about TAS -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Telemetry and Security -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-telemetry-and-security/ ---- - -# Telemetry and Security -*** -## Telemetry -*** -We collect telemetry data during the build process to identify errors. In addition we ask you to opt-in to send us regular usage telemetry during the setup process. -Data collected is strictly anonymous in nature and cannot be used to uniquely identify a user. -What data is collected? - -### TAS Cloud -If you are using our cloud version, we collect the stats of which builds were successful, which were unsuccessful and need our help. - -### TAS - Self hosted via Synapse -Synapse is a lightweight proxy and does not capture any data returned by your APIs, databases, or third-party tools. - -During the installation process, we collect stats of which installations were successful, which were unsuccessful and need our help. - -This is used to analyze the: -- Installation Started -- Installation Success -- Installation Errors -- Installation Support - -We also collect the stats of which builds were successful, which were unsuccessful and need our help. - -## Security -*** -To know more about the security aspect please visit our [security](http://www.lambdatest.com/security) page. \ No newline at end of file diff --git a/docs/tas-tier-and-credits.md b/docs/tas-tier-and-credits.md deleted file mode 100644 index 972f059b9..000000000 --- a/docs/tas-tier-and-credits.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -id: tas-tier-and-credits -title: Tier and Credits Consumption -hide_title: true -sidebar_label: Tier and Credits Consumption -description: Tier and Credits Consumption for TAS -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - Tier and Credits Consumption -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-tier-and-credits/ ---- - -# Tier and Credits Consumption -*** - -With TAS cloud runners we provide a certain amount of free credit quota every month for running your builds. The credit consumption calculation will be based as per described below. You will be only charged for the time your build is actually using compute. - -To check the detailed credit usage, go to **Settings** page and select **Usage Details**. - -### Tier configuration and consumption details -| Configuration | Available On | vCPU | RAM | Credits/Minute | -| ------------- | --------------------- | :--: | :---: | :------------: | -| Small | Free tier | 1 | 2 | 5 | -| Medium | Teams + Enterprise | 2 | 4 | 10 | -| Large | Teams + Enterprise | 4 | 8 | 20 | diff --git a/docs/tas-tutorial-cloud-demo.md b/docs/tas-tutorial-cloud-demo.md deleted file mode 100644 index c0e1e60c5..000000000 --- a/docs/tas-tutorial-cloud-demo.md +++ /dev/null @@ -1,62 +0,0 @@ ---- -id: tas-tutorial-cloud-demo -title: TAS Cloud Demo -hide_title: true -sidebar_label: TAS Cloud Demo -description: Demo Repository integration for TAS Cloud -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - TAS Cloud Demo - - TAS - Tutorial -url: https://www.lambdatest.com/support/docs/tas-tutorial-cloud-demo/ -site_name: LambdaTest -slug: tas-tutorial-cloud-demo/ ---- - -# TAS Cloud Demo -*** - -In this section we will explain how you can setup a sample repo on TAS Cloud and run your first test execution job. - -
-
-
-
-
- -## Step 1 -*** -1. **Fork** any one of our **sample repos** into your GitHub account. Sample repos : [Mocha](https://github.com/LambdaTest/mocha-demos), [Jest](https://github.com/LambdaTest/jest-demos), [Jasmine](https://github.com/LambdaTest/jasmine-node-js-example). -2. **[Create an account](/support/docs/tas-getting-started-creating-an-account)** or **Login** by visiting [TAS Login Page](https://tas.lambdatest.com/login/). (Or [TAS Home Page](https://tas.lambdatest.com/)) - -

- Forking the repo and making account -

- -## Step 2 -*** -3. After login, **select your organisation** and continue with TAS Cloud. -4. Import the same sample repository on the TAS Portal that you have forked earlier. -5. Now its time to configure your `.tas.yml`. For this demo repo `.tas.yml` file is already present 👍, therefore just proceed to **Step 3** below. - -

-Select mode and post-merge -

- - - -## Step 3 -*** -6. On the bottom left corner click **Already have a .tas.yml** and read the instructions. -7. In order make a commit open the **readme file**, make some changes (you can make any changes as we just have to do a dummy commit) and commit them directly to the master branch. -8. Go back to the portal and click on **Understood** to proceed further. -9. You should see a new job under queued or initiating status on your TAS portal. - -

-Select mode and post-merge -

- -**Congratulations 🎉**
-You have successfully initiated your first job. -Once this job finishes you should be able to see the test results for this job. diff --git a/docs/tas-tutorial-self-hosted-demo.md b/docs/tas-tutorial-self-hosted-demo.md deleted file mode 100644 index aa9fe6c05..000000000 --- a/docs/tas-tutorial-self-hosted-demo.md +++ /dev/null @@ -1,76 +0,0 @@ ---- -id: tas-tutorial-self-hosted-demo -title: TAS Self Hosted Demo -hide_title: true -sidebar_label: TAS Self Hosted Demo -description: Demo Repository integration for TAS Self Hosted -keywords: - - LambdaTest TAS - - Test at Scale - - TAS - TAS Self Hosted Demo - - TAS - Tutorial -url: https://www.lambdatest.com/support/docs/ -site_name: LambdaTest -slug: tas-tutorial-self-hosted-demo/ ---- - -# TAS Self Hosted Demo -*** - -In this section we will explain how you can make a configuration file for Test at Scale community version. - -
-
-
-
-
- -## Step 1 -*** -1. **Create an account** by visiting [TAS Login Page](https://tas.lambdatest.com/login/). (Or [TAS Home Page](https://tas.lambdatest.com/)) -2. After login, **select your organisation** and continue with TAS Self Hosted. - -

-Creating an account -

- -## Step 2 -*** -3. Download the configuration file for TAS self hosted and update your LambdaTest SecretKey. - -

-Creating synapse secrets file -

- -4. Download and run the docker-compose file. -5. Click on **Test Connection** and then **Proceed**. - -

-Start Docker Compose -

- -## Step 3 -*** -6. **Fork** any one of our **sample repos** into your GitHub account. Sample repos : [Mocha](https://github.com/LambdaTest/mocha-demos), [Jest](https://github.com/LambdaTest/jest-demos), [Jasmine](https://github.com/LambdaTest/jasmine-node-js-example). -7. Import the same sample repository on the TAS Portal that you have forked earlier. -8. Now its time to configure your `.tas.yml`. For this demo repo `.tas.yml` file is already present 👍, therefore just proceed to **Step 4** below. - - -

-Select mode and post-merge -

- -## Step 4 -*** -10. On the bottom left corner click **Already have a .tas.yml** and read the instructions. -11. In order make a commit open the **readme file**, make some changes (you can make any changes as we just have to do a dummy commit) and commit them directly to the master branch. -12. Go back to the portal and click on **Understood** to proceed further. -13. You should see a new job under queued or initiating status on your TAS portal. - -

-Select mode and post-merge -

- -**Congratulations 🎉**
-You have successfully initiated your first job. -Once this job finishes you should be able to see the test results for this job. diff --git a/sidebars.js b/sidebars.js index 1da12be9e..c2a7abfd4 100644 --- a/sidebars.js +++ b/sidebars.js @@ -3030,87 +3030,6 @@ module.exports = { ], ], - TestAtScale: [ - { - type: "link", - label: "Back", - href: "/docs/", - customProps: { - className: "back-to-main-menu", - }, - }, - [ - { - type: "doc", - label: "Overview", - id: "tas-overview", - }, - { - type: "category", - label: "Getting Started", - items: [ - "tas-getting-started-creating-an-account", - "tas-getting-started-integrating-your-first-repo", - ], - }, - { - type: "category", - label: "Configuration", - items: [ - "tas-configuring-tas-yml", - "tas-configurations-framework", - "tas-configurations-managing-secrets", - ], - }, - { - type: "category", - label: "Test at Scale - Self Hosted", - items: [ - "tas-self-hosted-overview", - "tas-self-hosted-installation", - "tas-self-hosted-configuration", - ], - }, - { - type: "category", - label: "How to Guides", - items: [ - "tas-how-to-guides-gh-token", - "tas-how-to-guides-gl-token", - "tas-how-to-guides-bb-token", - ], - }, - { - type: "category", - label: "Tutorials", - items: ["tas-tutorial-cloud-demo", "tas-tutorial-self-hosted-demo"], - }, - { - type: "category", - label: "Learn about TAS", - items: [ - "tas-learn-about-tas-how-tas-works", - "tas-learn-about-tas-features-and-languages", - ], - }, - { - type: "doc", - label: "Tier and Credits", - id: "tas-tier-and-credits", - }, - // { - // type: 'doc', - // label: 'Telemetry and Security', - // id: 'tas-telemetry-and-security' - // }, - { - type: "doc", - label: "FAQs", - id: "tas-faq-and-troubleshooting", - }, - ], - ], - LambdaTestMigrationGuideSidebar: [ { type: "link", From f9e7408546ef212bbeacccff2ced4941e70390b7 Mon Sep 17 00:00:00 2001 From: amanchopra1905 Date: Thu, 30 Jan 2025 19:40:12 +0530 Subject: [PATCH 2/2] updated the URL --- docs/tosca-integration-with-hyperexecute-using-commander.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/tosca-integration-with-hyperexecute-using-commander.md b/docs/tosca-integration-with-hyperexecute-using-commander.md index b8f368701..72eb05c95 100644 --- a/docs/tosca-integration-with-hyperexecute-using-commander.md +++ b/docs/tosca-integration-with-hyperexecute-using-commander.md @@ -104,7 +104,7 @@ To Integrate Tosca with HyperExecute using YAML, follow the below mentioned step **Step 2:** Create a **TC-Shell Script**: -- A TC-Shell script file usually has the extension _.tcs_, and it contains a sequence of [TC-Shell commands](https://documentation.tricentis.com/tosca/1300/en/content/tosca_commander/tcshell_commands.htm#TC-Shell_&_Keyboard_Shortcuts_699197005_998491) in plain text to configure the steps to execute a Tosca test via command line. This script file is kept in the same folder where you have the actual Tosca project saved. +- A TC-Shell script file usually has the extension _.tcs_, and it contains a sequence of [TC-Shell commands](https://support-hub.tricentis.com/open?id=kb_article_view&table=kb_knowledge&number=KB0035628&searchTerm=shell%20commands) in plain text to configure the steps to execute a Tosca test via command line. This script file is kept in the same folder where you have the actual Tosca project saved. Image