From fe0900d4b2fce989a12e2f55cd738a7f895888ac Mon Sep 17 00:00:00 2001 From: Artur Trzop Date: Thu, 2 Jan 2025 18:51:48 +0100 Subject: [PATCH] [SEO 12.] Avoid 30x redirect in internal links (#223) --- ...0-parallel-jobs-on-ci-buildkite-example.md | 2 +- ...suite-timing-data-from-knapsack-pro-api.md | 2 +- ...rom-scratch-in-any-programming-language.md | 2 +- ...etting-up-knapsack-pro-in-rspec-project.md | 2 +- ...-on-github-actions-with-parallelization.md | 4 +-- ...rallel-jobs-in-minutes-instead-of-hours.md | 2 +- ...ps-on-github-actions-using-knapsack-pro.md | 4 +-- docusaurus/docs/cypress/guide/index.mdx | 28 +++++++++---------- docusaurus/docs/jest/guide/index.mdx | 28 +++++++++---------- .../docs/knapsack_pro-ruby/guide/index.mdx | 28 +++++++++---------- docusaurus/docs/ruby/encryption.mdx | 2 +- docusaurus/docs/vitest/guide/index.mdx | 28 +++++++++---------- 12 files changed, 66 insertions(+), 66 deletions(-) diff --git a/_posts/2017-03-26-auto-balancing-7-hours-tests-between-100-parallel-jobs-on-ci-buildkite-example.md b/_posts/2017-03-26-auto-balancing-7-hours-tests-between-100-parallel-jobs-on-ci-buildkite-example.md index d9cb4a73..218b44c6 100644 --- a/_posts/2017-03-26-auto-balancing-7-hours-tests-between-100-parallel-jobs-on-ci-buildkite-example.md +++ b/_posts/2017-03-26-auto-balancing-7-hours-tests-between-100-parallel-jobs-on-ci-buildkite-example.md @@ -89,7 +89,7 @@ In environment variables, we set Knapsack Pro API key `KNAPSACK_PRO_TEST_SUITE_T When everything is filled you can save your pipeline and run your buildkite agents across your CI nodes. Push a new commit to your repository and allow it to pass. The first CI build run will record time execution of your tests and saves it to Knapsack Pro API. -Go to user [dashboard](https://knapsackpro.com/dashboard) and click build metrics link next to your API token. Click show link on the recent build and ensure the time execution data were recorded for all your CI nodes. You should see info that build subsets were collected. +Go to user [dashboard](https://knapsackpro.com/sessions) and click build metrics link next to your API token. Click show link on the recent build and ensure the time execution data were recorded for all your CI nodes. You should see info that build subsets were collected. From now on you can run your tests with optimal test suite split thanks to dynamic tests allocation across CI nodes. The second commit pushed to repo should have better auto balancing time because Knapsack Pro API can use time execution recorded in the previous run to prepare better work queue. diff --git a/_posts/2018-04-28-how-to-export-test-suite-timing-data-from-knapsack-pro-api.md b/_posts/2018-04-28-how-to-export-test-suite-timing-data-from-knapsack-pro-api.md index fb83eadd..9c803c9e 100644 --- a/_posts/2018-04-28-how-to-export-test-suite-timing-data-from-knapsack-pro-api.md +++ b/_posts/2018-04-28-how-to-export-test-suite-timing-data-from-knapsack-pro-api.md @@ -12,7 +12,7 @@ You may find useful to export data about your CI builds and timing for your test ## How to get a list of all CI builds -You can get the list of all CI builds recorded by Knapsack Pro tool. You need `test suite API token`. You can get it from [user dashboard](https://knapsackpro.com/dashboard). +You can get the list of all CI builds recorded by Knapsack Pro tool. You need `test suite API token`. You can get it from [user dashboard](https://knapsackpro.com/sessions). {% highlight plain %} curl -X GET \ diff --git a/_posts/2021-02-18-how-to-build-knapsack-pro-api-client-from-scratch-in-any-programming-language.md b/_posts/2021-02-18-how-to-build-knapsack-pro-api-client-from-scratch-in-any-programming-language.md index eca4fd0b..817eb417 100644 --- a/_posts/2021-02-18-how-to-build-knapsack-pro-api-client-from-scratch-in-any-programming-language.md +++ b/_posts/2021-02-18-how-to-build-knapsack-pro-api-client-from-scratch-in-any-programming-language.md @@ -21,7 +21,7 @@ Learn [what Regular Mode and Queue Mode are](/2020/how-to-speed-up-ruby-and-java Please see below the dictionary of terms we will use in this article: -- **Knapsack Pro API** - it's an API responsible for deciding how to split test files between parallel CI nodes. Your API client is going to send recorded time execution of your test files to the API to see results in the [Knapsack Pro user dashboard](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=how-to-build-knapsack-pro-api-client-from-scratch-in-any-programming-language). Knapsack Pro API will use the data to better predict how to split your test files in future CI build runs. Here is the [documentation for all API endpoints](/api/). +- **Knapsack Pro API** - it's an API responsible for deciding how to split test files between parallel CI nodes. Your API client is going to send recorded time execution of your test files to the API to see results in the [Knapsack Pro user dashboard](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=how-to-build-knapsack-pro-api-client-from-scratch-in-any-programming-language). Knapsack Pro API will use the data to better predict how to split your test files in future CI build runs. Here is the [documentation for all API endpoints](/api/). - **Knapsack Pro client** - is a library that you install in your project. It contains business logic responsible for connecting with Knapsack Pro API. The client knows how to read environment variables for various CI providers to automatically detect git commit hash, branch name, number of total parallel CI nodes, and CI node index. Knapsack Pro client connects with the Knapsack Pro API to fetch a list of test files to run a proper set of tests on a given parallel CI node. Knapsack Pro client also knows how to integrate with a test runner in a given programming language. For instance, the Knapsack Pro client in Ruby programming language is a `knapsack_pro` ruby gem. It knows how to run tests for test runners like RSpec, Cucumber, Minitest, etc. Simply speaking, Knapsack Pro client is a wrapper around test runner (testing framework) in a given programing language. Here is a [list of existing Knapsack Pro clients](/). diff --git a/_posts/2021-02-25-setting-up-knapsack-pro-in-rspec-project.md b/_posts/2021-02-25-setting-up-knapsack-pro-in-rspec-project.md index e94c7202..0d5359c3 100644 --- a/_posts/2021-02-25-setting-up-knapsack-pro-in-rspec-project.md +++ b/_posts/2021-02-25-setting-up-knapsack-pro-in-rspec-project.md @@ -37,7 +37,7 @@ The combination of your specific CI pipeline configuration and your RSpec usage What we know from experience is that usually the Queue Mode uncovers different adjustment needs than the Regular Mode. The reason behind that is that in the Queue Mode, each one of your parallel CI nodes will usually run the RSpec command multiple times (as compared to just one run per node in the Regular Mode). This distinction might result in additional challenges to solve. -As with all debugging, it's best to narrow down (isolate) possible issues we are tackling at a given time. This is why we strongly suggest to [set up](https://docs.knapsackpro.com/) the Regular Mode first. When you ensure it works as expected, and confirm that in your [User Dashboard](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=setting-up-knapsack-pro-in-rspec-project), you are ready to proceed to the Queue Mode setup. +As with all debugging, it's best to narrow down (isolate) possible issues we are tackling at a given time. This is why we strongly suggest to [set up](https://docs.knapsackpro.com/) the Regular Mode first. When you ensure it works as expected, and confirm that in your [User Dashboard](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=setting-up-knapsack-pro-in-rspec-project), you are ready to proceed to the Queue Mode setup. And now for the good news: we have documented all of the common issues you might encounter during your setup in our [FAQ](https://knapsackpro.com/faq?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=setting-up-knapsack-pro-in-rspec-project). Keep that in mind during your onboarding. diff --git a/_posts/2021-03-05-run-jest-on-github-actions-with-parallelization.md b/_posts/2021-03-05-run-jest-on-github-actions-with-parallelization.md index 8d1ba73a..1153e002 100644 --- a/_posts/2021-03-05-run-jest-on-github-actions-with-parallelization.md +++ b/_posts/2021-03-05-run-jest-on-github-actions-with-parallelization.md @@ -63,7 +63,7 @@ Apart from these two, there are two additional variables defined: `KNAPSACK_PRO_ `KNAPSACK_PRO_TEST_SUITE_TOKEN_JEST` is a token needed for Knapsack API authorization. It's pulled from GitHub secrets set in your project's repository. You can access your secrets in the Settings -> Secrets on your repo's GH page. -To view or generate Knapsack API token for your project, head over to [Knapsack User's Dashboard](https://knapsackpro.com/dashboard/?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=run-jest-on-github-actions-with-parallelization) (you may need to sign up for an account if you don't have one). Save your API token in your GitHub Secrets as `KNAPSACK_PRO_TEST_SUITE_TOKEN_JEST`. +To view or generate Knapsack API token for your project, head over to [Knapsack User's Dashboard](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=run-jest-on-github-actions-with-parallelization) (you may need to sign up for an account if you don't have one). Save your API token in your GitHub Secrets as `KNAPSACK_PRO_TEST_SUITE_TOKEN_JEST`. The other variable, `KNAPSACK_PRO_FIXED_QUEUE_SPLIT` needs to be set to `true`. This will ensure the retry functionality on GitHub Actions works correctly with Knapsack API. @@ -121,6 +121,6 @@ jobs: When your GitHub Actions is properly set up, it's going to run your build when you push new changes to the repository. You can now enjoy the optimal parallelization of your Jest tests. -To see how Knapsack is splitting your test suite, visit the [User Dashboard](https://knapsackpro.com/dashboard/?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=run-jest-on-github-actions-with-parallelization). The GitHub Actions builds will also be visible under the _Actions_ tab in your project's repository on GH. +To see how Knapsack is splitting your test suite, visit the [User Dashboard](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=run-jest-on-github-actions-with-parallelization). The GitHub Actions builds will also be visible under the _Actions_ tab in your project's repository on GH. Anything unclear? Leave a comment below or go ahead and [contact us](https://knapsackpro.com/contact?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=run-jest-on-github-actions-with-parallelization) about your problem. We'll be happy to help! diff --git a/_posts/2021-03-19-auto-scaling-buildkite-ci-build-agents-for-rspec-run-parallel-jobs-in-minutes-instead-of-hours.md b/_posts/2021-03-19-auto-scaling-buildkite-ci-build-agents-for-rspec-run-parallel-jobs-in-minutes-instead-of-hours.md index 8fff57e3..f7d358f9 100644 --- a/_posts/2021-03-19-auto-scaling-buildkite-ci-build-agents-for-rspec-run-parallel-jobs-in-minutes-instead-of-hours.md +++ b/_posts/2021-03-19-auto-scaling-buildkite-ci-build-agents-for-rspec-run-parallel-jobs-in-minutes-instead-of-hours.md @@ -27,7 +27,7 @@ This allows running the whole RSpec test suite in just 5 minutes 20 seconds! parallel machines, parallel jobs, Buildkite, Knapsack Pro, tests, RSpec -The above graph comes from the Knapsack Pro [user dashboard](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=auto-scaling-buildkite-ci-build-agents-for-rspec-run-parallel-jobs-in-minutes-instead-of-hours). 151 parallel jobs are a lot of machines. It would take the whole screen to show you 151 bars. You can only see the last few bars on the graph. The bars are showing how the RSpec test files were split between parallel machines. +The above graph comes from the Knapsack Pro [user dashboard](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=auto-scaling-buildkite-ci-build-agents-for-rspec-run-parallel-jobs-in-minutes-instead-of-hours). 151 parallel jobs are a lot of machines. It would take the whole screen to show you 151 bars. You can only see the last few bars on the graph. The bars are showing how the RSpec test files were split between parallel machines. You can see that each parallel machine finishes work at a similar time. The right edges of all of the bars are pretty close to each other. This is the important part. You want to ensure the RSpec work is distributed evenly between parallel jobs. This way you can avoid a bottleneck - a slow job running too many test files. I'll show you how to do it. diff --git a/_posts/2021-03-23-faster-cypress-rspec-test-suite-for-rails-apps-on-github-actions-using-knapsack-pro.md b/_posts/2021-03-23-faster-cypress-rspec-test-suite-for-rails-apps-on-github-actions-using-knapsack-pro.md index c7f1f480..238dbc0b 100644 --- a/_posts/2021-03-23-faster-cypress-rspec-test-suite-for-rails-apps-on-github-actions-using-knapsack-pro.md +++ b/_posts/2021-03-23-faster-cypress-rspec-test-suite-for-rails-apps-on-github-actions-using-knapsack-pro.md @@ -13,7 +13,7 @@ Cypress is an amazing tool for end to end testing Rails applications, but large ## Set up Knapsack Pro API Keys -First step is to go to your Knapsack [dashboard](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=faster-cypress-rspec-test-suite-for-rails-apps-on-github-actions-using-knapsack-pro) and grab your API keys for both RSpec and Cypress. Once you have those, go to your Github Repo's settings, for example: +First step is to go to your Knapsack [dashboard](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=faster-cypress-rspec-test-suite-for-rails-apps-on-github-actions-using-knapsack-pro) and grab your API keys for both RSpec and Cypress. Once you have those, go to your Github Repo's settings, for example: image @@ -233,7 +233,7 @@ Once you've completed the above steps, trigger a test run on your repo. You shou Screen Shot 2021-03-23 at 10 13 30 AM -Now check your [Knapsack Dashboard](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=faster-cypress-rspec-test-suite-for-rails-apps-on-github-actions-using-knapsack-pro) for the results 🚀 +Now check your [Knapsack Dashboard](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=blog_post&utm_campaign=faster-cypress-rspec-test-suite-for-rails-apps-on-github-actions-using-knapsack-pro) for the results 🚀 The complete example Rails app can be found [here](https://github.com/goodproblems/knapsack-example-rails-app). Happy testing! diff --git a/docusaurus/docs/cypress/guide/index.mdx b/docusaurus/docs/cypress/guide/index.mdx index 5c2f6236..f43656e4 100644 --- a/docusaurus/docs/cypress/guide/index.mdx +++ b/docusaurus/docs/cypress/guide/index.mdx @@ -70,7 +70,7 @@ Now, fill in the following form to generate the instruction steps for your proje ### AppVeyor -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_appveyor) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_appveyor) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. For each parallel job, define: @@ -119,7 +119,7 @@ npx knapsack-pro-cypress --config trashAssetsBeforeRuns=false ### Buildkite -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_buildkite) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_buildkite) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Remember to configure the `parallelism` parameter in your build step. @@ -185,7 +185,7 @@ You can also check out the following example repositories for Ruby on Rails proj ### CircleCI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_circleci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_circleci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Remember to add additional parallel containers in the CircleCI settings. @@ -215,7 +215,7 @@ Here you can find an example of a [Rails application configured with Knapsack Pr ### Cirrus CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_cirrusci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_cirrusci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Configure the number of parallel CI nodes with the [matrix modification](https://cirrus-ci.org/guide/writing-tasks/#matrix-modification): @@ -241,7 +241,7 @@ Here is an example of a [`.cirrus.yml` configuration file](https://cirrus-ci.org ### CloudBees CodeShip -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_codeship) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_codeship) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. For each [parallel pipeline](https://documentation.codeship.com/basic/builds-and-configuration/parallel-tests/#using-parallel-test-pipelines), define: @@ -290,7 +290,7 @@ Consider moving the `KNAPSACK_PRO_TEST_SUITE_TOKEN_CYPRESS` to the _Environment_ ### Codefresh -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_codefresh) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_codefresh) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.codefresh/codefresh.yml`: @@ -388,7 +388,7 @@ RUN npm install ### GitHub Actions -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_githubactions) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_githubactions) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.github/workflows/main.yaml`: @@ -450,7 +450,7 @@ jobs: ### GitLab CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_gitlabci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_gitlabci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. #### GitLab CI >= 11.5 @@ -508,7 +508,7 @@ Remember to set up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_CYPRESS` as [Secret Variab ### Heroku CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_herokuci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_herokuci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `app.json`: @@ -551,7 +551,7 @@ Remember to set up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_CYPRESS` outside of `app.j ### Jenkins -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_jenkins) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_jenkins) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. In order to run parallel jobs with Jenkins you should use Jenkins Pipeline as described in [Parallelism and Distributed Builds with Jenkins](https://www.cloudbees.com/blog/parallelism-and-distributed-builds-jenkins). @@ -613,7 +613,7 @@ Consider setting up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_*` as global environment ### Semaphore CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_semaphoreci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_semaphoreci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.semaphore/semaphore.yml`: @@ -663,7 +663,7 @@ Remember to set up `KNAPSACK_PRO_TEST_SUITE_TOKEN_CYPRESS` as a [secret](https:/ ### Travis CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_travisci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_travisci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.travis.yml`: @@ -695,7 +695,7 @@ You can find more info about the global and matrix env configuration in the [Tra ### Other CI provider -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_otherci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-cypress&utm_content=installation_guide_otherci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define the following global environment variables on your CI server: @@ -746,7 +746,7 @@ npx knapsack-pro-cypress --config trashAssetsBeforeRuns=false ### Verify that everything works -Push a new commit to your repository and visit your [dashboard](https://knapsackpro.com/dashboard) to make sure all your CI nodes were recorded successfully in _Show build metrics > Show (build)_. +Push a new commit to your repository and visit your [dashboard](https://knapsackpro.com/sessions) to make sure all your CI nodes were recorded successfully in _Show build metrics > Show (build)_. **Congratulations!** Now that Knapsack Pro knows the statistics of your test suite, your CI builds will be parallelized optimally. diff --git a/docusaurus/docs/jest/guide/index.mdx b/docusaurus/docs/jest/guide/index.mdx index e54ecbf7..fe2487fa 100644 --- a/docusaurus/docs/jest/guide/index.mdx +++ b/docusaurus/docs/jest/guide/index.mdx @@ -68,7 +68,7 @@ Now, fill in the following form to generate the instruction steps for your proje ### AppVeyor -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_appveyor) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_appveyor) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. For each parallel job, define: @@ -117,7 +117,7 @@ npx knapsack-pro-jest --runInBand ### Buildkite -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_buildkite) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_buildkite) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Remember to configure the `parallelism` parameter in your build step. @@ -183,7 +183,7 @@ You can also check out the following example repositories for Ruby on Rails proj ### CircleCI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_circleci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_circleci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Remember to add additional parallel containers in the CircleCI settings. @@ -213,7 +213,7 @@ Here you can find an example of a [Rails project config on CircleCI 2.0](https:/ ### Cirrus CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_cirrusci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_cirrusci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Configure the number of parallel CI nodes with the [matrix modification](https://cirrus-ci.org/guide/writing-tasks/#matrix-modification): @@ -239,7 +239,7 @@ Here is an example of a [`.cirrus.yml` configuration file](https://cirrus-ci.org ### CloudBees CodeShip -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_codeship) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_codeship) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. For each [parallel pipeline](https://documentation.codeship.com/basic/builds-and-configuration/parallel-tests/#using-parallel-test-pipelines), define: @@ -288,7 +288,7 @@ Consider moving the `KNAPSACK_PRO_TEST_SUITE_TOKEN_JEST` to the _Environment_ pa ### Codefresh -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_codefresh) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_codefresh) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.codefresh/codefresh.yml`: @@ -385,7 +385,7 @@ RUN npm install ### GitHub Actions -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_githubactions) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_githubactions) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.github/workflows/main.yaml`: @@ -443,7 +443,7 @@ jobs: ### GitLab CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_gitlabci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_gitlabci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. #### GitLab CI >= 11.5 @@ -501,7 +501,7 @@ Remember to set up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_JEST` as [Secret Variables ### Heroku CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_herokuci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_herokuci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `app.json`: @@ -544,7 +544,7 @@ Remember to set up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_JEST` outside of `app.json ### Jenkins -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_jenkins) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_jenkins) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. In order to run parallel jobs with Jenkins you should use Jenkins Pipeline as described in [Parallelism and Distributed Builds with Jenkins](https://www.cloudbees.com/blog/parallelism-and-distributed-builds-jenkins). @@ -606,7 +606,7 @@ Consider setting up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_*` as global environment ### Semaphore CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_semaphoreci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_semaphoreci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.semaphore/semaphore.yml`: @@ -656,7 +656,7 @@ Remember to set up `KNAPSACK_PRO_TEST_SUITE_TOKEN_JEST` as a [secret](https://do ### Travis CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_travisci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_travisci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.travis.yml`: @@ -688,7 +688,7 @@ You can find more info about the global and matrix env configuration in the [Tra ### Other CI provider -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_otherci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-jest&utm_content=installation_guide_otherci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define the following global environment variables on your CI server: @@ -815,7 +815,7 @@ You need to explicitly tell Knapsack Pro to [load the `jest.config.js` file](../ ### Verify that everything works -Push a new commit to your repository and visit your [dashboard](https://knapsackpro.com/dashboard) to make sure all your CI nodes were recorded successfully in _Show build metrics > Show (build)_. +Push a new commit to your repository and visit your [dashboard](https://knapsackpro.com/sessions) to make sure all your CI nodes were recorded successfully in _Show build metrics > Show (build)_. **Congratulations!** Now that Knapsack Pro knows the statistics of your test suite, your CI builds will be parallelized optimally. diff --git a/docusaurus/docs/knapsack_pro-ruby/guide/index.mdx b/docusaurus/docs/knapsack_pro-ruby/guide/index.mdx index a48d8137..2e336080 100644 --- a/docusaurus/docs/knapsack_pro-ruby/guide/index.mdx +++ b/docusaurus/docs/knapsack_pro-ruby/guide/index.mdx @@ -167,7 +167,7 @@ KnapsackPro::Adapters::SpinachAdapter.bind ### AppVeyor -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_appveyor) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_appveyor) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. For each parallel job, define: @@ -243,7 +243,7 @@ bundle exec rake knapsack_pro:queue:cucumber ### Buildkite -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_buildkite) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_buildkite) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Remember to configure the `parallelism` parameter in your build step. @@ -334,7 +334,7 @@ You can also check out the following example repositories for Ruby on Rails proj ### CircleCI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_circleci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_circleci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Remember to add additional parallel containers in the CircleCI settings. @@ -379,7 +379,7 @@ See how to configure [advanced CircleCI features](../../ruby/circleci.mdx) with ### Cirrus CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_cirrusci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_cirrusci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Configure the number of parallel CI nodes with the [matrix modification](https://cirrus-ci.org/guide/writing-tasks/#matrix-modification): @@ -411,7 +411,7 @@ Here is an example of a [`.cirrus.yml` configuration file](https://cirrus-ci.org ### CloudBees CodeShip -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_codeship) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_codeship) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. For each [parallel pipeline](https://documentation.codeship.com/basic/builds-and-configuration/parallel-tests/#using-parallel-test-pipelines), define: @@ -487,7 +487,7 @@ Consider moving the `KNAPSACK_PRO_TEST_SUITE_TOKEN_*` to the _Environment_ page ### Codefresh -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_codefresh) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_codefresh) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.codefresh/codefresh.yml`: @@ -615,7 +615,7 @@ RUN bundle install ### GitHub Actions -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_githubactions) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_githubactions) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.github/workflows/main.yaml`: @@ -716,7 +716,7 @@ jobs: ### GitLab CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_gitlabci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_gitlabci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. #### GitLab CI >= 11.5 @@ -786,7 +786,7 @@ Remember to set up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_*` as [Secret Variables](h ### Heroku CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_herokuci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_herokuci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `app.json`: @@ -829,7 +829,7 @@ Remember to set up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_*` outside of `app.json` i ### Jenkins -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_jenkins) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_jenkins) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. In order to run parallel jobs with Jenkins you should use Jenkins Pipeline as described in [Parallelism and Distributed Builds with Jenkins](https://www.cloudbees.com/blog/parallelism-and-distributed-builds-jenkins). @@ -900,7 +900,7 @@ Consider setting up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_*` as global environment ### Semaphore CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_semaphoreci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_semaphoreci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.semaphore/semaphore.yml`: @@ -978,7 +978,7 @@ Remember to set up `KNAPSACK_PRO_TEST_SUITE_TOKEN_*` as a [secret](https://docs. ### Travis CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_travisci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_travisci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.travis.yml`: @@ -1018,7 +1018,7 @@ You can find more info about the global and matrix env configuration in the [Tra ### Other CI provider -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_otherci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack_pro-ruby_gem&utm_content=installation_guide_otherci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define the following global environment variables on your CI server: @@ -1113,7 +1113,7 @@ bundle exec rake knapsack_pro:queue:cucumber ### Verify that everything works -Push a new commit to your repository and visit your [dashboard](https://knapsackpro.com/dashboard) to make sure all your CI nodes were recorded successfully in _Show build metrics > Show (build)_. +Push a new commit to your repository and visit your [dashboard](https://knapsackpro.com/sessions) to make sure all your CI nodes were recorded successfully in _Show build metrics > Show (build)_. :::caution diff --git a/docusaurus/docs/ruby/encryption.mdx b/docusaurus/docs/ruby/encryption.mdx index 431691e7..8ddd8592 100644 --- a/docusaurus/docs/ruby/encryption.mdx +++ b/docusaurus/docs/ruby/encryption.mdx @@ -29,7 +29,7 @@ If you consider test file names or branch names sensitive data, you can encrypt ## Enable encryption -- [Generate](https://knapsackpro.com/dashboard) a new API token (do not use the same token for encrypted and non-encrypted runs) +- [Generate](https://knapsackpro.com/sessions) a new API token (do not use the same token for encrypted and non-encrypted runs) - Create a salt with `bundle exec rake knapsack_pro:salt` - Pass the salt to Knapsack Pro with [`KNAPSACK_PRO_SALT`](reference.md#knapsack_pro_salt) - Enable test file names encryption with [`KNAPSACK_PRO_TEST_FILES_ENCRYPTED=true`](reference.md#knapsack_pro_test_files_encrypted) diff --git a/docusaurus/docs/vitest/guide/index.mdx b/docusaurus/docs/vitest/guide/index.mdx index d10fbb5f..a91efd73 100644 --- a/docusaurus/docs/vitest/guide/index.mdx +++ b/docusaurus/docs/vitest/guide/index.mdx @@ -62,7 +62,7 @@ Now, fill in the following form to generate the instruction steps for your proje ### AppVeyor -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_appveyor) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_appveyor) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. For each parallel job, define: @@ -111,7 +111,7 @@ npx knapsack-pro-vitest ### Buildkite -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_buildkite) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_buildkite) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Remember to configure the `parallelism` parameter in your build step. @@ -177,7 +177,7 @@ You can also check out the following example repositories for Ruby on Rails proj ### CircleCI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_circleci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_circleci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Remember to add additional parallel containers in the CircleCI settings. @@ -207,7 +207,7 @@ Here you can find an example of a [Rails project config on CircleCI 2.0](https:/ ### Cirrus CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_cirrusci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_cirrusci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Configure the number of parallel CI nodes with the [matrix modification](https://cirrus-ci.org/guide/writing-tasks/#matrix-modification): @@ -233,7 +233,7 @@ Here is an example of a [`.cirrus.yml` configuration file](https://cirrus-ci.org ### CloudBees CodeShip -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_codeship) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_codeship) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. For each [parallel pipeline](https://documentation.codeship.com/basic/builds-and-configuration/parallel-tests/#using-parallel-test-pipelines), define: @@ -282,7 +282,7 @@ Consider moving the `KNAPSACK_PRO_TEST_SUITE_TOKEN_VITEST` to the _Environment_ ### Codefresh -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_codefresh) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_codefresh) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.codefresh/codefresh.yml`: @@ -379,7 +379,7 @@ RUN npm install ### GitHub Actions -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_githubactions) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_githubactions) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.github/workflows/main.yaml`: @@ -437,7 +437,7 @@ jobs: ### GitLab CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_gitlabci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_gitlabci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. #### GitLab CI >= 11.5 @@ -495,7 +495,7 @@ Remember to set up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_VITEST` as [Secret Variabl ### Heroku CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_herokuci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_herokuci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `app.json`: @@ -538,7 +538,7 @@ Remember to set up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_VITEST` outside of `app.js ### Jenkins -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_jenkins) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_jenkins) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. In order to run parallel jobs with Jenkins you should use Jenkins Pipeline as described in [Parallelism and Distributed Builds with Jenkins](https://www.cloudbees.com/blog/parallelism-and-distributed-builds-jenkins). @@ -600,7 +600,7 @@ Consider setting up the `KNAPSACK_PRO_TEST_SUITE_TOKEN_*` as global environment ### Semaphore CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_semaphoreci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_semaphoreci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.semaphore/semaphore.yml`: @@ -650,7 +650,7 @@ Remember to set up `KNAPSACK_PRO_TEST_SUITE_TOKEN_VITEST` as a [secret](https:// ### Travis CI -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_travisci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_travisci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define in `.travis.yml`: @@ -682,7 +682,7 @@ You can find more info about the global and matrix env configuration in the [Tra ### Other CI provider -[Generate an API token](https://knapsackpro.com/dashboard?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_otherci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. +[Generate an API token](https://knapsackpro.com/sessions?utm_source=docs_knapsackpro&utm_medium=page&utm_campaign=knapsack-pro-vitest&utm_content=installation_guide_otherci) for each Knapsack Pro command on the CI. Each command needs its own API token to treat every test suite as a separate entity. Define the following global environment variables on your CI server: @@ -733,7 +733,7 @@ npx knapsack-pro-vitest ### Verify that everything works -Push a new commit to your repository and visit your [dashboard](https://knapsackpro.com/dashboard) to make sure all your CI nodes were recorded successfully in _Show build metrics > Show (build)_. +Push a new commit to your repository and visit your [dashboard](https://knapsackpro.com/sessions) to make sure all your CI nodes were recorded successfully in _Show build metrics > Show (build)_. **Congratulations!** Now that Knapsack Pro knows the statistics of your test suite, your CI builds will be parallelized optimally.