From b332c09921ca83eba377895c669ac289e5170554 Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Fri, 11 May 2018 16:12:03 -0400 Subject: [PATCH 0001/1851] Drop bits on PEAR Composer is now the preferred dependency management tool --- user/languages/php.md | 26 +------------------------- 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/user/languages/php.md b/user/languages/php.md index cb3f48bff8b..006a1c422d2 100644 --- a/user/languages/php.md +++ b/user/languages/php.md @@ -200,30 +200,6 @@ To see real world examples, see: - [LiipHyphenatorBundle](https://github.com/liip/LiipHyphenatorBundle/blob/master/.travis.yml) - [doctrine2](https://github.com/doctrine/doctrine2/blob/master/.travis.yml) -### Installing PEAR packages - -If your dependencies include PEAR packages, the Travis CI PHP environment has the [Pyrus](http://pear2.php.net/) and [pear](http://pear.php.net/) commands available: - -```bash -pyrus install http://phptal.org/latest.tar.gz -pear install pear/PHP_CodeSniffer -``` - -After install you should refresh your path - -```bash -phpenv rehash -``` - -For example, if you want to use phpcs, you should execute: - -```bash -pyrus install pear/PHP_CodeSniffer -phpenv rehash -``` - -Then you can use phpcs like the phpunit command - ### Installing Composer packages
@@ -406,7 +382,7 @@ virtual host as usual, the important part for php-fpm is this: Action php5-fcgi /php5-fcgi Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass-header Authorization - + Require all granted From 960a22b41722a588ea5d09f0b03f8ebf1be535c3 Mon Sep 17 00:00:00 2001 From: Jan Schulte Date: Tue, 11 Sep 2018 10:36:41 +0200 Subject: [PATCH 0002/1851] Explain how to find out connected workers and available concurrency --- user/enterprise/platform-tips.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/user/enterprise/platform-tips.md b/user/enterprise/platform-tips.md index 597e6b930eb..abaf31d13b3 100644 --- a/user/enterprise/platform-tips.md +++ b/user/enterprise/platform-tips.md @@ -309,6 +309,28 @@ Additionally, please the following command to clean up all Docker build images: $ sudo docker images | grep travis | awk '{print $3}' | xargs sudo docker rmi -f ``` +## Find out available concurrency + +If you wish to find out how much concurrency is available in your Travis CI Enterprise setup, please connect to your platform machine via ssh and follow these steps: + +``` +$ travis bash +root@te-main:/# rabbitmqctl list_consumers -p travis | grep builds.trusty | wc -l +``` + +The number that's returned here is equal the maximum number of concurrent jobs that are available. + +## Find out how many workers are connected + +If you wish to find out how many worker machines are currently connected, please connect to your platform machine via ssh and follow these steps: + +``` +$ travis bash +root@te-main:/# rabbitmqctl list_consumers -p travis | grep amq.gen- | wc -l +``` + +The number that's returned here is equal the currenctly connected worker machines. + ## Contact Enterprise Support {{ site.data.snippets.contact_enterprise_support }} From c62e0066d93b6a0aa84fd21fe5f24fb2e0916542 Mon Sep 17 00:00:00 2001 From: Jan Schulte Date: Tue, 11 Sep 2018 10:43:47 +0200 Subject: [PATCH 0003/1851] Reference other docs for adjusting concurrency and installing new worker machines --- user/enterprise/platform-tips.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/user/enterprise/platform-tips.md b/user/enterprise/platform-tips.md index abaf31d13b3..1b01980dce7 100644 --- a/user/enterprise/platform-tips.md +++ b/user/enterprise/platform-tips.md @@ -309,7 +309,7 @@ Additionally, please the following command to clean up all Docker build images: $ sudo docker images | grep travis | awk '{print $3}' | xargs sudo docker rmi -f ``` -## Find out available concurrency +## Find out maximum available concurrency If you wish to find out how much concurrency is available in your Travis CI Enterprise setup, please connect to your platform machine via ssh and follow these steps: @@ -318,9 +318,9 @@ $ travis bash root@te-main:/# rabbitmqctl list_consumers -p travis | grep builds.trusty | wc -l ``` -The number that's returned here is equal the maximum number of concurrent jobs that are available. +The number that's returned here is equal the maximum number of concurrent jobs that are available. To adjust concurrency, please follow the instructions [here](/user/enterprise/worker-configuration/#configuring-the-number-of-concurrent-jobs) for each worker machine. -## Find out how many workers are connected +## Find out how many worker machines are connected If you wish to find out how many worker machines are currently connected, please connect to your platform machine via ssh and follow these steps: @@ -329,7 +329,7 @@ $ travis bash root@te-main:/# rabbitmqctl list_consumers -p travis | grep amq.gen- | wc -l ``` -The number that's returned here is equal the currenctly connected worker machines. +The number that's returned here is equal the currenctly connected worker machines. If you need to spin up more worker machines, please follow the instructions [here](/user/enterprise/installation/#install-travis-ci-worker). ## Contact Enterprise Support From fb977aee1a4fa00632fa6d57e254c309c06aab60 Mon Sep 17 00:00:00 2001 From: Danish Khan Date: Tue, 11 Sep 2018 09:24:43 -0700 Subject: [PATCH 0004/1851] Some grammar fixes --- user/enterprise/platform-tips.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/user/enterprise/platform-tips.md b/user/enterprise/platform-tips.md index 1b01980dce7..cb72bc4a4b1 100644 --- a/user/enterprise/platform-tips.md +++ b/user/enterprise/platform-tips.md @@ -318,7 +318,7 @@ $ travis bash root@te-main:/# rabbitmqctl list_consumers -p travis | grep builds.trusty | wc -l ``` -The number that's returned here is equal the maximum number of concurrent jobs that are available. To adjust concurrency, please follow the instructions [here](/user/enterprise/worker-configuration/#configuring-the-number-of-concurrent-jobs) for each worker machine. +The number that's returned here is equal to the maximum number of concurrent jobs that are available. To adjust concurrency, please follow the instructions [here](/user/enterprise/worker-configuration/#configuring-the-number-of-concurrent-jobs) for each worker machine. ## Find out how many worker machines are connected @@ -329,7 +329,7 @@ $ travis bash root@te-main:/# rabbitmqctl list_consumers -p travis | grep amq.gen- | wc -l ``` -The number that's returned here is equal the currenctly connected worker machines. If you need to spin up more worker machines, please follow the instructions [here](/user/enterprise/installation/#install-travis-ci-worker). +The number that's returned here is equal to the currently connected worker machines. If you need to spin up more worker machines, please follow the instructions [here](/user/enterprise/installation/#install-travis-ci-worker). ## Contact Enterprise Support From 838c880801853a9e221e107b51b5ff9f63e9b35d Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Fri, 28 Sep 2018 09:08:13 -0400 Subject: [PATCH 0005/1851] Suggest `nvm install` for Node.js debug builds --- user/running-build-in-debug-mode.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/user/running-build-in-debug-mode.md b/user/running-build-in-debug-mode.md index 5da9d738257..2cb5a75a9d0 100644 --- a/user/running-build-in-debug-mode.md +++ b/user/running-build-in-debug-mode.md @@ -205,3 +205,17 @@ Press `q` to exit the log scroll mode. Once you exit from all the live `tmate` windows, the debug VM will terminate after resetting the job's status to the original status before you restarted it. No more phases (`before_install`, `install`, etc.) will be executed. + +### Known issues + +1. Node.js debug builds need to set up the execution environment + +When running a Node.js job in the debug mode, your `node` and `npm` +commands may not set up according to the build configuration. +Running + +``` +nvm install $TRAVIS_NODE_VERSION +``` + +should set up the environment properly. From 459f7aa1c446e9cbdad96a17b207258cc557343a Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Fri, 28 Sep 2018 09:24:38 -0400 Subject: [PATCH 0006/1851] Fix indentation --- user/running-build-in-debug-mode.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/user/running-build-in-debug-mode.md b/user/running-build-in-debug-mode.md index 2cb5a75a9d0..6d6e595cc0a 100644 --- a/user/running-build-in-debug-mode.md +++ b/user/running-build-in-debug-mode.md @@ -210,12 +210,12 @@ No more phases (`before_install`, `install`, etc.) will be executed. 1. Node.js debug builds need to set up the execution environment -When running a Node.js job in the debug mode, your `node` and `npm` -commands may not set up according to the build configuration. -Running + When running a Node.js job in the debug mode, your `node` and `npm` + commands may not set up according to the build configuration. + Running -``` -nvm install $TRAVIS_NODE_VERSION -``` + ``` + nvm install $TRAVIS_NODE_VERSION + ``` -should set up the environment properly. + should set up the environment properly. From 08cfedc9a9b421837a2ecf85cf825699fe409c9e Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Fri, 28 Sep 2018 09:26:51 -0400 Subject: [PATCH 0007/1851] Move "Known issues" one header level up So it is consistent with others, and that it shows up in TOC --- user/running-build-in-debug-mode.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user/running-build-in-debug-mode.md b/user/running-build-in-debug-mode.md index 6d6e595cc0a..e9fd210eff2 100644 --- a/user/running-build-in-debug-mode.md +++ b/user/running-build-in-debug-mode.md @@ -206,7 +206,7 @@ Once you exit from all the live `tmate` windows, the debug VM will terminate after resetting the job's status to the original status before you restarted it. No more phases (`before_install`, `install`, etc.) will be executed. -### Known issues +## Known issues 1. Node.js debug builds need to set up the execution environment From 5d7754e35f3306ddc04288bf695896e7279c6c5f Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Fri, 28 Sep 2018 09:27:48 -0400 Subject: [PATCH 0008/1851] Fix indentation once again --- user/running-build-in-debug-mode.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/user/running-build-in-debug-mode.md b/user/running-build-in-debug-mode.md index e9fd210eff2..e7917085333 100644 --- a/user/running-build-in-debug-mode.md +++ b/user/running-build-in-debug-mode.md @@ -208,14 +208,14 @@ No more phases (`before_install`, `install`, etc.) will be executed. ## Known issues -1. Node.js debug builds need to set up the execution environment +### Node.js debug builds need to set up the execution environment - When running a Node.js job in the debug mode, your `node` and `npm` - commands may not set up according to the build configuration. - Running +When running a Node.js job in the debug mode, your `node` and `npm` +commands may not set up according to the build configuration. +Running - ``` - nvm install $TRAVIS_NODE_VERSION - ``` +``` +nvm install $TRAVIS_NODE_VERSION +``` - should set up the environment properly. +should set up the environment properly. From ffc58df79e604f20ce633f4345af4417be8f408e Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Fri, 28 Sep 2018 09:30:22 -0400 Subject: [PATCH 0009/1851] Fix grammar --- user/running-build-in-debug-mode.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user/running-build-in-debug-mode.md b/user/running-build-in-debug-mode.md index e7917085333..dceb03c915d 100644 --- a/user/running-build-in-debug-mode.md +++ b/user/running-build-in-debug-mode.md @@ -211,7 +211,7 @@ No more phases (`before_install`, `install`, etc.) will be executed. ### Node.js debug builds need to set up the execution environment When running a Node.js job in the debug mode, your `node` and `npm` -commands may not set up according to the build configuration. +commands may not be set up according to the build configuration. Running ``` From a9641d0eef05120cad7c586c2bf745eba664997c Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Fri, 28 Sep 2018 16:23:49 -0400 Subject: [PATCH 0010/1851] Rework Node.js debug session section --- user/running-build-in-debug-mode.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/user/running-build-in-debug-mode.md b/user/running-build-in-debug-mode.md index dceb03c915d..7097c7be59e 100644 --- a/user/running-build-in-debug-mode.md +++ b/user/running-build-in-debug-mode.md @@ -208,14 +208,12 @@ No more phases (`before_install`, `install`, etc.) will be executed. ## Known issues -### Node.js debug builds need to set up the execution environment +### In a Node.js debug session, the `node` and `npm` versions differ from what is defined in the configuration -When running a Node.js job in the debug mode, your `node` and `npm` -commands may not be set up according to the build configuration. -Running +To set up the debug environment in the same ways as the Node.js job, +run the following command when you log in to your debug session before +executing any other command: ``` nvm install $TRAVIS_NODE_VERSION ``` - -should set up the environment properly. From a48098eab2a0ae25252e1df1bc5c1b448891528d Mon Sep 17 00:00:00 2001 From: Justine Lera <1385032+justien@users.noreply.github.com> Date: Mon, 1 Oct 2018 16:15:41 +0200 Subject: [PATCH 0011/1851] Create refund-policy.md --- legal/refund-policy.md | 44 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 legal/refund-policy.md diff --git a/legal/refund-policy.md b/legal/refund-policy.md new file mode 100644 index 00000000000..4ca789d4f35 --- /dev/null +++ b/legal/refund-policy.md @@ -0,0 +1,44 @@ +--- +title: Refund Policy +layout: en +no_toc: true +--- + +# Upgrades, Downgrades, Plan Changes +- All monthly plan changes are automatically pro-rated and are taken into account in the next billing period. + - **Upgrade example:** +You're on the 5-job plan. In the middle of your billing period, you upgrade to the 10-job plan. We will charge the rest of the month on the 10-job plan rate. We will also credit you the unused time on the 5-job plan. + - **Downgrade example:** +You’re on the 10-job plan. In the middle of your billing period, you downgrade to the 5-job plan. We will charge the rest of the month on the 5-job plan rate. We will also credit you the unused time on the 10-job plan. +- Annual plan upgrades are pro-rated and billed within 24 hours of the plan being changed +- Annual plan downgrades are pro-rated and adjusted automatically in the next invoice + +# Billing Schedule +For monthly or yearly payment plans, the Service is billed in advance on a monthly or yearly basis respectively. + +# Cancellation +A user / organization can cancel their account, and their subscription will remain active for the remainder of the paid billing period. + +# Refunds Policy +Upon cancellation of your account, you can request a refund under the following conditions: +- **Request made up to and including 14 days after the billing date:** + + * Monthly plans: full refund + * Annual plans: full refund + +- **Request made between 15 and 30 days after the billing date:** + + * Monthly plans: no refund + * Annual plans: first month billed at the monthly plan rate, and remainder is refunded + +- **Request made 31 days or more after the billing date:** + + * Monthly plan: not applicable + * Annual plans: no refund for cancellations made on or after the 31st day of the subscription + +## Refunds across the Fiscal Year +In this case, a refund is requested that would involve payments made in another tax year, ie for an Annual plan that ran from October to October. Once the fiscal year is closed, we are not legally allowed to go back into the previous year. In Germany, the financial and tax year follows the calendar year - that is, the financial year begins on January 1 and ends on December 31. + +## How to request a refund +Contact our support team at (support@travis-ci.com)[mailto:support@travis-ci.com] +Specify the GitHub handle of the account for which you’re requesting a refund, and send us a copy of your payment and/or invoice. From 8e868795e3e166245d0d8ffd4662803ff113e120 Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Mon, 1 Oct 2018 20:53:16 -0400 Subject: [PATCH 0012/1851] Document `[skip travis]` and its variants --- user/common-build-problems.md | 2 +- user/cron-jobs.md | 2 +- user/customizing-the-build.md | 26 +++++++++++++++++++------- 3 files changed, 21 insertions(+), 9 deletions(-) diff --git a/user/common-build-problems.md b/user/common-build-problems.md index 918174bd7ba..07e1bf0ad9f 100644 --- a/user/common-build-problems.md +++ b/user/common-build-problems.md @@ -633,7 +633,7 @@ Whenever your build has been processed you'll see the message: **"Build created If a build hasn't been triggered for your commit, these are the possible build request messages: - **"Could not authorize build request"**, usually means that the account's subscription expired or that it ran out of trial builds. -- **"Build skipped via commit message"**, this commit contains [`[ci skip]` or `[skip ci]`](/user/customizing-the-build/#Skipping-a-build). +- **"Build skipped via commit message"**, this commit contains [the skip command](/user/customizing-the-build/#Skipping-a-build). - **"GitHub payload is missing a merge commit"**, please confirm your pull request is open and mergeable. - **"Branch excluded per configuration"** or **"Branch not included per configuration"**, please make sure your branch is not [explicitly excluded](/user/customizing-the-build/#Safelisting-or-blocklisting-branches) or [not included](/user/customizing-the-build/#Safelisting-or-blocklisting-branches) in your `.travis.yml` file. - **Build type disabled via repository settings**, please make sure your Push and Pull Request builds are still active. diff --git a/user/cron-jobs.md b/user/cron-jobs.md index b683593295d..bb477842cd4 100644 --- a/user/cron-jobs.md +++ b/user/cron-jobs.md @@ -28,7 +28,7 @@ Confirm that the cron job is displayed in your settings tab: ## Skipping Cron Jobs -Because cron jobs build the latest commit to a particular branch, if that commit message includes [`[ci skip]` or `[skip ci]`](/user/customizing-the-build/#Skipping-a-build) the cron job will skip that build. +Because cron jobs build the latest commit to a particular branch, if that commit message includes [the skip command](/user/customizing-the-build/#Skipping-a-build) the cron job will skip that build. ## Deleting Cron Jobs diff --git a/user/customizing-the-build.md b/user/customizing-the-build.md index 6b87f3b5272..5c4be80b597 100644 --- a/user/customizing-the-build.md +++ b/user/customizing-the-build.md @@ -407,11 +407,23 @@ branches and tags that start with `deploy-` in any combination of cases. ## Skipping a build -If you don't want to run a build for a particular commit for any reason, add `[ci skip]` or `[skip ci]` to the git commit message. +If you don't want to run a build for a particular commit for any reason, you may instruct Travis CI +to skip building this commit via a command in the commit message. -Commits that have `[ci skip]` or `[skip ci]` anywhere in the commit messages are ignored by Travis CI. +The command should be one of the following forms: -Note that in case multiple commits are pushed together, the `[skip ci]` or `[ci skip]` takes effect only if present in the commit message of the HEAD commit. + [ skip] + +or + + [skip ] + +where `` is either `ci`, `travis`, `travis ci`, `travis-ci`, or `travisci`. +For example, + + [skip travis] Update README + +Note that in case multiple commits are pushed together, the skip command is effective only if present in the commit message of the HEAD commit. ## Build Matrix @@ -457,9 +469,9 @@ matrix: ### Naming Jobs within Matrices -You can define names for specific jobs within a matrix. We recommend unique job names, but -do not enforce it (though this may change in the future). Jobs defined in the `matrix.include` -section can be given a job name as follows: +You can define names for specific jobs within a matrix. We recommend unique job names, but +do not enforce it (though this may change in the future). Jobs defined in the `matrix.include` +section can be given a job name as follows: ```yaml language: python @@ -477,7 +489,7 @@ matrix: script: ./test.py $TEST_SUITE ``` -Jobs that are generated by matrix expansion cannot be given name attributes. +Jobs that are generated by matrix expansion cannot be given name attributes. ### Excluding Jobs From 82f3bc2fe140f3a51065f0dc0bfd873524380f3b Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Tue, 2 Oct 2018 00:33:11 -0400 Subject: [PATCH 0013/1851] Drop pyrus --- user/languages/php.md | 24 ------------------------ 1 file changed, 24 deletions(-) diff --git a/user/languages/php.md b/user/languages/php.md index 259ec75e82e..9f638693132 100644 --- a/user/languages/php.md +++ b/user/languages/php.md @@ -197,30 +197,6 @@ To see real world examples, see: - [LiipHyphenatorBundle](https://github.com/liip/LiipHyphenatorBundle/blob/master/.travis.yml) - [doctrine2](https://github.com/doctrine/doctrine2/blob/master/.travis.yml) -### Installing PEAR packages - -If your dependencies include PEAR packages, the Travis CI PHP environment has the [Pyrus](http://pear2.php.net/) and [pear](http://pear.php.net/) commands available: - -```bash -pyrus install http://phptal.org/latest.tar.gz -pear install pear/PHP_CodeSniffer -``` - -After install you should refresh your path - -```bash -phpenv rehash -``` - -For example, if you want to use phpcs, you should execute: - -```bash -pyrus install pear/PHP_CodeSniffer -phpenv rehash -``` - -Then you can use phpcs like the phpunit command - ### Installing Composer packages
From c4d79caa70dd3fa300df2a666af241af3e0e56e0 Mon Sep 17 00:00:00 2001 From: Jason Hu Date: Tue, 2 Oct 2018 03:53:21 -0700 Subject: [PATCH 0014/1851] Add a note for travis-ci.com API switch --- user/deployment/pypi.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/user/deployment/pypi.md b/user/deployment/pypi.md index fbac9d49f67..d71419436da 100644 --- a/user/deployment/pypi.md +++ b/user/deployment/pypi.md @@ -25,6 +25,12 @@ However, this would expose your PyPI password to the world. We recommend you travis encrypt your-password-here --add deploy.password ``` +If you are using travis-ci.com not travis-ci.org, you need add `--com` argument to switch travis API endpoint: + +```bash +travis encrypt your-password-here --add deploy.password --com +``` + > Note that if your PyPI password contains [special characters](/user/encryption-keys#Note-on-escaping-certain-symbols) you need to escape them before encrypting your password. Some people have [reported difficulties](https://github.com/travis-ci/dpl/issues/377) connecting to PyPI with passwords containing anything except alphanumeric characters. ```yaml From a2140ffb484792bb665a437132e366c3cace8bcc Mon Sep 17 00:00:00 2001 From: Dan Buch Date: Tue, 2 Oct 2018 16:43:23 -0400 Subject: [PATCH 0015/1851] Remove mention of a container-based Linux default since it is going away and the current default is in transition --- user/reference/overview.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/user/reference/overview.md b/user/reference/overview.md index d3aeca23f7a..d16ed1eaa69 100644 --- a/user/reference/overview.md +++ b/user/reference/overview.md @@ -90,9 +90,6 @@ Many different parts of your `.travis.yml` affect what infrastructure your build * Using `os: osx`, setting a version of Xcode using `osx_image:`, or using a macOS specific language such as `language: objective-c` routes your build to macOS infrastructure. -* If none of the previous keys are present in your `.travis.yml`, the default is a container-based linux (Ubunty Trusty) environment on Amazon EC2 or Packet. - - ## Deprecated Virtualization Environments Historically, Travis CI has provided the following virtualization environments. From 10b23eeabe26507877487c1188558b6d783ae39b Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Thu, 4 Oct 2018 13:49:27 -0400 Subject: [PATCH 0016/1851] Remove "experimental" from script deployment provider --- user/deployment/script.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user/deployment/script.md b/user/deployment/script.md index c4a5d9cdfe5..34e1d64f084 100644 --- a/user/deployment/script.md +++ b/user/deployment/script.md @@ -5,7 +5,7 @@ layout: en --- If your deployment needs more customization than the `after_success` method allows, -use a custom script. Do note that custom scripts are still considered an experimental feature. +use a custom script. The following example runs `scripts/deploy.sh` on the `develop` branch of your repository if the build is successful. From 4cd7e506d1ddcf058630ad5afd29be7a3a283e32 Mon Sep 17 00:00:00 2001 From: Artur Smirnov Date: Fri, 5 Oct 2018 11:13:40 +0300 Subject: [PATCH 0017/1851] Fix some links on home page --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 80633899f9c..ab153fca4fa 100644 --- a/index.html +++ b/index.html @@ -46,9 +46,9 @@

Deployment Guides

Common Questions

From d6e34175bd7cb15e3fa6e6fe279a4d1f35f68cc7 Mon Sep 17 00:00:00 2001 From: Daisuke Tsuji Date: Mon, 8 Oct 2018 17:59:06 +0900 Subject: [PATCH 0018/1851] Fixed link of `shortcut` of caching.md (#2049) --- user/caching.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user/caching.md b/user/caching.md index 99a7f654311..4d316b44d3c 100644 --- a/user/caching.md +++ b/user/caching.md @@ -25,7 +25,7 @@ Travis CI can cache content that does not often change, to speed up your build p Caches lets Travis CI store directories between builds, which is useful for storing dependencies that take longer to compile or download. -Note that if a third party project, such as Bundler, changes the location where they store dependencies you might need to specify the [directory manually](#arbitrary-directories) instead of using that particular [caching shortcut](#Bundler). Please [contact us](mailto:support@travis-ci.com?subject=Caching) with any questions, issues or feedback. +Note that if a third party project, such as Bundler, changes the location where they store dependencies you might need to specify the [directory manually](#arbitrary-directories) instead of using that particular [caching shortcut](#bundler). Please [contact us](mailto:support@travis-ci.com?subject=Caching) with any questions, issues or feedback. ### Build phases From e7d66551b01385ac95bc755967eeda4ec922a5b0 Mon Sep 17 00:00:00 2001 From: Alex Jurkiewicz Date: Mon, 8 Oct 2018 20:38:51 +1100 Subject: [PATCH 0019/1851] Update minimal-and-generic.md (#2047) Python is available in minimal image --- user/languages/minimal-and-generic.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user/languages/minimal-and-generic.md b/user/languages/minimal-and-generic.md index 43eb023bfb2..cfc3bab39a9 100644 --- a/user/languages/minimal-and-generic.md +++ b/user/languages/minimal-and-generic.md @@ -46,6 +46,7 @@ The `minimal` image contains: * [essential build tools such as gcc and make](/user/reference/trusty/#compilers--build-toolchain) * [network tools such as curl and essential](/user/reference/trusty/#networking-tools) * [Docker](/user/reference/trusty/#docker) +* [python](/user/reference/trusty/#python-images) ## Generic @@ -60,7 +61,6 @@ The `generic` image contains everything from `minimal`, and also the usual datab * [jvm](/user/reference/trusty/#jvm-clojure-groovy-java-scala-images) * [node_js](/user/reference/trusty/#javascript-and-nodejs-images) * [php](/user/reference/trusty/#php-images) -* [python](/user/reference/trusty/#python-images) * [ruby](/user/reference/trusty/#ruby-images) For specific details of what is on the image consult the [build update](/user/build-environment-updates/2017-12-12/#2017-12-12). From c560f7510a60d47cb830d8e582ded5512e4e670b Mon Sep 17 00:00:00 2001 From: Alix Lourme Date: Mon, 8 Oct 2018 12:10:36 +0200 Subject: [PATCH 0020/1851] SonarCloud addon note about branch and/or PR properties (#2038) --- user/sonarcloud.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/user/sonarcloud.md b/user/sonarcloud.md index 485866f76d4..b896f7190a5 100644 --- a/user/sonarcloud.md +++ b/user/sonarcloud.md @@ -102,3 +102,12 @@ If you are a long-time SonarCloud user, you might have the following entries in - "github_token" If this is the case, you will get warnings in the log, telling you that this behaviour will be removed soon. You should get rid of those entries in your `.travis.yml` file to benefit from the latest features of SonarCloud. + +## Note for SonarQube users + +If you are familiar with SonarQube, you can be tempted to deal with some properties relatives to [Branch Analysis](https://docs.sonarqube.org/display/SONAR/Branch+Analysis) (ex: `sonar.branch.name`) and/or [Pull Request Analysis](https://docs.sonarqube.org/display/SONAR/Pull+Request+Analysis) (ex: `sonar.pullrequest.key`). + +These properties are completely useless, the SonarCloud add-on manages them for you depending the analysis type. + + + From 8399b24c57fe5f8f694a2d4dc5aed7c74a3ddfe3 Mon Sep 17 00:00:00 2001 From: Simon Byrne Date: Mon, 8 Oct 2018 03:28:35 -0700 Subject: [PATCH 0021/1851] [julia] document coverage options (#2019) * [julia] document coverage options To be merged after https://github.com/travis-ci/travis-build/pull/1450 * revert cc team change --- user/languages/julia.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/user/languages/julia.md b/user/languages/julia.md index a66bb4cd605..8b0f42dd1e5 100644 --- a/user/languages/julia.md +++ b/user/languages/julia.md @@ -16,7 +16,7 @@ This guide covers build environment and configuration topics specific to Travis CI support for Julia is contributed by the community and may be removed or altered at any time. If you run into any problems, please report them in the [Travis CI issue tracker](https://github.com/travis-ci/travis-ci/issues/new?labels=julia) -and cc [`@travis-ci/julia-maintainers`](https://github.com/orgs/travis-ci/teams/julia-maintainers). +and cc `@tkelman @ninjin @staticfloat @simonbyrne`. ## Choosing Julia versions to test against @@ -41,6 +41,15 @@ of Julia. The oldest versions for which binaries are available is 0.3.1 for Linux, or 0.2.0 for [OS X](/user/multi-os/). +## Coverage + +Services such as [codecov.io](https://codecov.io) and [coveralls.io](https://coveralls.io) provide summaries and analytics of the coverage of the test suite. After enabling the respective services for the repositories, the `codecov` and `coveralls` options can be used, e.g. +```yaml +codecov: true +coveralls: true +``` +which will then upload the coverage statistics upon successful completion of the tets. + ## Default Build and Test Script If your repository contains `JuliaProject.toml` or `Project.toml` file, and you are @@ -78,7 +87,6 @@ to construct a build matrix. ## Environment Variable The version of Julia a job is using is available as: - ``` TRAVIS_JULIA_VERSION ``` From dc83357e3797de14b2a732e38a6fe4dac1ec1046 Mon Sep 17 00:00:00 2001 From: chip Date: Mon, 8 Oct 2018 03:42:22 -0700 Subject: [PATCH 0022/1851] update how yarn is detected for node_js language (#2025) * update how yarn is detected for node_js language * Tweak text --- user/languages/javascript-with-nodejs.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/user/languages/javascript-with-nodejs.md b/user/languages/javascript-with-nodejs.md index 57b936f25da..09ca76c991a 100644 --- a/user/languages/javascript-with-nodejs.md +++ b/user/languages/javascript-with-nodejs.md @@ -159,8 +159,8 @@ as specified in your lock file. Travis CI detects use of [yarn](https://yarnpkg.com/). -If both `package.json` and `yarn.lock` are present in the root -directory of the repository, we run the following command _instead of_ +If both `package.json` and `yarn.lock` are present in the current +directory, we run the following command _instead of_ `npm install`: ```bash From f61d56b0e573d543d18b3b8ffba1062e696c7636 Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Mon, 8 Oct 2018 08:34:14 -0400 Subject: [PATCH 0023/1851] Update jekyll --- Gemfile.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 6c7e3d4c4b5..d9ef367b57d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -72,7 +72,7 @@ GEM http_parser.rb (0.6.0) i18n (0.7.0) jaro_winkler (1.5.1) - jekyll (3.8.3) + jekyll (3.8.4) addressable (~> 2.4) colorator (~> 1.0) em-websocket (~> 0.5) @@ -162,7 +162,7 @@ GEM pry (0.11.3) coderay (~> 1.1.0) method_source (~> 0.9.0) - public_suffix (3.0.2) + public_suffix (3.0.3) puma (3.11.4) rack (1.6.10) rack-jekyll (0.5.0) @@ -254,4 +254,4 @@ RUBY VERSION ruby 2.4.3p205 BUNDLED WITH - 1.16.2 + 1.16.5 From 74e6eb4c37da617ed64e7870ca0e37a18ce91b65 Mon Sep 17 00:00:00 2001 From: Daisuke Tsuji Date: Tue, 9 Oct 2018 16:30:21 +0900 Subject: [PATCH 0024/1851] fixed link in overview.md (#2050) --- user/reference/overview.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/user/reference/overview.md b/user/reference/overview.md index d3aeca23f7a..4a4798c2040 100644 --- a/user/reference/overview.md +++ b/user/reference/overview.md @@ -57,12 +57,12 @@ The following table summarizes the differences across virtual environments and o ## What infrastructure is my environment running on? -Usually, knowing the virtualization environment characteristics from the [table above](#Virtualisation-Environment-vs-Operating-System) is sufficient. +Usually, knowing the virtualization environment characteristics from the [table above](#virtualisation-environment-vs-operating-system) is sufficient. But, if you do need more detail, you have one of these two questions: -* you want to see what infrastructure a [finished build](#For-a-finished-build) ran on. -* you want to determine what infrastructure a [particular `.travis.yml` configuration](#For-a-particular-travisyml-configuration) will run on. +* you want to see what infrastructure a [finished build](#for-a-finished-build) ran on. +* you want to determine what infrastructure a [particular `.travis.yml` configuration](#for-a-particular-travisyml-configuration) will run on. ### For a finished build From 8c8070db6380b2e8cf1e47925e25d6d6518f445b Mon Sep 17 00:00:00 2001 From: Dominic Jodoin Date: Wed, 10 Oct 2018 14:01:25 -0400 Subject: [PATCH 0025/1851] Create windows.md --- user/reference/windows.md | 50 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 user/reference/windows.md diff --git a/user/reference/windows.md b/user/reference/windows.md new file mode 100644 index 00000000000..840dd6865be --- /dev/null +++ b/user/reference/windows.md @@ -0,0 +1,50 @@ +--- +title: The Windows Build Environment +layout: en +--- + +### What This Guide Covers + +This guide explains what packages, tools and settings are available in the Travis Windows CI environment (often referred to as the “CI environment”). + +> Take note that our Windows environment is in early stages and a minimal subset of what's available on Linux or OS X/macOS is currently supported. + +## Support + +Early adopters of our Windows environment can ask their questions/report issues on our Community Forums, in the [Windows category](https://travis-ci.community/__TO_BE_ADDED_CATEGORY_URL__). + +## Using Windows + +To use our Windows build infrastructure, add the following to your `.travis.yml`: + +```yaml +os: windows +``` +{: data-file=".travis.yml"} + +## Windows Version + +Only Windows Server 2016 is currently supported. + +## Chocolatey + +[Chocolatey](https://chocolatey.org/) is installed and can be used to install Windows packages. + +## File System + +VMs running Windows use the default file system, NTFS. + +## Supported languages +- Node.js (`language: node_js`) +- Rust (`language: rust`) +- Go (`language: go`) +- Bash variants (`language: shell`, `language: sh`) + +## Pre-installed packages + +## Services + +## Runtimes + +## Environment variables + From b066775f8c7f6f86e9336eefb9fb152eb7d7a2e2 Mon Sep 17 00:00:00 2001 From: Dominic Jodoin Date: Wed, 10 Oct 2018 14:03:14 -0400 Subject: [PATCH 0026/1851] Added Windows --- user/reference/overview.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/user/reference/overview.md b/user/reference/overview.md index 4a4798c2040..4016db22160 100644 --- a/user/reference/overview.md +++ b/user/reference/overview.md @@ -30,6 +30,10 @@ A fast boot time environment in which `sudo` commands are not available. Running An [OS X](/user/reference/osx/) environment for Objective-C and other OS X specific projects +### Windows + +A [Windows](/user/reference/windows/) environment running Windows Server 2016. + ### Virtualisation Environment vs Operating System The following table summarizes the differences across virtual environments and operating systems: From d51f3fc0747e4deaa874d7aa9a86d19b3e60751e Mon Sep 17 00:00:00 2001 From: Dominic Jodoin Date: Wed, 10 Oct 2018 14:13:41 -0400 Subject: [PATCH 0027/1851] Editorial changes --- user/reference/windows.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/user/reference/windows.md b/user/reference/windows.md index 840dd6865be..568077ed82a 100644 --- a/user/reference/windows.md +++ b/user/reference/windows.md @@ -11,7 +11,7 @@ This guide explains what packages, tools and settings are available in the Travi ## Support -Early adopters of our Windows environment can ask their questions/report issues on our Community Forums, in the [Windows category](https://travis-ci.community/__TO_BE_ADDED_CATEGORY_URL__). +Early adopters of our Windows environment can ask their questions/report issues in the [Windows category](https://travis-ci.community/__TO_BE_ADDED_CATEGORY_URL__) of our Community Forums. ## Using Windows @@ -28,7 +28,7 @@ Only Windows Server 2016 is currently supported. ## Chocolatey -[Chocolatey](https://chocolatey.org/) is installed and can be used to install Windows packages. +[Chocolatey](https://chocolatey.org/), the package manager for Windows, is installed and can be used to install Windows packages. ## File System From c3a2b25c76a0c1553fb25c25964e5d0d2269687e Mon Sep 17 00:00:00 2001 From: Hiro Asari Date: Wed, 10 Oct 2018 14:42:28 -0400 Subject: [PATCH 0028/1851] Update URL for the Windows category --- user/reference/windows.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user/reference/windows.md b/user/reference/windows.md index 568077ed82a..023713a84f1 100644 --- a/user/reference/windows.md +++ b/user/reference/windows.md @@ -11,7 +11,7 @@ This guide explains what packages, tools and settings are available in the Travi ## Support -Early adopters of our Windows environment can ask their questions/report issues in the [Windows category](https://travis-ci.community/__TO_BE_ADDED_CATEGORY_URL__) of our Community Forums. +Early adopters of our Windows environment can ask their questions/report issues in the [Windows category](https://travis-ci.community/c/windows) of our Community Forums. ## Using Windows From 9b5c8d2eded8e51c16ad629795cff26088845e4c Mon Sep 17 00:00:00 2001 From: Dominic Jodoin Date: Wed, 10 Oct 2018 14:48:00 -0400 Subject: [PATCH 0029/1851] Added link to Windows docs under "CI Environment Reference" --- _includes/sidebar.html | 1 + 1 file changed, 1 insertion(+) diff --git a/_includes/sidebar.html b/_includes/sidebar.html index 14613c673b0..2b15b873e6f 100644 --- a/_includes/sidebar.html +++ b/_includes/sidebar.html @@ -84,6 +84,7 @@

CI Environment Reference

  • Precise CI Environment Reference
  • Trusty CI Environment
  • OS X CI Environment Reference
  • +
  • Windows CI Environment Reference
  • Building on Multiple Operating Systems
  • Environment Variables
  • Precise to Trusty Migration Guide
  • From 9cb84e7eb6f24020181d555f30b0cc74fcda2559 Mon Sep 17 00:00:00 2001 From: Dominic Jodoin Date: Wed, 10 Oct 2018 15:48:56 -0400 Subject: [PATCH 0030/1851] Added pre-installed packages list --- user/reference/windows.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/user/reference/windows.md b/user/reference/windows.md index 023713a84f1..48e0c311650 100644 --- a/user/reference/windows.md +++ b/user/reference/windows.md @@ -42,6 +42,32 @@ VMs running Windows use the default file system, NTFS. ## Pre-installed packages +- 7zip.install +- ant +- chromedriver +- cmake +- curl +- firefox +- git.install +- gradle +- jdk10 +- jdk8 +- jq +- lein +- maven +- mysql +- phantomjs +- postgresql +- python +- python2 +- ruby +- sbt +- visualstudio2017buildtools +- wget +- yarn + +Latest list of pre-installed packages can be find [here](https://github.com/travis-ci/packer-templates/blob/master/packer-assets/windows-server-2016-ci-onion-packages.txt). + ## Services ## Runtimes From 09f4d768c4b8651590c2019c5bba854c004e6484 Mon Sep 17 00:00:00 2001 From: Dominic Jodoin Date: Wed, 10 Oct 2018 16:41:54 -0400 Subject: [PATCH 0031/1851] Windows docs continued (#2054) --- user/reference/windows.md | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/user/reference/windows.md b/user/reference/windows.md index 48e0c311650..275e287b28d 100644 --- a/user/reference/windows.md +++ b/user/reference/windows.md @@ -11,7 +11,7 @@ This guide explains what packages, tools and settings are available in the Travi ## Support -Early adopters of our Windows environment can ask their questions/report issues in the [Windows category](https://travis-ci.community/c/windows) of our Community Forums. +> Early adopters of our Windows environment can ask their questions/report issues in the [Windows category](https://travis-ci.community/c/windows) of our Community Forums. ## Using Windows @@ -24,12 +24,20 @@ os: windows ## Windows Version -Only Windows Server 2016 is currently supported. +Only **Windows Server 2016** is currently supported. ## Chocolatey [Chocolatey](https://chocolatey.org/), the package manager for Windows, is installed and can be used to install Windows packages. +## Git BASH + +Git BASH is the shell that's used to run your build. See [Git for Windows](https://gitforwindows.org/) for more details. + +## Powershell + +Powershell can be used, by calling `powershell` in your .travis.yml file for now. We are looking into adding first class Powershell support very soon. + ## File System VMs running Windows use the default file system, NTFS. @@ -67,10 +75,3 @@ VMs running Windows use the default file system, NTFS. - yarn Latest list of pre-installed packages can be find [here](https://github.com/travis-ci/packer-templates/blob/master/packer-assets/windows-server-2016-ci-onion-packages.txt). - -## Services - -## Runtimes - -## Environment variables - From 154bcdfd18a10b9bbfb65abc0aeaae6f3abfc589 Mon Sep 17 00:00:00 2001 From: Dominic Jodoin Date: Wed, 10 Oct 2018 17:11:26 -0400 Subject: [PATCH 0032/1851] Removed undeeded comma --- user/reference/windows.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user/reference/windows.md b/user/reference/windows.md index 275e287b28d..aefabc593cf 100644 --- a/user/reference/windows.md +++ b/user/reference/windows.md @@ -36,7 +36,7 @@ Git BASH is the shell that's used to run your build. See [Git for Windows](https ## Powershell -Powershell can be used, by calling `powershell` in your .travis.yml file for now. We are looking into adding first class Powershell support very soon. +Powershell can be used by calling `powershell` in your .travis.yml file for now. We are looking into adding first class Powershell support very soon. ## File System From eb890401c4cb93c76efeddb43287d4fa670d5a18 Mon Sep 17 00:00:00 2001 From: Dan Buch Date: Thu, 11 Oct 2018 13:23:57 -0400 Subject: [PATCH 0033/1851] Add note about transitional state(s) --- user/reference/overview.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/user/reference/overview.md b/user/reference/overview.md index d5e0bfa5358..2fc9ecf6a8d 100644 --- a/user/reference/overview.md +++ b/user/reference/overview.md @@ -94,6 +94,11 @@ Many different parts of your `.travis.yml` affect what infrastructure your build * Using `os: osx`, setting a version of Xcode using `osx_image:`, or using a macOS specific language such as `language: objective-c` routes your build to macOS infrastructure. +> Between middle of October 2018 and end December 2018 the default infrastructure +> your builds runs on will depend on a [few different +> factors](https://blog.travis-ci.com/2018-10-04-combining-linux-infrastructures) +> while we consolidate everything onto sudo-enabled virtual machines. + ## Deprecated Virtualization Environments Historically, Travis CI has provided the following virtualization environments. From d8a83111b3ec6adf1459eb80c494ecab1c2ed8e0 Mon Sep 17 00:00:00 2001 From: Plaindocs Date: Fri, 12 Oct 2018 16:25:55 +0200 Subject: [PATCH 0034/1851] Initial Windows overview data (#2056) * Initial overview data --- user/reference/overview.md | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/user/reference/overview.md b/user/reference/overview.md index 2fc9ecf6a8d..3f39d0c0ed3 100644 --- a/user/reference/overview.md +++ b/user/reference/overview.md @@ -38,21 +38,21 @@ A [Windows](/user/reference/windows/) environment running Windows Server 2016. The following table summarizes the differences across virtual environments and operating systems: -| | Ubuntu Precise | Ubuntu Trusty | Ubuntu Trusty | [OS X](/user/reference/osx/) | -|:---------------------|:--------------------------------------|:----------------------------------|:-------------------------------------|:-----------------------------| -| Name | Sudo-enabled | Container-based | Sudo-enabled | OS X | -| Status | Current | Default as of August 2017 | Current | Current | -| Infrastructure | Virtual machine on GCE | Container on EC2 or Packet | Virtual machine on GCE | Virtual machine | -| `.travis.yml` | `sudo: required`
    `dist: precise` | `sudo: false`
    `dist: trusty` | `sudo: required`
    `dist: trusty` | `os: osx` | -| Allows `sudo` | Yes | No | Yes | Yes | -| Approx boot time | 20-50s | 1-6s | 20-50s | 60-90s | -| File system | EXT4 | devicemapper on XFS | EXT4 | HFS+ | -| Operating system | Ubuntu 12.04 | Ubuntu 14.04 | Ubuntu 14.04 | OS X | -| Memory | 7.5 GB | 4 GB max | 7.5 GB | 4 GB | -| Cores | 2 | 2 | 2 | 2 | -| IPv4 network | IPv4 is available | IPv4 is available | IPv4 is available | IPv4 is available | -| IPv6 network | IPv6 is not available | IPv6 is available on loopback | IPv6 is not available | IPv6 is not available | -| Available disk space | approx 22GB | approx 9GB | approx 18GB | approx 41GB | +| | Ubuntu Precise | Ubuntu Trusty | Ubuntu Trusty | [OS X](/user/reference/osx/) | [Windows](/user/reference/windows) | +|:---------------------|:--------------------------------------|:----------------------------------|:-------------------------------------|:-----------------------------|:-----------------------------------| +| Name | Sudo-enabled | Container-based | Sudo-enabled | OS X | Windows | +| Status | Current | Default as of August 2017 | Current | Current | Early release | +| Infrastructure | Virtual machine on GCE | Container on EC2 or Packet | Virtual machine on GCE | Virtual machine | Virtual machine on GCE | +| `.travis.yml` | `sudo: required`
    `dist: precise` | `sudo: false`
    `dist: trusty` | `sudo: required`
    `dist: trusty` | `os: osx` | `os: windows` | +| Allows `sudo` | Yes | No | Yes | Yes | No | +| Approx boot time | 20-50s | 1-6s | 20-50s | 60-90s | 60-120s | +| File system | EXT4 | devicemapper on XFS | EXT4 | HFS+ | NTFS | +| Operating system | Ubuntu 12.04 | Ubuntu 14.04 | Ubuntu 14.04 | OS X | Windows Server 2016 | +| Memory | 7.5 GB | 4 GB max | 7.5 GB | 4 GB | 8 GB | +| Cores | 2 | 2 | 2 | 2 | 2 | +| IPv4 network | IPv4 is available | IPv4 is available | IPv4 is available | IPv4 is available | IPv4 is available | +| IPv6 network | IPv6 is not available | IPv6 is available on loopback | IPv6 is not available | IPv6 is not available | IPv6 is not available | +| Available disk space | approx 22GB | approx 9GB | approx 18GB | approx 41GB | approx 19 GB | > Note that the following keywords in your .travis.yml file will silently route your builds to our sudo-enabled infrastructure (even if you specify `sudo: false`): `docker`, `ping`, `sudo`. @@ -80,6 +80,7 @@ if it contains: * `packet` → the build ran in a container-based environment on Packet. * `gce` → the build ran in a sudo-enabled environment on Google Compute Engine. * `wjb` → the build ran on macOS. +* `1803-containers` → the build ran on Windows. ### For a particular .travis.yml configuration @@ -94,6 +95,8 @@ Many different parts of your `.travis.yml` affect what infrastructure your build * Using `os: osx`, setting a version of Xcode using `osx_image:`, or using a macOS specific language such as `language: objective-c` routes your build to macOS infrastructure. +* Using `os: windows` routes your build to Windows infrastructure. + > Between middle of October 2018 and end December 2018 the default infrastructure > your builds runs on will depend on a [few different > factors](https://blog.travis-ci.com/2018-10-04-combining-linux-infrastructures) @@ -104,4 +107,4 @@ Many different parts of your `.travis.yml` affect what infrastructure your build Historically, Travis CI has provided the following virtualization environments. - **Precise Container-based environment**: available from the announcement in [December, 2014](https://blog.travis-ci.com/2014-12-17-faster-builds-with-container-based-infrastructure/) to [September, 2017](https://blog.travis-ci.com/2017-08-31-trusty-as-default-status). -- **Legacy environment**: available until [December, 2015](https://blog.travis-ci.com/2015-11-27-moving-to-a-more-elastic-future). +- **Legacy environment**: was available until [December, 2015](https://blog.travis-ci.com/2015-11-27-moving-to-a-more-elastic-future). From 12c0a533fc544f7da78543b437593dd94f3df37b Mon Sep 17 00:00:00 2001 From: Nikolaos Pothitos Date: Mon, 15 Oct 2018 14:37:02 +0300 Subject: [PATCH 0035/1851] Remove irrelevant tag from the output --- user/docker.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/user/docker.md b/user/docker.md index 9925396c836..527bae17843 100644 --- a/user/docker.md +++ b/user/docker.md @@ -76,8 +76,7 @@ output](https://travis-ci.org/travis-ci/docker-sinatra): $ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e376792bce99 carlad/sinatra:latest "/bin/sh -c 'cd /roo Less than a second ago Up Less than a second 127.0.0.1:80->4567/tcp condescending_galileo -before_install.4 -1.30s$ docker run carlad/sinatra /bin/sh -c "cd /root/sinatra; bundle exec rake test" +$ docker run carlad/sinatra /bin/sh -c "cd /root/sinatra; bundle exec rake test" /usr/local/bin/ruby -I"lib:test" -I"/usr/local/lib/ruby/2.2.0" "/usr/local/lib/ruby/2.2.0/rake/rake_test_loader.rb" "test/test_app.rb" Loaded suite /usr/local/lib/ruby/2.2.0/rake/rake_test_loader Started From 88f6cb525dfeb78d51db77b7008d99d418db4d3d Mon Sep 17 00:00:00 2001 From: Plaindocs Date: Tue, 16 Oct 2018 11:51:30 +0200 Subject: [PATCH 0036/1851] Reconfigure the Customizing your Build menu (#1881) * Some first thoughts * A little more * Build lifecycle * More lifecycle * WIP * Clarify * Some consolidation * Can this live on the landing page * Getting rid of stuff * Refactoring * Fix broken link * Fix broken link * Fix broken link * Fix broken link * Fix heading levels in conditions * Delete this * Remove old toc * Moving things around * Fixup links * Revert change to Tutorial Involves search and replace in tons of files. We should maybe save this for a bigger reorg. * Move it after all * Move it after all * Move it after all * A few name fixups --- _includes/sidebar.html | 27 +- index.html | 2 +- user/build-matrix.md | 299 +++++++++++++++++++++++ user/common-build-problems.md | 2 +- user/conditional-builds-stages-jobs.md | 13 +- user/coverity-scan.md | 4 +- user/customizing-the-build.md | 258 +------------------ user/for-beginners.md | 5 +- user/gui-and-headless-browsers.md | 2 +- user/job-lifecycle.md | 192 +++++++++++++++ user/languages/android.md | 2 +- user/languages/c.md | 2 +- user/languages/clojure.md | 2 +- user/languages/cpp.md | 2 +- user/languages/crystal.md | 2 +- user/languages/csharp.md | 2 +- user/languages/d.md | 2 +- user/languages/dart.md | 2 +- user/languages/elixir.md | 2 +- user/languages/erlang.md | 2 +- user/languages/go.md | 2 +- user/languages/groovy.md | 2 +- user/languages/haskell.md | 2 +- user/languages/haxe.md | 2 +- user/languages/java.md | 12 +- user/languages/javascript-with-nodejs.md | 6 +- user/languages/julia.md | 2 +- user/languages/nix.md | 2 +- user/languages/objective-c.md | 3 +- user/languages/perl.md | 2 +- user/languages/perl6.md | 2 +- user/languages/php.md | 2 +- user/languages/python.md | 4 +- user/languages/r.md | 4 +- user/languages/ruby.md | 2 +- user/languages/rust.md | 2 +- user/languages/scala.md | 4 +- user/languages/smalltalk.md | 2 +- user/multi-os.md | 2 +- user/{getting-started.md => tutorial.md} | 11 +- user/uploading-artifacts.md | 2 +- 41 files changed, 567 insertions(+), 329 deletions(-) create mode 100644 user/build-matrix.md create mode 100644 user/job-lifecycle.md rename user/{getting-started.md => tutorial.md} (91%) diff --git a/_includes/sidebar.html b/_includes/sidebar.html index 2b15b873e6f..3bc76b83b94 100644 --- a/_includes/sidebar.html +++ b/_includes/sidebar.html @@ -30,25 +30,24 @@ diff --git a/index.html b/index.html index ab153fca4fa..dac7eefa281 100644 --- a/index.html +++ b/index.html @@ -12,7 +12,7 @@ Image of desktop

    New around here? Let's get you going.

    -

    Getting Started

    +

    Travis CI Tutorial

    diff --git a/user/build-matrix.md b/user/build-matrix.md new file mode 100644 index 00000000000..680b069e428 --- /dev/null +++ b/user/build-matrix.md @@ -0,0 +1,299 @@ +--- +title: Build Matrix +layout: en +--- + +There are two ways to specify multiple parallel jobs (what we call the build matrix) with a single `.travis.yml` configuration file: + +* combine a language-and-environment dependent set of configuration options to automatically create a matrix of all possible combinations. This is called matrix expansion. + For example, the following configuration produces a build matrix that expands to *8 individual (2 * 2 * 2)* jobs. + + ```yaml + rvm: + - 2.5 + - 2.2 + gemfile: + - gemfiles/Gemfile.rails-3.2.x + - gemfiles/Gemfile.rails-3.0.x + env: + - ISOLATED=true + - ISOLATED=false + ``` + {: data-file=".travis.yml"} + +* specify the exact combination of configurations you want in `matrix.include`. For example, if not all of those combinations are interesting, you can specify just the combinations you want: + + ```yaml + matrix: + include: + - rvm: 2.5 + gemfile: gemfiles/Gemfile.rails-3.2.x + env: ISOLATED=false + - rvm: 2.5 + gemfile: gemfiles/Gemfile.rails-3.2.x + env: ISOLATED=true + ``` + {: data-file=".travis.yml"} + +> All build matrixes are currently limited to a maximum of **200 jobs** for both private and public repositories. If you are on an open-source plan, please remember that Travis CI provides this service free of charge to the community. So please only specify the matrix you *actually need*. + +## Excluding Jobs + +You can also define exclusions to the build matrix: + +```yaml +matrix: + exclude: + - rvm: 1.9.3 + gemfile: gemfiles/Gemfile.rails-2.3.x + env: ISOLATED=true + - rvm: jruby + gemfile: gemfiles/Gemfile.rails-2.3.x + env: ISOLATED=true +``` +{: data-file=".travis.yml"} + +If the jobs you want to exclude from the build matrix share the same matrix +parameters, you can specify only those and omit the varying parts. + +Suppose you have: + +```yaml +language: ruby +rvm: +- 1.9.3 +- 2.0.0 +- 2.1.0 +env: +- DB=mongodb +- DB=redis +- DB=mysql +gemfile: +- Gemfile +- gemfiles/rails4.gemfile +- gemfiles/rails31.gemfile +- gemfiles/rails32.gemfile +``` +{: data-file=".travis.yml"} + +This results in a 3×3×4 build matrix. To exclude all jobs which have `rvm` value `2.0.0` *and* +`gemfile` value `Gemfile`, you can write: + +```yaml +matrix: + exclude: + - rvm: 2.0.0 + gemfile: Gemfile +``` +{: data-file=".travis.yml"} + +Which is equivalent to: + +```yaml +matrix: + exclude: + - rvm: 2.0.0 + gemfile: Gemfile + env: DB=mongodb + - rvm: 2.0.0 + gemfile: Gemfile + env: DB=redis + - rvm: 2.0.0 + gemfile: Gemfile + env: DB=mysql +``` +{: data-file=".travis.yml"} + +### Excluding jobs with `env` value + +When excluding jobs with `env` values, the value must match +_exactly_. + +For example, + +```yaml +language: ruby +rvm: +- 1.9.3 +- 2.0.0 +- 2.1.0 +env: +- DB=mongodb SUITE=all +- DB=mongodb SUITE=compact +- DB=redis +- DB=mysql +matrix: + exclude: + - rvm: 1.9.3 + env: DB=mongodb +``` + +defines a 3×4 matrix, because the `env` value does not match with +any job defined in the matrix. + +To exclude all Ruby 1.9.3 jobs with `DB=mongodb` set, write: + +```yaml +language: ruby +rvm: +- 1.9.3 +- 2.0.0 +- 2.1.0 +env: +- DB=mongodb SUITE=all +- DB=mongodb SUITE=compact +- DB=redis +- DB=mysql +matrix: + exclude: + - rvm: 1.9.3 + env: DB=mongodb SUITE=all # not 'env: DB=mongodb SUITE=all' or 'env: SUITE=all DB=mongodb' + - rvm: 1.9.3 + env: DB=mongodb SUITE=compact # not 'env: SUITE=compact DB=mongodb' +``` + +## Explicitly Including Jobs + +It is also possible to include entries into the matrix with `matrix.include`: + +```yaml +matrix: + include: + - rvm: ruby-head + gemfile: gemfiles/Gemfile.rails-3.2.x + env: ISOLATED=false +``` +{: data-file=".travis.yml"} + +This adds a particular job to the build matrix which has already been populated. + +This is useful if you want to only test the latest version of a dependency together with the latest version of the runtime. + +You can use this method to create a build matrix containing only specific combinations. +For example, + +```yaml +language: python +matrix: + include: + - python: "2.7" + env: TEST_SUITE=suite_2_7 + - python: "3.3" + env: TEST_SUITE=suite_3_3 + - python: "pypy" + env: TEST_SUITE=suite_pypy +script: ./test.py $TEST_SUITE +``` +{: data-file=".travis.yml"} + +creates a build matrix with 3 jobs, which runs test suite for each version +of Python. + +### Explicitly included jobs inherit the first value in the array + +The jobs which are explicitly included inherit the first value of the expansion +keys defined. + +In this example with a 3-job Python build matrix, each job in `matrix.include` +has the `python` value set to `'3.5'`. +You can explicitly set the python version for a specific entry: + +```yaml +language: python +python: + - '3.5' + - '3.4' + - '2.7' +matrix: + include: + - python: '3.5' # this is not strictly necessary + env: EXTRA_TESTS=true + - python: '3.4' + env: EXTRA_TESTS=true +script: env $EXTRA_TESTS ./test.py $TEST_SUITE +``` +{: data-file=".travis.yml"} + +## Rows that are Allowed to Fail + +You can define rows that are allowed to fail in the build matrix. Allowed +failures are items in your build matrix that are allowed to fail without causing +the entire build to fail. This lets you add in experimental and +preparatory builds to test against versions or configurations that you are not +ready to officially support. + +Define allowed failures in the build matrix as key/value pairs: + +```yaml +matrix: + allow_failures: + - rvm: 1.9.3 +``` +{: data-file=".travis.yml"} + +### Matching Jobs with `allow_failures` + +When matching jobs against the definitions given in `allow_failures`, _all_ +conditions in `allow_failures` must be met exactly, and +all the keys in `allow_failures` element must exist in the +top level of the build matrix (i.e., not in `matrix.include`). + +#### `allow_failures` Examples + +Consider + +```yaml +language: ruby + +rvm: +- 2.0.0 +- 2.1.6 + +env: + global: + - SECRET_VAR1=SECRET1 + matrix: + - SECRET_VAR2=SECRET2 + +matrix: + allow_failures: + - env: SECRET_VAR1=SECRET1 SECRET_VAR2=SECRET2 +``` +{: data-file=".travis.yml"} + +Here, no job is allowed to fail because no job has the `env` value +`SECRET_VAR1=SECRET1 SECRET_VAR2=SECRET2`. + +Next, + +```yaml +language: php +php: +- 5.6 +- 7.0 +env: # important! +matrix: + include: + - php: 7.0 + env: KEY=VALUE + allow_failures: + - php: 7.0 + env: KEY=VALUE +``` +{: data-file=".travis.yml"} + +Without the top-level `env`, no job will be allowed to fail. + +## Fast Finishing + +If some rows in the build matrix are allowed to fail, the build won't be marked as finished until they have completed. + +To mark the build as finished as soon as possible, add `fast_finish: true` to the `matrix` section of your `.travis.yml` like this: + +```yaml +matrix: + fast_finish: true +``` +{: data-file=".travis.yml"} + +Now, the build result will be determined as soon as all the required jobs finish, based on these results, while the rest of the `allow_failures` jobs continue to run. diff --git a/user/common-build-problems.md b/user/common-build-problems.md index 07e1bf0ad9f..b01c40b86ac 100644 --- a/user/common-build-problems.md +++ b/user/common-build-problems.md @@ -489,7 +489,7 @@ Most of our internal build commands are wrapped with `travis_retry` to reduce th impact of network timeouts. Note that `travis_retry` does not work in the `deploy` step of the build, although it -does work in the [other steps](/user/customizing-the-build/#The-Build-Lifecycle). +does work in the [other steps](/user/job-lifecycle/). ### Build times out because no output was received diff --git a/user/conditional-builds-stages-jobs.md b/user/conditional-builds-stages-jobs.md index 47826f1f405..f5c641fefb2 100644 --- a/user/conditional-builds-stages-jobs.md +++ b/user/conditional-builds-stages-jobs.md @@ -5,11 +5,9 @@ layout: en -## Conditional Builds, Stages, and Jobs - You can filter out, and reject builds, stages, and jobs by specifying conditions in your build configuration (your `.travis.yml` file). -### Conditional Builds +## Conditional Builds Configure Travis CI to only trigger builds when certain conditions are met, such as only building the master branch. Any potential builds that do not meet these conditions are listed in the Requests tab of your repository, even though the actual build is not generated. @@ -20,7 +18,7 @@ if: branch = master Build requests that do not match the condition will not generate a build, but will be listed on the Requests tab. -### Conditional Stages +## Conditional Stages Configure Travis CI to only include stages when certain conditions are met, such as only including the stage on the master branch. Stages that do not match the given condition are silently skipped. @@ -33,7 +31,7 @@ stages: Stages that do not match the condition will be skipped silently. -### Conditional Jobs +## Conditional Jobs Configure Travis CI to only include jobs when certain conditions are met, such as only including a job on the master branch. Jobs that do not match the given condition are silently skipped. @@ -49,12 +47,11 @@ Jobs need to be listed explicitly, i.e., using `jobs.include` (or its alias `mat Jobs that do not match the condition will be skipped silently. -### Specifying Conditions +## Specifying Conditions Please see [Conditions](/user/conditions-v1) for examples, and a specification of the conditions syntax. -### Testing Conditions +## Testing Conditions Conditions can be tested using the `travis-conditions` command. Learn how to [test your conditions](/user/conditions-testing). - diff --git a/user/coverity-scan.md b/user/coverity-scan.md index 2e823cac1c6..9296736d159 100644 --- a/user/coverity-scan.md +++ b/user/coverity-scan.md @@ -30,7 +30,7 @@ It's probably overkill to run static analysis on each and every commit of your p 2. If necessary, create a public repo on [GitHub](https://github.com) for your project. -3. If necessary, register for [Travis CI](https://travis-ci.org/) and configure your project by following the [Getting Started](http://docs.travis-ci.com/user/getting-started/) guide. +3. If necessary, register for [Travis CI](https://travis-ci.org/) and configure your project by following the [Getting Tutorial](/user/tutorial/) guide. 4. Sign in to Scan, and then add your project. Be sure to add it as a [GitHub Project](https://scan.coverity.com/projects/new?tab=github). @@ -93,7 +93,7 @@ addons: The project settings should be self-explanatory, and should match the values for the project configuration on Coverity Scan. The `branch_pattern` is a regular expression for the branches on which you want to run Coverity Scan. Please refer to the [FAQ](https://scan.coverity.com/faq) regarding build submission limits before enabling additional branches. We recommend leaving this set to `coverity_scan`. -The COVERITY_SCAN_TOKEN is encrypted and is obtained by using the [Travis CI CLI](https://github.com/travis-ci/travis). Coverity Scan provides this information on your Project's Travis CI tab for convenience, but you may also run it manually (see [Encryption Keys](http://docs.travis-ci.com/user/encryption-keys/) for more information on encryption). +The COVERITY_SCAN_TOKEN is encrypted and is obtained by using the [Travis CI CLI](https://github.com/travis-ci/travis). Coverity Scan provides this information on your Project's Travis CI tab for convenience, but you may also run it manually (see [Encryption Keys](/user/encryption-keys/) for more information on encryption). ```bash gem install travis diff --git a/user/customizing-the-build.md b/user/customizing-the-build.md index 5c4be80b597..6c389bf23f1 100644 --- a/user/customizing-the-build.md +++ b/user/customizing-the-build.md @@ -4,199 +4,11 @@ layout: en redirect_from: - /user/build-configuration/ - - /user/build-lifecycle/ - /user/how-to-skip-a-build/ - /user/repository-providers/ --- - -Travis CI provides a default build environment and a default set of steps for each programming language. You can customize any step in this process in `.travis.yml`. Travis CI uses `.travis.yml` file in the root of your repository to learn about your project and how you want your builds to be executed. `.travis.yml` can be -very minimalistic or have a lot of customization in it. A few examples of what -kind of information your `.travis.yml` file may have: - -- What programming language your project uses -- What commands or scripts you want to be executed before each build (for example, to install or clone your project's dependencies) -- What command is used to run your test suite -- Emails, Campfire and IRC rooms to notify about build failures - -## The Build Lifecycle - -A build on Travis CI is made up of two steps: - -1. **install**: install any dependencies required -2. **script**: run the build script - -You can run custom commands before the installation step (`before_install`), and before (`before_script`) or after (`after_script`) the script step. - -In a `before_install` step, you can install additional dependencies required by your project such as Ubuntu packages or custom services. - -You can perform additional steps when your build succeeds or fails using the `after_success` (such as building documentation, or deploying to a custom server) or `after_failure` (such as uploading log files) options. In both `after_failure` and `after_success`, you can access the build result using the `$TRAVIS_TEST_RESULT` environment variable. - -The complete build lifecycle, including three optional deployment steps and after checking out the git repository and changing to the repository directory, is: - -1. OPTIONAL Install [`apt addons`](/user/installing-dependencies/#installing-packages-with-the-apt-addon) -1. OPTIONAL Install [`cache components`](/user/caching) -1. `before_install` -1. `install` -1. `before_script` -1. `script` -1. OPTIONAL `before_cache` (for cleaning up cache) -1. `after_success` or `after_failure` -1. OPTIONAL `before_deploy` -1. OPTIONAL `deploy` -1. OPTIONAL `after_deploy` -1. `after_script` - -## Customizing the Installation Step - -The default dependency installation commands depend on the project language. For instance, Java builds either use Maven or Gradle, depending on which build file is present in the repository. Ruby projects use Bundler when a Gemfile is present in the repository. - -You can specify your own script to run to install whatever dependencies your project requires in `.travis.yml`: - -```yaml -install: ./install-dependencies.sh -``` -{: data-file=".travis.yml"} - -> When using custom scripts they should be executable (for example, using `chmod +x`) and contain a valid shebang line such as `/usr/bin/env sh`, `/usr/bin/env ruby`, or `/usr/bin/env python`. - -You can also provide multiple steps, for instance to install both ruby and node dependencies: - -```yaml -install: - - bundle install --path vendor/bundle - - npm install -``` -{: data-file=".travis.yml"} - -When one of the steps fails, the build stops immediately and is marked as [errored](#Breaking-the-Build). - -### Skipping the Installation Step - -You can skip the installation step entirely by adding the following to your `.travis.yml`: - -```yaml -install: true -``` -{: data-file=".travis.yml"} - -## Customizing the Build Step - -The default build command depends on the project language. Ruby projects use `rake`, the common denominator for most Ruby projects. - -You can overwrite the default build step in `.travis.yml`: - -```yaml -script: bundle exec thor build -``` -{: data-file=".travis.yml"} - -You can specify multiple script commands as well: - -```yaml -script: -- bundle exec rake build -- bundle exec rake builddoc -``` -{: data-file=".travis.yml"} - -When one of the build commands returns a non-zero exit code, the Travis CI build runs the subsequent commands as well, and accumulates the build result. - -In the example above, if `bundle exec rake build` returns an exit code of 1, the following command `bundle exec rake builddoc` is still run, but the build will result in a failure. - -If your first step is to run unit tests, followed by integration tests, you may still want to see if the integration tests succeed when the unit tests fail. - -You can change this behavior by using a little bit of shell magic to run all commands subsequently but still have the build fail when the first command returns a non-zero exit code. Here's the snippet for your `.travis.yml` - -```yaml -script: bundle exec rake build && bundle exec rake builddoc -``` -{: data-file=".travis.yml"} - -This example (note the `&&`) fails immediately when `bundle exec rake build` fails. - -### Note on $? - -Each command in `script` is processed by a special bash function. -This function manipulates `$?` to produce logs suitable for display. -Consequently, you should not rely on the value of `$?` in `script` section to -alter the build behavior. -See [this GitHub issue](https://github.com/travis-ci/travis-ci/issues/3771) -for a more technical discussion. - -## Breaking the Build - -If any of the commands in the first four stages of the build lifecycle return a non-zero exit code, the build is broken: - -- If `before_install`, `install` or `before_script` returns a non-zero exit code, - the build is **errored** and stops immediately. -- If `script` returns a non-zero exit code, the build is **failed**, but continues to run before being marked as **failed**. - -The exit code of `after_success`, `after_failure`, `after_script`, `after_deploy` and subsequent stages do not affect the build result. -However, if one of these stages times out, the build is marked as a failure. - -## Deploying your Code - -An optional phase in the build lifecycle is deployment. This step can't be -overridden, but is defined by using one of our continuous deployment providers -to deploy code to Heroku, Engine Yard, or a different supported platform. -The deploy steps are skipped if the build is broken. - -When deploying files to a provider, prevent Travis CI from resetting your -working directory and deleting all changes made during the build ( `git stash ---all`) by adding `skip_cleanup` to your `.travis.yml`: - -```yaml -deploy: - skip_cleanup: true -``` -{: data-file=".travis.yml"} - -You can run steps before a deploy by using the `before_deploy` phase. A non-zero exit code in this phase will mark the build as **errored**. - -If there are any steps you'd like to run after the deployment, you can use the `after_deploy` phase. Note that `after_deploy` will not affect the status of the build. - -Note that `before_deploy` and `after_deploy` are run before and after every deploy provider, so will run multiple times if there are multiple providers. - -## Specifying Runtime Versions - -One of the key features of Travis CI is the ease of running your test suite against multiple runtimes and versions. Specify what languages and runtimes to run your test suite against in the `.travis.yml` file: - -{% include languages.html %} - -## Installing Packages Using apt - -If your dependencies need native libraries to be available, you can use **passwordless sudo to install them**: - -```yaml -before_install: -- sudo apt-get update -qq -- sudo apt-get install -qq [packages list] -``` -{: data-file=".travis.yml"} - -> Note that this feature is not available for builds that are running on [Container-based workers](/user/reference/overview/#Virtualization-environments). -> Look into [using the `apt` plug-in](/user/installing-dependencies/#Installing-Packages-on-Container-Based-Infrastructure) instead. - -All virtual machines are snapshotted and returned to their initial state after each build. - -### Using 3rd-party PPAs - -If you need a native dependency that is not available from the official Ubuntu repositories, there might be a [3rd-party PPAs](https://launchpad.net/ubuntu/+ppas) that you can use. - -## Installing a Second Programming language - -If you need to install a second programming language in your current build environment, for example installing a more recent version of Ruby than the default version present in all build environments you can do so in the `before_install` stage of the build: - -```yaml -before_install: -- rvm install 2.1.5 -``` -{: data-file=".travis.yml"} - -You can also use other installation methods such as `apt-get`. - ## Build Timeouts It is very common for test suites or build scripts to hang. @@ -214,6 +26,12 @@ Some common reasons why builds might hang: > There is no timeout for a build; a build will run as long as all the jobs do as long as each job does not timeout. +## Build Lifecycle + +The [Build Lifecycle documentation](/user/job-lifecycle) now has it's own page. +{: #Build-Lifecycle} + + ## Limiting Concurrent Jobs {{ site.data.snippets.concurrent_jobs }} @@ -425,31 +243,8 @@ For example, Note that in case multiple commits are pushed together, the skip command is effective only if present in the commit message of the HEAD commit. -## Build Matrix - -When you combine the three main configuration options of *Runtime*, *Environment* and *Exclusions/Inclusions* you have a matrix of all possible combinations. -Below is an example configuration for a build matrix that expands to *56 individual (7 * 4 * 2)* jobs. - -```yaml -rvm: - - 1.9.3 - - 2.0.0 - - 2.2 - - ruby-head - - jruby - - rbx-3 - - ree -gemfile: - - gemfiles/Gemfile.rails-2.3.x - - gemfiles/Gemfile.rails-3.0.x - - gemfiles/Gemfile.rails-3.1.x - - gemfiles/Gemfile.rails-edge -env: - - ISOLATED=true - - ISOLATED=false -``` -{: data-file=".travis.yml"} +## Build matrix You can also define exclusions to the build matrix: @@ -740,44 +535,7 @@ Now, the build result will be determined as soon as all the required jobs finish ## Implementing Complex Build Steps -If you have a complex build environment that is hard to configure in the `.travis.yml`, consider moving the steps into a separate shell script. -The script can be a part of your repository and can easily be called from the `.travis.yml`. - -Consider a scenario where you want to run more complex test scenarios, but only for builds that aren't coming from pull requests. A shell script might be: - -```bash -#!/bin/bash -set -ev -bundle exec rake:units -if [ "${TRAVIS_PULL_REQUEST}" = "false" ]; then - bundle exec rake test:integration -fi -``` - -Note the `set -ev` at the top. The `-e` flag causes the script to exit as soon as one command returns a non-zero exit code. This can be handy if you want whatever script you have to exit early. It also helps in complex installation scripts where one failed command wouldn't otherwise cause the installation to fail. - -The `-v` flag makes the shell print all lines in the script before executing them, which helps identify which steps failed. - -To run that script from your `.travis.yml`: - -1. Save it in your repository as `scripts/run-tests.sh`. -2. Make it executable by running `chmod ugo+x scripts/run-tests.sh`. -3. Commit it to your repository. -4. Add it to your `.travis.yml`: - ```yaml - script: ./scripts/run-tests.sh - ``` - {: data-file=".travis.yml"} - -### How does this work? (Or, why you should not use `exit` in build steps) - -The steps specified in the build lifecycle are compiled into a single bash script and executed on the worker. - -When overriding these steps, do not use `exit` shell built-in command. -Doing so will run the risk of terminating the build process without giving Travis a chance to -perform subsequent tasks. - -Using `exit` inside a custom script which will be invoked from during a build is fine. +TODO: link ## Custom Hostnames diff --git a/user/for-beginners.md b/user/for-beginners.md index ee1bf254836..e35c672c6ab 100644 --- a/user/for-beginners.md +++ b/user/for-beginners.md @@ -44,7 +44,7 @@ In the Travis CI documentation, some common words have specific meanings: environment and then carries out a series of *phases* such as compiling your code, running tests, etc. A job fails if the return code of the `script` *phase* is non zero. -* *phase* - the [sequential steps](/user/customizing-the-build/#The-Build-Lifecycle) +* *phase* - the [sequential steps](/user/job-lifecycle/) of a job. For example, the `install` phase, comes before the `script` phase, which comes before the optional `deploy` phase. * *build* - a group of *jobs*. For example, a build might have two *jobs*, each @@ -78,6 +78,5 @@ the setup that suits your project best: More details are on our environments are available in our [CI Environment](/user/ci-environment/) documentation. -Now that you've read the basics, head over to our [Getting -Started](/user/getting-started/) guide for details on setting up your first +Now that you've read the basics, head over to our [Tutorial](/user/tutorial/) for details on setting up your first build! diff --git a/user/gui-and-headless-browsers.md b/user/gui-and-headless-browsers.md index 593bcccbe0e..1ae02e6dfec 100644 --- a/user/gui-and-headless-browsers.md +++ b/user/gui-and-headless-browsers.md @@ -8,7 +8,7 @@ layout: en ## What This Guide Covers -This guide covers headless GUI & browser testing using tools provided by the Travis [CI environment](/user/reference/precise/). Most of the content is technology-neutral and does not cover all the details of specific testing tools (like Poltergeist or Capybara). We recommend you start with the [Getting Started](/user/getting-started/) and [Build Configuration](/user/customizing-the-build/) guides before reading this one. +This guide covers headless GUI & browser testing using tools provided by the Travis [CI environment](/user/reference/precise/). Most of the content is technology-neutral and does not cover all the details of specific testing tools (like Poltergeist or Capybara). We recommend you start with the [Tutorial](/user/tutorial/) and [Build Configuration](/user/customizing-the-build/) guides before reading this one. ## Using Sauce Labs diff --git a/user/job-lifecycle.md b/user/job-lifecycle.md new file mode 100644 index 00000000000..e35389d03cd --- /dev/null +++ b/user/job-lifecycle.md @@ -0,0 +1,192 @@ +--- +title: Job Lifecycle +layout: en +redirect_from: + - /user/build-lifecycle/ +--- + +Travis CI provides a default build environment and a default set of phases for each programming language. You can customize any phase in this process in your `.travis.yml`. + +## The job lifecycle + +A job on Travis CI is made up of two main parts: + +1. **install**: install any dependencies required +2. **script**: run the build script + +You can run custom commands before the installation phase (`before_install`), and before (`before_script`) or after (`after_script`) the script phase. + +You can perform additional actions when your build succeeds or fails using the `after_success` (such as building documentation) or `after_failure` (such as uploading log files) phases. +In both `after_failure` and `after_success`, you can access the build result using the `$TRAVIS_TEST_RESULT` environment variable. + +The complete job lifecycle, including three optional deployment phases and after checking out the git repository and changing to the repository directory, is: + +1. OPTIONAL Install [`apt addons`](/user/installing-dependencies/#installing-packages-with-the-apt-addon) +1. OPTIONAL Install [`cache components`](/user/caching) +1. `before_install` +1. `install` +1. `before_script` +1. `script` +1. OPTIONAL `before_cache` (for cleaning up cache) +1. `after_success` or `after_failure` +1. OPTIONAL `before_deploy` +1. OPTIONAL `deploy` +1. OPTIONAL `after_deploy` +1. `after_script` + +A *build* can be composed of many jobs. + +## Customizing the Installation Phase + +The default dependency installation commands depend on the project language. +For instance, Java builds either use Maven or Gradle, depending on which build file is present in the repository. Ruby projects use Bundler when a Gemfile is present in the repository. + +You can specify your own script to install your project dependencies: + +```yaml +install: ./install-dependencies.sh +``` +{: data-file=".travis.yml"} + +> When using custom scripts they should be executable (for example, using `chmod +x`) and contain a valid shebang line such as `/usr/bin/env sh`, `/usr/bin/env ruby`, or `/usr/bin/env python`. + +You can also provide multiple steps, for instance to install both ruby and node dependencies: + +```yaml +install: + - bundle install --path vendor/bundle + - npm install +``` +{: data-file=".travis.yml"} + +When one of the steps in the install fails, the build stops immediately and is marked as [errored](#Breaking-the-Build). + +You can also use `apt-get` or `snap` to [install dependencies](/user/installing-dependencies/) + +### Skipping the Installation Phase + +Skip the installation step entirely by adding the following to your `.travis.yml`: + +```yaml +install: true +``` +{: data-file=".travis.yml"} + +## Customizing the Build Phase + +The default build command depends on the project language. Ruby projects use `rake`, the common denominator for most Ruby projects. + +You can overwrite the default build step in `.travis.yml`: + +```yaml +script: bundle exec thor build +``` +{: data-file=".travis.yml"} + +You can specify multiple script commands as well: + +```yaml +script: +- bundle exec rake build +- bundle exec rake builddoc +``` +{: data-file=".travis.yml"} + +When one of the build commands returns a non-zero exit code, the Travis CI build runs the subsequent commands as well, and accumulates the build result. + +In the example above, if `bundle exec rake build` returns an exit code of 1, the following command `bundle exec rake builddoc` is still run, but the build will result in a failure. + +If your first step is to run unit tests, followed by integration tests, you may still want to see if the integration tests succeed when the unit tests fail. + +You can change this behavior by using a little bit of shell magic to run all commands subsequently but still have the build fail when the first command returns a non-zero exit code. Here's the snippet for your `.travis.yml` + +```yaml +script: bundle exec rake build && bundle exec rake builddoc +``` +{: data-file=".travis.yml"} + +This example (note the `&&`) fails immediately when `bundle exec rake build` fails. + +### Note on $? + +Each command in `script` is processed by a special bash function. +This function manipulates `$?` to produce logs suitable for display. +Consequently, you should not rely on the value of `$?` in `script` section to +alter the build behavior. +See [this GitHub issue](https://github.com/travis-ci/travis-ci/issues/3771) +for a more technical discussion. + +### Complex Build Commands + +If you have a complex build environment that is hard to configure in the `.travis.yml`, consider moving the steps into a separate shell script. +The script can be a part of your repository and can easily be called from the `.travis.yml`. + +Consider a scenario where you want to run more complex test scenarios, but only for builds that aren't coming from pull requests. A shell script might be: + +```bash +#!/bin/bash +set -ev +bundle exec rake:units +if [ "${TRAVIS_PULL_REQUEST}" = "false" ]; then + bundle exec rake test:integration +fi +``` + +Note the `set -ev` at the top. The `-e` flag causes the script to exit as soon as one command returns a non-zero exit code. This can be handy if you want whatever script you have to exit early. It also helps in complex installation scripts where one failed command wouldn't otherwise cause the installation to fail. + +The `-v` flag makes the shell print all lines in the script before executing them, which helps identify which steps failed. + +To run that script from your `.travis.yml`: + +1. Save it in your repository as `scripts/run-tests.sh`. +2. Make it executable by running `chmod ugo+x scripts/run-tests.sh`. +3. Commit it to your repository. +4. Add it to your `.travis.yml`: + ```yaml + script: ./scripts/run-tests.sh + ``` + {: data-file=".travis.yml"} + +#### How does this work? (Or, why you should not use `exit` in build steps) + +The steps specified in the job lifecycle are compiled into a single bash script and executed on the worker. + +When overriding these steps, do not use `exit` shell built-in command. +Doing so will run the risk of terminating the build process without giving Travis a chance to +perform subsequent tasks. + +Using `exit` inside a custom script which will be invoked from during a build is fine. + + +## Breaking the Build + +If any of the commands in the first four phases of the job lifecycle return a non-zero exit code, the build is broken: + +- If `before_install`, `install` or `before_script` returns a non-zero exit code, + the build is **errored** and stops immediately. +- If `script` returns a non-zero exit code, the build is **failed**, but continues to run before being marked as **failed**. + +The exit code of `after_success`, `after_failure`, `after_script`, `after_deploy` and subsequent stages do not affect the build result. +However, if one of these stages times out, the build is marked as **failed**. + +## Deploying your Code + +An optional phase in the job lifecycle is deployment. +This phase is defined by using one of our continuous deployment providers to deploy code to Heroku, Amazon, or a different supported platform. +The deploy steps are skipped if the build is broken. + +When deploying files to a provider, prevent Travis CI from resetting your +working directory and deleting all changes made during the build ( `git stash +--all`) by adding `skip_cleanup` to your `.travis.yml`: + +```yaml +deploy: + skip_cleanup: true +``` +{: data-file=".travis.yml"} + +You can run commands before a deploy by using the `before_deploy` phase. A non-zero exit code in this phase will mark the build as **errored**. + +If there are any steps you'd like to run after the deployment, you can use the `after_deploy` phase. Note that `after_deploy` does not affect the status of the build. + +Note that `before_deploy` and `after_deploy` are run before and after every deploy provider, so will run multiple times if there are multiple providers. diff --git a/user/languages/android.md b/user/languages/android.md index c4411bc2d55..56eb2588921 100644 --- a/user/languages/android.md +++ b/user/languages/android.md @@ -6,7 +6,7 @@ layout: en ### What This Guide Covers -This guide covers build environment and configuration topics specific to Android projects. Please make sure to read our [Getting Started](/user/getting-started/) and [general build configuration](/user/customizing-the-build/) guides first. +This guide covers build environment and configuration topics specific to Android projects. Please make sure to read our [Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. Android builds are not available on the OS X environment. diff --git a/user/languages/c.md b/user/languages/c.md index a0dc34be0b4..63bca8c5b3f 100644 --- a/user/languages/c.md +++ b/user/languages/c.md @@ -27,7 +27,7 @@ language: c {{ site.data.snippets.trusty_note }} This guide covers build environment and configuration topics specific to C -projects. Please make sure to read our [Getting Started](/user/getting-started/) +projects. Please make sure to read our [Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. ## CI environment for C Projects diff --git a/user/languages/clojure.md b/user/languages/clojure.md index 84d529486db..4c1ae5b30aa 100644 --- a/user/languages/clojure.md +++ b/user/languages/clojure.md @@ -27,7 +27,7 @@ language: clojure {{ site.data.snippets.trusty_note_no_osx }} This guide covers build environment and configuration topics specific to Clojure -projects. Please make sure to read our [Getting Started](/user/getting-started/) +projects. Please make sure to read our [Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. Clojure builds are not available on the OS X environment. diff --git a/user/languages/cpp.md b/user/languages/cpp.md index 2b40a4be8a6..32cb6f8b319 100644 --- a/user/languages/cpp.md +++ b/user/languages/cpp.md @@ -26,7 +26,7 @@ language: cpp {{ site.data.snippets.trusty_note }} This guide covers build environment and configuration topics specific to C++ -projects. Please make sure to read our [Getting Started](/user/getting-started/) +projects. Please make sure to read our [Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. ## CI environment for C++ Projects diff --git a/user/languages/crystal.md b/user/languages/crystal.md index b8e06f97ad4..37c1d444423 100644 --- a/user/languages/crystal.md +++ b/user/languages/crystal.md @@ -8,7 +8,7 @@ layout: en This guide covers build environment and configuration topics specific to [Crystal](http://crystal-lang.org) projects. Please make sure to read our -[Getting Started](/user/getting-started/) and +[Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. ### Community-Supported Warning diff --git a/user/languages/csharp.md b/user/languages/csharp.md index a58dd6d4bbd..f3ceb639585 100644 --- a/user/languages/csharp.md +++ b/user/languages/csharp.md @@ -7,7 +7,7 @@ layout: en ### What this guide covers This guide covers build environment and configuration topics specific to C#, F#, and Visual Basic -projects. Please make sure to read our [Getting started](/user/getting-started/) +projects. Please make sure to read our [Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. ### Community Supported Language diff --git a/user/languages/d.md b/user/languages/d.md index e36c9fdc942..06ca4ac0ef9 100644 --- a/user/languages/d.md +++ b/user/languages/d.md @@ -7,7 +7,7 @@ layout: en ### What This Guide Covers This guide covers build environment and configuration topics specific to D projects. Please make -sure to read our [Getting Started](/user/getting-started/) and +sure to read our [Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. ### Community Supported Language diff --git a/user/languages/dart.md b/user/languages/dart.md index 15b5d927265..cbee036b5b5 100644 --- a/user/languages/dart.md +++ b/user/languages/dart.md @@ -8,7 +8,7 @@ layout: en This guide covers build environment and configuration topics specific to [Dart](https://www.dartlang.org/) projects. Please make sure to read our -[Getting Started](/user/getting-started/) and +[Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. ### Community-Supported Warning diff --git a/user/languages/elixir.md b/user/languages/elixir.md index 72c957a86f6..e845685159c 100644 --- a/user/languages/elixir.md +++ b/user/languages/elixir.md @@ -30,7 +30,7 @@ otp_release: '19.0' The rest of this guide covers build environment and configuration topics specific to Elixir projects. Please make sure to read our -[Getting Started](/user/getting-started/) and +[Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. Elixir builds are not available on the OS X environment. diff --git a/user/languages/erlang.md b/user/languages/erlang.md index 2244814a1ac..9d9ad4b4947 100644 --- a/user/languages/erlang.md +++ b/user/languages/erlang.md @@ -31,7 +31,7 @@ otp_release: The rest of this guide covers build environment and configuration topics specific to Erlang projects. Please make sure to read our -[Getting Started](/user/getting-started/) and +[Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. Erlang builds are not available on the OS X environment. diff --git a/user/languages/go.md b/user/languages/go.md index 65bf04fb914..914fd5279f6 100644 --- a/user/languages/go.md +++ b/user/languages/go.md @@ -35,7 +35,7 @@ Using a float results in the use of Go 1.1. {{ site.data.snippets.trusty_note_no_osx }} The rest of this guide covers configuring Go projects in Travis CI. If you're -new to Travis CI please read our [Getting Started](/user/getting-started/) and +new to Travis CI please read our [Tutorial](/user/tutorial/) and [build configuration](/user/customizing-the-build/) guides first. ## Specifying a Go version to use diff --git a/user/languages/groovy.md b/user/languages/groovy.md index 0db480a2d59..92302c08601 100644 --- a/user/languages/groovy.md +++ b/user/languages/groovy.md @@ -27,7 +27,7 @@ language: groovy {{ site.data.snippets.trusty_note_no_osx }} The rest of this guide covers configuring Groovy projects on Travis CI. If you're -new to Travis CI please read our [Getting Started](/user/getting-started/) and +new to Travis CI please read our [Tutorial](/user/tutorial/) and [build configuration](/user/customizing-the-build/) guides first. Groovy builds are not available on the OS X environment. diff --git a/user/languages/haskell.md b/user/languages/haskell.md index 984682bca85..13c8f2e576f 100644 --- a/user/languages/haskell.md +++ b/user/languages/haskell.md @@ -28,7 +28,7 @@ ghc: {{ site.data.snippets.trusty_note_no_osx }} The rest of this guide covers configuring Haskell projects on Travis CI. If -you're new to Travis CI please read our [Getting Started](/user/getting-started/) +you're new to Travis CI please read our [Tutorial](/user/tutorial/) and [build configuration](/user/customizing-the-build/) guides first. ## Specifying Haskell compiler versions diff --git a/user/languages/haxe.md b/user/languages/haxe.md index 0c087e97ae3..dfa286d293a 100644 --- a/user/languages/haxe.md +++ b/user/languages/haxe.md @@ -8,7 +8,7 @@ layout: en This guide covers build environment and configuration topics specific to [Haxe](http://haxe.org/) projects. Please make sure to read our -[Getting Started](/user/getting-started/) and +[Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. ### Community-Supported Warning diff --git a/user/languages/java.md b/user/languages/java.md index 2e649afef9d..f5410701d3b 100644 --- a/user/languages/java.md +++ b/user/languages/java.md @@ -25,7 +25,7 @@ Minimal example: {{ site.data.snippets.trusty_note }} The rest of this guide covers configuring Java projects in Travis CI. If you're -new to Travis CI please read our [Getting Started](/user/getting-started/) and +new to Travis CI please read our [Tutorial](/user/tutorial/) and [build configuration](/user/customizing-the-build/) guides first. ## Overview @@ -59,7 +59,7 @@ or if your project uses the `mvnw` wrapper script: > Note that the Travis CI build lifecycle and the Maven build lifecycle use similar terminology for different build phases. For example, `install` in a Travis CI build comes much earlier than `install` in the Maven build lifecycle. More details -can be found about the [Travis Build Lifecycle](/user/customizing-the-build/#The-Build-Lifecycle) +can be found about the [Travis Build Lifecycle](/user/job-lifecycle/) and the [Maven Build Lifecycle](https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html). ### Maven Default Script Command @@ -80,7 +80,7 @@ Travis CI uses that instead: > The default command does not generate JavaDoc (`-Dmaven.javadoc.skip=true`). -To use a different `script` command, customize the [build step](/user/customizing-the-build/#Customizing-the-Build-Step). +To use a different `script` command, customize the [build step](/user/job-lifecycle/#Customizing-the-Build-Phase). ## Projects Using Gradle @@ -98,7 +98,7 @@ or ./gradlew assemble ``` -To use a different `install` command, customize the [installation step](/user/customizing-the-build/#Customizing-the-Installation-Step). +To use a different `install` command, customize the [installation step](/user/job-lifecycle/#Customizing-the-Installation-Phase). ### Gradle Default Script Command @@ -116,7 +116,7 @@ root, Travis CI uses that wrapper instead: ./gradlew check ``` -To use a different `script` command, customize the [build step](/user/customizing-the-build/#Customizing-the-Build-Step). +To use a different `script` command, customize the [build step](/user/job-lifecycle/#Customizing-the-Build-Phase). ### Caching @@ -165,7 +165,7 @@ If Travis CI does not detect Maven or Gradle files it runs Ant: ant test ``` -To use a different `script` command, customize the [build step](/user/customizing-the-build/#Customizing-the-Build-Step). +To use a different `script` command, customize the [build step](/user/job-lifecycle/#Customizing-the-Build-Phase). ## Testing Against Multiple JDKs diff --git a/user/languages/javascript-with-nodejs.md b/user/languages/javascript-with-nodejs.md index 09ca76c991a..1ad7029f753 100644 --- a/user/languages/javascript-with-nodejs.md +++ b/user/languages/javascript-with-nodejs.md @@ -30,7 +30,7 @@ node_js: {{ site.data.snippets.trusty_note }} This guide covers build environment and configuration topics specific to JavaScript and Node.js -projects. Please make sure to read our [Getting Started](/user/getting-started/) +projects. Please make sure to read our [Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. ## Specifying Node.js versions @@ -126,7 +126,7 @@ npm install #### Using a specific npm version -Add the following to the [`before_install` phase](/user/customizing-the-build/#The-Build-Lifecycle) of `.travis.yml`: +Add the following to the [`before_install` phase](/user/job-lifecycle/) of `.travis.yml`: ```yaml before_install: @@ -174,7 +174,7 @@ instead. #### Using a specific yarn version -Add the following to the [`before_install` phase](/user/customizing-the-build/#The-Build-Lifecycle) of `.travis.yml`: +Add the following to the [`before_install` phase](/user/job-lifecycle/) of `.travis.yml`: ```yaml before_install: diff --git a/user/languages/julia.md b/user/languages/julia.md index 8b0f42dd1e5..aec75a4d98e 100644 --- a/user/languages/julia.md +++ b/user/languages/julia.md @@ -8,7 +8,7 @@ layout: en This guide covers build environment and configuration topics specific to [Julia](http://julialang.org) projects. Please make sure to read our -[Getting Started](/user/getting-started/) and +[Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. ### Community-Supported Warning diff --git a/user/languages/nix.md b/user/languages/nix.md index 7c7a0b07204..d06ba3bd460 100644 --- a/user/languages/nix.md +++ b/user/languages/nix.md @@ -6,7 +6,7 @@ layout: en ### What This Guide Covers -This guide covers build environment and configuration topics specific to Nix projects. Please make sure to read our [Getting Started](/user/getting-started/) and [general build configuration](/user/customizing-the-build/) guides first. +This guide covers build environment and configuration topics specific to Nix projects. Please make sure to read our [Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. diff --git a/user/languages/objective-c.md b/user/languages/objective-c.md index 93d5d54f4bb..8dfda0dcab7 100644 --- a/user/languages/objective-c.md +++ b/user/languages/objective-c.md @@ -9,8 +9,7 @@ swiftypetags: ## What This Guide Covers This guide covers build environment and configuration topics specific to -Objective-C and Swift projects. Please make sure to read our [Getting -Started](/user/getting-started/) and [general build +Objective-C and Swift projects. Please make sure to read our [Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. Objective-C/Swift builds are not available on the Linux environments. diff --git a/user/languages/perl.md b/user/languages/perl.md index 7288866265a..deab3f80c6c 100644 --- a/user/languages/perl.md +++ b/user/languages/perl.md @@ -6,7 +6,7 @@ layout: en ### What This Guide Covers -This guide covers build environment and configuration topics specific to Perl projects. Please make sure to read our [Getting Started](/user/getting-started/) and [general build configuration](/user/customizing-the-build/) guides first. +This guide covers build environment and configuration topics specific to Perl projects. Please make sure to read our [Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. Perl builds are not available on the OS X environment. diff --git a/user/languages/perl6.md b/user/languages/perl6.md index 0f9bfa43d6e..460fefe5f77 100644 --- a/user/languages/perl6.md +++ b/user/languages/perl6.md @@ -12,7 +12,7 @@ maintainers: ### What This Guide Covers This guide covers build environment and configuration topics specific to -Perl 6 projects. Please make sure to read our [Getting Started](/user/getting-started/) +Perl 6 projects. Please make sure to read our [Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. Perl 6 builds are not available on the OS X environment. diff --git a/user/languages/php.md b/user/languages/php.md index 9f638693132..0518ba86c5e 100644 --- a/user/languages/php.md +++ b/user/languages/php.md @@ -31,7 +31,7 @@ php: {{ site.data.snippets.trusty_note_no_osx }} This guide covers build environment and configuration topics specific to PHP -projects. Please make sure to read our [Getting Started](/user/getting-started/) +projects. Please make sure to read our [Tutorial](/user/tutorial/) and [build configuration](/user/customizing-the-build/) guides first. PHP builds are not available on the OS X environment. diff --git a/user/languages/python.md b/user/languages/python.md index b54fc264195..afe7d4b6029 100644 --- a/user/languages/python.md +++ b/user/languages/python.md @@ -32,7 +32,7 @@ Minimal example: Python builds are not available on the macOS environment. The rest of this guide covers configuring Python projects in Travis CI. If you're -new to Travis CI please read our [Getting Started](/user/getting-started/) and +new to Travis CI please read our [Tutorial](/user/tutorial/) and [build configuration](/user/customizing-the-build/) guides first. ## Specifying Python versions @@ -183,7 +183,7 @@ Please note that the `--user` option is mandatory if you are not using `language To override the default `pip` dependency management, alter the `before_install` step as described in [general build -configuration](/user/customizing-the-build/#Customizing-the-Installation-Step) guide. +configuration](/user/job-lifecycle/#Customizing-the-Installation-Phase) guide. ### Testing Against Multiple Versions of Dependencies (e.g. Django or Flask) diff --git a/user/languages/r.md b/user/languages/r.md index 3056644920f..2fbdda7cc17 100644 --- a/user/languages/r.md +++ b/user/languages/r.md @@ -7,9 +7,7 @@ layout: en ### What This Guide Covers This guide covers build environment and configuration topics specific to R -projects. Please make sure to read our [Getting -Started](/user/getting-started/) and [general build -configuration](/user/customizing-the-build/) guides first. +projects. Please make sure to read our [Tutorial](/user/tutorial/) and [build configuration](/user/customizing-the-build/) guides first. ### Community-Supported Warning diff --git a/user/languages/ruby.md b/user/languages/ruby.md index 764b71de613..057240557b3 100644 --- a/user/languages/ruby.md +++ b/user/languages/ruby.md @@ -31,7 +31,7 @@ rvm: {{ site.data.snippets.trusty_note }} The rest of this guide covers configuring Ruby projects on Travis CI. If you're -new to Travis CI please read our [Getting Started](/user/getting-started/) and +new to Travis CI please read our [Tutorial](/user/tutorial/) and [build configuration](/user/customizing-the-build/) guides first. ## Specifying Ruby versions and implementations diff --git a/user/languages/rust.md b/user/languages/rust.md index ec6e29e51ef..fb4a3cf4499 100644 --- a/user/languages/rust.md +++ b/user/languages/rust.md @@ -27,7 +27,7 @@ language: rust {{ site.data.snippets.trusty_note }} The rest of this guide covers configuring Rust projects in Travis CI. If you're -new to Travis CI please read our [Getting Started](/user/getting-started/) and +new to Travis CI please read our [Tutorial](/user/tutorial/) and [build configuration](/user/customizing-the-build/) guides first. ## Choosing a Rust version diff --git a/user/languages/scala.md b/user/languages/scala.md index 3b4d3604f4a..54dc0e8d4c1 100644 --- a/user/languages/scala.md +++ b/user/languages/scala.md @@ -27,7 +27,7 @@ Minimal example: Scala builds are not available on the OS X environment. The rest of this guide covers configuring Scala projects in Travis CI. If you're -new to Travis CI please read our [Getting Started](/user/getting-started/) and +new to Travis CI please read our [Tutorial](/user/tutorial/) and [build configuration](/user/customizing-the-build/) guides first. ## Overview @@ -76,7 +76,7 @@ sbt ++$TRAVIS_SCALA_VERSION test to run your test suite. To use a different `script` command, customize the -[build step](/user/customizing-the-build/#Customizing-the-Build-Step). +[build step](/user/job-lifecycle/#Customizing-the-Build-Phase). ### Custom sbt Arguments diff --git a/user/languages/smalltalk.md b/user/languages/smalltalk.md index 87ccb61ed7c..7f252293e1d 100644 --- a/user/languages/smalltalk.md +++ b/user/languages/smalltalk.md @@ -8,7 +8,7 @@ layout: en This guide covers build environment and configuration topics specific to Smalltalk projects. Please make sure to read our -[Getting Started](/user/getting-started/) and +[Tutorial](/user/tutorial/) and [general build configuration](/user/customizing-the-build/) guides first. ### Community-Supported Warning diff --git a/user/multi-os.md b/user/multi-os.md index e2c6e27ce44..7faf56a7e69 100644 --- a/user/multi-os.md +++ b/user/multi-os.md @@ -66,7 +66,7 @@ matrix: ## Example Multi OS Build Matrix -Here's an example `.travis.yml` file using if/then directives to customize the [build lifecycle](/user/customizing-the-build/#The-Build-Lifecycle) to use [Graphviz](https://graphviz.gitlab.io/) in both Linux and OS X. +Here's an example `.travis.yml` file using if/then directives to customize the [build lifecycle](/user/job-lifecycle/) to use [Graphviz](https://graphviz.gitlab.io/) in both Linux and OS X. ```yaml language: c diff --git a/user/getting-started.md b/user/tutorial.md similarity index 91% rename from user/getting-started.md rename to user/tutorial.md index 7fa2257639d..3e7293a5ab9 100644 --- a/user/getting-started.md +++ b/user/tutorial.md @@ -1,7 +1,8 @@ --- -title: Getting started +title: Travis CI Tutorial layout: en - +redirect_from: + - /user/getting-started/ --- This is a very short guide to using Travis CI with your GitHub hosted code repository. @@ -9,8 +10,6 @@ If you're new to continuous integration or would like some more information on what Travis CI does, start with [Core Concepts for Beginners](/user/for-beginners) instead. - - ## Prerequisites To start using Travis CI, make sure you have: @@ -39,14 +38,14 @@ To start using Travis CI, make sure you have: ``` {: data-file=".travis.yml"} - The defaults for Ruby projects are `bundle install` to [install dependencies](/user/customizing-the-build/#Customizing-the-Installation-Step), + The defaults for Ruby projects are `bundle install` to [install dependencies](/user/job-lifecycle/#Customizing-the-Installation-Phase), and `rake` to build the project. 5. Add the `.travis.yml` file to git, commit and push, to trigger a Travis CI build: > Travis only runs builds on the commits you push *after* you've added a `.travis.yml` file. -6. Check the build status page to see if your build [passes or fails](/user/customizing-the-build/#Breaking-the-Build), according to the return status of the build command by visiting [Travis CI .com build status](https://travis-ci.com/auth) and selecting your repository. +6. Check the build status page to see if your build [passes or fails](/user/job-lifecycle/#breaking-the-build), according to the return status of the build command by visiting the [Travis CI](https://travis-ci.com/auth) and selecting your repository. ## Selecting a different programming language diff --git a/user/uploading-artifacts.md b/user/uploading-artifacts.md index 2611afd94c4..22b70d7e817 100644 --- a/user/uploading-artifacts.md +++ b/user/uploading-artifacts.md @@ -5,7 +5,7 @@ layout: en --- Travis CI can automatically upload your build artifacts to Amazon S3, after the -[`after success`](/user/customizing-the-build/#The-Build-Lifecycle) stage of the +[`after success`](/user/job-lifecycle/) stage of the build. For a minimal configuration, add the following to your `.travis.yml`: From d190b47344bb33c3535a98169a05eb3467be9896 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Pavl=C3=ADk?= Date: Tue, 16 Oct 2018 11:58:36 +0200 Subject: [PATCH 0037/1851] Environment variables: disambiguation (#2046) * Environment variables: disambiguation * streamline * don't reference past example * don't speak of "array items" --- user/environment-variables.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/user/environment-variables.md b/user/environment-variables.md index e202e5db0cf..9db51826cbf 100644 --- a/user/environment-variables.md +++ b/user/environment-variables.md @@ -26,7 +26,8 @@ Define variables in `.travis.yml` that: - differ per branch. - differ per job. -Define environment variables in your `.travis.yml` in the `env` key, quoting special characters such as asterisks (`*`): +Define environment variables in your `.travis.yml` in the `env` key, quoting special characters such as asterisks (`*`). +One build will triggered for each line in the `env` array. ```yaml env: @@ -40,7 +41,7 @@ env: ### Defining Multiple Variables per Item -When you define multiple variables per line in the `env` array (matrix variables), one build is triggered per item. +If you need to specify several environment variables for each build, put them all on the same line in the `env` array: ```yaml rvm: From dd9a4132f595435a9bb5c761cc67d670a7b8c720 Mon Sep 17 00:00:00 2001 From: Plaindocs Date: Tue, 16 Oct 2018 12:21:32 +0200 Subject: [PATCH 0038/1851] Mention of Win IP addresses (#2061) --- user/ip-addresses.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/user/ip-addresses.md b/user/ip-addresses.md index f06c9b85135..a219109fb35 100644 --- a/user/ip-addresses.md +++ b/user/ip-addresses.md @@ -9,12 +9,13 @@ when you need them safelisted to access your internal resources. Since builds run in a variety of different infrastructures, the IP ranges to safelist depend on the infrastructure your builds are running on. -| Infrastructure | NAT hostname | Current DNS | Last recorded IPs | -| :-------------------- | :------------------------------------------------ | :------------------------------------------------------------------------------------- | :---------------- | -| OS X | {{ site.data.macstadium_ip_range['host'] }} | [A recs](https://dnsjson.com/{{ site.data.macstadium_ip_range['host'] }}/A.json) | `{{ site.data.macstadium_ip_range['ip_range'] | join: "` `" }}` | +| Infrastructure | NAT hostname | Current DNS | Last recorded IPs | +|:----------------------|:--------------------------------------------------|:---------------------------------------------------------------------------------------|:-----------------------------------------------------------------------| +| OS X | {{ site.data.macstadium_ip_range['host'] }} | [A recs](https://dnsjson.com/{{ site.data.macstadium_ip_range['host'] }}/A.json) | `{{ site.data.macstadium_ip_range['ip_range'] | join: "` `" }}` | | Container-based Linux | {{ site.data.linux_containers_ip_range['host'] }} | [A recs](https://dnsjson.com/{{ site.data.linux_containers_ip_range['host'] }}/A.json) | `{{ site.data.linux_containers_ip_range['ip_range'] | join: "`, `" }}` | -| Sudo-enabled Linux | {{ site.data.gce_ip_range['host'] }} | [A recs](https://dnsjson.com/{{ site.data.gce_ip_range['host'] }}/A.json) | `{{ site.data.gce_ip_range['ip_range'] | join: "`, `" }}` | -| (all combined) | {{ site.data.ip_range['host'] }} | [A recs](https://dnsjson.com/{{ site.data.ip_range['host'] }}/A.json) | (sum of all above) | +| Sudo-enabled Linux | {{ site.data.gce_ip_range['host'] }} | [A recs](https://dnsjson.com/{{ site.data.gce_ip_range['host'] }}/A.json) | `{{ site.data.gce_ip_range['ip_range'] | join: "`, `" }}` | +| Windows | {{ site.data.gce_ip_range['host'] }} | [A recs](https://dnsjson.com/{{ site.data.gce_ip_range['host'] }}/A.json) | `{{ site.data.gce_ip_range['ip_range'] | join: "`, `" }}` | +| (all combined) | {{ site.data.ip_range['host'] }} | [A recs](https://dnsjson.com/{{ site.data.ip_range['host'] }}/A.json) | (sum of all above) | {: .ip-address-ranges} Note that these ranges can change in the future, and the best way to keep an From 00deb880c3067bfcdca2df295b152b5229648ddf Mon Sep 17 00:00:00 2001 From: Hugo Alliaume Date: Tue, 16 Oct 2018 12:30:25 +0200 Subject: [PATCH 0039/1851] fix(travis-conditions): replace `eval` command with `parse` (#2037) --- user/conditions-testing.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user/conditions-testing.md b/user/conditions-testing.md index 77619078f06..f97bc8a6058 100644 --- a/user/conditions-testing.md +++ b/user/conditions-testing.md @@ -31,7 +31,7 @@ Check the syntax of a condition by inspecting the resulting abstract syntax tree. ``` -$ travis-conditions eval "branch = foo" +$ travis-conditions parse "branch = foo" [:eq, [:var, :branch], [:val, "foo"]] ``` From d45023c692700863fc2eb14c8c057c3e7754ec27 Mon Sep 17 00:00:00 2001 From: Plaindocs Date: Tue, 16 Oct 2018 14:02:20 +0200 Subject: [PATCH 0040/1851] Link to both images (#2062) --- user/reference/trusty.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/user/reference/trusty.md b/user/reference/trusty.md index 34a188be593..267d33415c3 100644 --- a/user/reference/trusty.md +++ b/user/reference/trusty.md @@ -10,8 +10,6 @@ redirect_from: This guide provides a general overview of which packages, tools and settings are available in the Trusty environment. - - ## Using Trusty To use sudo-enabled Ubuntu Trusty, add the following to your @@ -72,9 +70,9 @@ based on common language runtimes like `ruby`, `go`, `php`, `python`, etc. For our Trusty based environments, we're making a smaller set of images that includes: -- A minimal image which contains a small subset of interpreters, as well as +- A [minimal image](/user/languages/minimal-and-generic/#minimal) which contains a small subset of interpreters, as well as `docker` and `packer`. -- A considerably larger image which contains roughly the same runtimes and +- A considerably [larger image](/user/languages/minimal-and-generic/#generic) which contains roughly the same runtimes and services present in Precise environments. ## Routing to Trusty @@ -100,7 +98,7 @@ sudo: false ### Version control -All VM images have the following pre-installed: +All virtual machine images have the following pre-installed: - Git 2.x - Mercurial From 6db01e8ba480d286bd0d35d6e76a410311b0d908 Mon Sep 17 00:00:00 2001 From: Plaindocs Date: Tue, 16 Oct 2018 14:18:14 +0200 Subject: [PATCH 0041/1851] Update open-source-on-travis-ci-com.md (#1883) (#2064) --- user/open-source-on-travis-ci-com.md | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/user/open-source-on-travis-ci-com.md b/user/open-source-on-travis-ci-com.md index f06d311047f..40896756460 100644 --- a/user/open-source-on-travis-ci-com.md +++ b/user/open-source-on-travis-ci-com.md @@ -4,7 +4,7 @@ layout: en --- -On May 2nd, 2018 Travis CI announced that open source projects will be joining private projects on **travis-ci.com**! +On Travis CI announced that open source projects will be joining private projects on **travis-ci.com**! @@ -26,15 +26,15 @@ GitHub-Apps based integration introduces a number of benefits as over our Legacy ## New User Accounts -Please sign up at [travis-ci.com](https://www.travis-ci.com), regardless of whether you plan to test open source or private projects. Welcome aboard! +Please sign up at [travis-ci.com], regardless of whether you plan to test open source or private projects. Welcome aboard! ## Existing User Accounts -Current users will keep both their `travis-ci.com` and `travis-ci.org` accounts at first. We recommend users of `travis-ci.org` activate any [new repositories](#New-Repositories) on `travis-ci.com`. If you have not signed up on [travis-ci.com](https://www.travis-ci.com) when you want to activate a new repository, please sign up there first. +Current users will keep both their `travis-ci.com` and `travis-ci.org` accounts at first. We recommend users of `travis-ci.org` activate any [new repositories](#New-Repositories) on `travis-ci.com`. If you have not signed up on [travis-ci.com] when you want to activate a new repository, please sign up there first. ## New Repositories -New repositories should be activated on [travis-ci.com](https://www.travis-ci.com) for both open source and private repositories. You will also have the option to subscribe open source projects for more concurrency immediately, rather than needing to contact support first. +New repositories should be activated on [travis-ci.com] for both open source and private repositories. You will also have the option to subscribe open source projects for more concurrency immediately, rather than needing to contact support first. ## Existing Open Source Repositories on travis-ci.org @@ -44,12 +44,19 @@ However, open source repositories will be migrated to travis-ci.com gradually. T Currently, open source repositories that were private in any time in their history may be added to `travis-ci.com`. The option to migrate to `travis-ci.com` for active open source repositories that were always open source will come soon. -Repositories may also be migrated without their build history or build settings (including environment variables) immediately. Please contact support [support@travis-ci.com](mailto:support@travis-ci.com?Subject=Open%20Source%20on%20travis-ci.com%20-%20Repository%20Migration) and include "Repository Migration" somewhere in the subject line, and the name of the repository in your email. +Repositories may also be migrated without their build history or build settings (including environment variables) immediately. -## Existing Private Repositories on travis-ci.com +Please contact support [support@travis-ci.com](mailto:support@travis-ci.com?Subject=Open%20Source%20on%20travis-ci.com%20-%20Repository%20Migration). In your email, please include: +* "Repository Migration" somewhere in the subject line, and +* the repository’s name in your email -There will be no changes to your private repositories -- private projects will continue to run on `travis-ci.com` as before. +## Existing Private Repositories on `travis-ci.com` + +There will be no changes to your private repositories. Private projects will continue to run on `travis-ci.com` as before. ## Contact Support If you have an questions, please email please contact [support@travis-ci.com](mailto:support@travis-ci.com?Subject=Open%20Source%20on%20travis-ci.com). We're looking forward to helping! + + +[travis-ci.com]: https://www.travis-ci.com From 3541fc983225d444f0704dddb293b63815f8d49f Mon Sep 17 00:00:00 2001 From: Nutan Date: Tue, 16 Oct 2018 18:00:31 +0530 Subject: [PATCH 0042/1851] Ionic Cordova Example (#2059) Included example `travis.yml` for Ionic based project for Hybrid mobile application. Uses tagged commit to manage GitHub releases. Signed-off-by: nutannivate --- user/languages/android.md | 1 + 1 file changed, 1 insertion(+) diff --git a/user/languages/android.md b/user/languages/android.md index 56eb2588921..e5f96bce911 100644 --- a/user/languages/android.md +++ b/user/languages/android.md @@ -256,3 +256,4 @@ For Android projects, `env` and `jdk` can be given as arrays to construct a buil - [RxJava in Android Example Project](https://github.com/andrewhr/rxjava-android-example/blob/master/.travis.yml) - [Gradle Example Project](https://github.com/pestrada/android-tdd-playground/blob/master/.travis.yml) - [Maven Example Project](https://github.com/embarkmobile/android-maven-example/blob/master/.travis.yml) +- [Ionic Cordova Example Project](https://github.com/samlsso/Calc/blob/master/.travis.yml) From b93459a9783bb34ead267ed91d2b207d46dd9e93 Mon Sep 17 00:00:00 2001 From: Charlotte Godley Date: Tue, 16 Oct 2018 14:13:22 +0100 Subject: [PATCH 0043/1851] docs: fix the install line to run headless (#1795) Without this bit, the install hangs waiting for user input. --- user/docker.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user/docker.md b/user/docker.md index 527bae17843..bf4ff2a6b48 100644 --- a/user/docker.md +++ b/user/docker.md @@ -209,7 +209,7 @@ before_install: - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" - sudo apt-get update - - sudo apt-get -y install docker-ce + - sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce ``` {: data-file=".travis.yml"} From 2a5a0282bd2a38164d9f55a22ac02bc9e0c68a04 Mon Sep 17 00:00:00 2001 From: Daniel Himmelstein Date: Tue, 16 Oct 2018 09:31:15 -0400 Subject: [PATCH 0044/1851] Limit api_key scope to subset of repositories (#1065) --- user/deployment/releases.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/user/deployment/releases.md b/user/deployment/releases.md index 22307ceb0c1..afad05946cb 100644 --- a/user/deployment/releases.md +++ b/user/deployment/releases.md @@ -78,6 +78,8 @@ deploy: ``` {: data-file=".travis.yml"} +**Warning:** the `public_repo` and `repo` scopes for GitHub oauth tokens grant write access to all of a user's (public) repositories. For security, it's ideal for `api_key` to have write access limited to only respositories where Travis deploys to GitHub releases. The suggested workaround is to create a [machine user](https://developer.github.com/guides/managing-deploy-keys/#machine-users) — a dummy GitHub account that is granted write access on a per repository basis. + ## Authentication with a Username and Password You can also authenticate with your GitHub username and password using the `user` and `password` options. This is not recommended as it allows full access to your GitHub account but is simplest to setup. It is recommended to encrypt your password using `travis encrypt "GITHUB PASSWORD" --add deploy.password`. This example authenticates using a username and password. From 2313425c3468cba6551f3f765ffa6dbc61f1a9ae Mon Sep 17 00:00:00 2001 From: Plaindocs Date: Tue, 16 Oct 2018 16:06:23 +0200 Subject: [PATCH 0045/1851] Whitelist -> safelist (#2065) * Whitelist -> safelist * Not running on GH pages so we no longer need this --- _config.yml | 2 -- slate/source/index.md | 2 +- user/installing-dependencies.md | 16 ++++++++-------- user/migrating-from-legacy.md | 4 ++-- 4 files changed, 11 insertions(+), 13 deletions(-) diff --git a/_config.yml b/_config.yml index 5f4923afebc..64078cb280f 100644 --- a/_config.yml +++ b/_config.yml @@ -13,7 +13,5 @@ kramdown: smart_quotes: lsquo,rsquo,ldquo,rdquo plugins: - jekyll-redirect-from -whitelist: - - jekyll-redirect-from sass: sass_dir: assets/stylesheets diff --git a/slate/source/index.md b/slate/source/index.md index c044fff3aeb..bcba3d445c8 100644 --- a/slate/source/index.md +++ b/slate/source/index.md @@ -391,7 +391,7 @@ Some client libraries will automate this handshake for you. You can also trigger a full OAuth handshake between Travis CI and GitHub by opening `/auth/handshake` in a web browser. The endpoint takes an optional `redirect_uri` query parameter, which takes a URL the web browser will end up on if the handshake is successful. -There is an alternative version of this that will try to run the handshake in a hidden iframe and using `window.postMessage` to hand the token to the website embedding the iframe. **This endpoint will only work for whitelisted websites.** +There is an alternative version of this that will try to run the handshake in a hidden iframe and using `window.postMessage` to hand the token to the website embedding the iframe. **This endpoint will only work for safelisted websites.** # Entities diff --git a/user/installing-dependencies.md b/user/installing-dependencies.md index 9d147428b68..bb03c3bfeee 100644 --- a/user/installing-dependencies.md +++ b/user/installing-dependencies.md @@ -96,7 +96,7 @@ If your requirements goes beyond the normal installation, please use another met To add APT sources, you can use one of the following three types of entries: -1. aliases defined in [source whitelist](https://github.com/travis-ci/apt-source-whitelist) +1. aliases defined in [source safelist](https://github.com/travis-ci/apt-source-safelist) 2. `sourceline` key-value pairs which will be added to `/etc/apt/sources.list` 3. when APT sources require GPG keys, you can specify this with `key_url` pairs in addition to `sourceline`. @@ -174,7 +174,7 @@ To install packages not included in the default [container-based-infrastructure] ### Adding APT Sources -To add APT sources from the [source whitelist](https://github.com/travis-ci/apt-source-whitelist) before your custom build steps, use the `addons.apt.sources` key: +To add APT sources from the [source safelist](https://github.com/travis-ci/apt-source-safelist) before your custom build steps, use the `addons.apt.sources` key: ```yaml addons: @@ -187,7 +187,7 @@ addons: ### Adding APT Packages -To install packages from the [package whitelist](https://github.com/travis-ci/apt-package-whitelist) before your custom build steps, use the `addons.apt.packages` key: +To install packages from the [package safelist](https://github.com/travis-ci/apt-package-safelist) before your custom build steps, use the `addons.apt.packages` key: ```yaml addons: @@ -228,15 +228,15 @@ E: Couldn't find any package by regex 'libcxsparse3.1.2' To install the package, identify APT source and specify it in the addon key of your `.travis.yml`: 1. Search for the pull request that added the package on GitHub. For example, - [searching for "libcxsparse3.1.2" ](https://github.com/travis-ci/apt-package-whitelist/search?q=libcxsparse3.1.2&type=Issues&utf8=%E2%9C%93) - results in [pull request 1194](https://github.com/travis-ci/apt-package-whitelist/pull/1194). + [searching for "libcxsparse3.1.2" ](https://github.com/travis-ci/apt-package-safelist/search?q=libcxsparse3.1.2&type=Issues&utf8=%E2%9C%93) + results in [pull request 1194](https://github.com/travis-ci/apt-package-safelist/pull/1194). -2. Open the pull request, and click the link to the test in the pull request comment. Continuing the example above, [Travis CI Build 80620536 ](https://travis-ci.org/travis-ci/apt-whitelist-checker/builds/80620536). +2. Open the pull request, and click the link to the test in the pull request comment. Continuing the example above, [Travis CI Build 80620536 ](https://travis-ci.org/travis-ci/apt-safelist-checker/builds/80620536). 3. Search the build log for the phrase "Fetching source package for …" and expand the section. 4. Match that source against the `alias` name shown in - [the source list](https://github.com/travis-ci/apt-source-whitelist/blob/master/ubuntu.json). + [the source list](https://github.com/travis-ci/apt-source-safelist/blob/master/ubuntu.json). In our example, the source alias is "lucid": @@ -250,7 +250,7 @@ addons: ``` {: data-file=".travis.yml"} -> If you require additional package sources, please use `sudo: required` in your `.travis.yml` file and install them manually. Unfortunately, we are unable to process [APT sources requests](https://github.com/travis-ci/apt-source-whitelist) at this time. +> If you require additional package sources, please use `sudo: required` in your `.travis.yml` file and install them manually. Unfortunately, we are unable to process [APT sources requests](https://github.com/travis-ci/apt-source-safelist) at this time. ## Installing Packages on OS X diff --git a/user/migrating-from-legacy.md b/user/migrating-from-legacy.md index 6888570619a..07ffb37c3d1 100644 --- a/user/migrating-from-legacy.md +++ b/user/migrating-from-legacy.md @@ -75,7 +75,7 @@ addons: {: data-file=".travis.yml"} The aliases for the allowed sources (such as `deadsnakes` above) are managed in a -[whitelist](https://github.com/travis-ci/apt-source-whitelist). If you need additional sources you must use `sudo: required`. +[safelist](https://github.com/travis-ci/apt-source-safelist). If you need additional sources you must use `sudo: required`. ### Adding APT Packages @@ -90,7 +90,7 @@ addons: ``` {: data-file=".travis.yml"} -The allowed packages are managed in a [whitelist](https://github.com/travis-ci/apt-package-whitelist), and any attempts to install disallowed packages will result in a log message detailing the package approval process. +The allowed packages are managed in a [safelist](https://github.com/travis-ci/apt-package-safelist), and any attempts to install disallowed packages will result in a log message detailing the package approval process. ## How Do I Install Custom Software? From 2f1ce51eecae3b4ea1d1624c0d82fda21c844c88 Mon Sep 17 00:00:00 2001 From: Art Date: Tue, 16 Oct 2018 20:52:50 +0100 Subject: [PATCH 0046/1851] fix: Typo in user/reference/windows.md --- user/reference/windows.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user/reference/windows.md b/user/reference/windows.md index aefabc593cf..3c9e14f7181 100644 --- a/user/reference/windows.md +++ b/user/reference/windows.md @@ -74,4 +74,4 @@ VMs running Windows use the default file system, NTFS. - wget - yarn -Latest list of pre-installed packages can be find [here](https://github.com/travis-ci/packer-templates/blob/master/packer-assets/windows-server-2016-ci-onion-packages.txt). +Latest list of pre-installed packages can be found [here](https://github.com/travis-ci/packer-templates/blob/master/packer-assets/windows-server-2016-ci-onion-packages.txt). From 6ef231fc7ea9ff0fdf4982cf9e3899ae5ab5f370 Mon Sep 17 00:00:00 2001 From: Dominic Jodoin Date: Thu, 18 Oct 2018 16:32:13 -0400 Subject: [PATCH 0047/1851] Add notes about oraclejdk10 eol (#2068) --- user/deployment/testfairy.md | 2 +- user/languages/java.md | 8 +++++--- user/reference/trusty.md | 1 + 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/user/deployment/testfairy.md b/user/deployment/testfairy.md index 57878c64541..ca62e0ee67d 100644 --- a/user/deployment/testfairy.md +++ b/user/deployment/testfairy.md @@ -84,7 +84,7 @@ deploy: - **screenshot-interval**: Seconds between video frames. Default "1" seconds. - **record-on-background**: If true, data will be collected while the app on background. - **icon-watermark**: Add a small watermark to app icon. Default is "false". -- **metrics**: Comma-separated list of metrics to record. View list on [TestFairy Docs](http://docs.testfairy.com/Upload_API.html). +- **metrics**: Comma-separated list of metrics to record. View list on [TestFairy Docs](https://docs.testfairy.com/API/Upload_API.html). - **advanced-options**: Additional settings (eg shake,anonymous). For example: diff --git a/user/languages/java.md b/user/languages/java.md index f5410701d3b..ee052c299c8 100644 --- a/user/languages/java.md +++ b/user/languages/java.md @@ -224,15 +224,17 @@ addons: ## Using Java 10 and later -OracleJDK 10 and later are supported on Linux, and +> Take note that `oraclejdk10` is EOL since October 2018 and as such it's not supported anymore on Travis CI. +> See [https://www.oracle.com/technetwork/java/javase/eol-135779.html](https://www.oracle.com/technetwork/java/javase/eol-135779.html). + +OracleJDK 11 and later are supported on Linux, and OpenJDK 10 and later are supported on Linux and macOS using [`install-jdk.sh`](https://github.com/sormuras/bach#install-jdksh). ```yaml jdk: - oraclejdk8 - - oraclejdk10 - - oraclejdk-ea + - oraclejdk11 - openjdk10 - openjdk11 ``` diff --git a/user/reference/trusty.md b/user/reference/trusty.md index 267d33415c3..d5db22d741e 100644 --- a/user/reference/trusty.md +++ b/user/reference/trusty.md @@ -209,6 +209,7 @@ by `gimme`. - Oracle JDK 8 (`oraclejdk8`). Default. - Oracle JDK 9 (`oraclejdk9`) - Oracle JDK 7 is not provided because it reached End of Life in April 2015. + - Oracle JDK 10 is not provided because it reached End of Life in October 2018. - [jdk_switcher](https://github.com/michaelklishin/jdk_switcher#what-jdk-switcher-is) is installed if you need another JDK version. From ad9a6c7ab5d88e87fec6a56d3f031a1da78d318a Mon Sep 17 00:00:00 2001 From: Dominic Jodoin Date: Fri, 19 Oct 2018 09:53:35 -0400 Subject: [PATCH 0048/1851] Typo: Beastalk => Beanstalk --- user/deployment/elasticbeanstalk.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/user/deployment/elasticbeanstalk.md b/user/deployment/elasticbeanstalk.md index 0513fca02fa..d8f7f606335 100644 --- a/user/deployment/elasticbeanstalk.md +++ b/user/deployment/elasticbeanstalk.md @@ -10,7 +10,7 @@ Travis CI can automatically deploy your application to [Elastic Beanstalk](https://aws.amazon.com/documentation/elastic-beanstalk/) after a successful build. -To deploy to AWS Elastic Beastalk add the following to your `.travis.yml`: +To deploy to AWS Elastic Beanstalk add the following to your `.travis.yml`: * `access-key-id`: [Encrypted](/user/encryption-keys#Usage) AWS Access Key ID, obtained from your [AWS Console](https://console.aws.amazon.com/iam/home?#security_credential). * `secret-access-key`: [Encrypted](/user/encryption-keys#Usage) AWS Secret Key, obtained from your [AWS Console](https://console.aws.amazon.com/iam/home?#security_credential). From 6b8eaa4b4139698ee45a6089b28260fdf1d451c4 Mon Sep 17 00:00:00 2001 From: Aidan Fitzgerald Date: Sat, 20 Oct 2018 11:42:43 -0400 Subject: [PATCH 0049/1851] Fix broken links Capitalization of fragment URLs has changed --- user/pull-requests.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/user/pull-requests.md b/user/pull-requests.md index 1a0ace3c6ed..5a52397de6b 100644 --- a/user/pull-requests.md +++ b/user/pull-requests.md @@ -75,5 +75,5 @@ If you see two build status icons on your GitHub pull request, it means there is ## See Also -* [Building only the latest commit](/user/customizing-the-build/#Building-only-the-latest-commit) -* [Building specific branches](/user/customizing-the-build/#Building-Specific-Branches) +* [Building only the latest commit](/user/customizing-the-build/#building-only-the-latest-commit) +* [Building specific branches](/user/customizing-the-build/#building-specific-branches) From 20af90e98fc67af65074667256be6d85f0562dc8 Mon Sep 17 00:00:00 2001 From: teor Date: Mon, 22 Oct 2018 10:36:54 +1000 Subject: [PATCH 0050/1851] osx: replace manual instructions with link to Homebrew addon Summarise the important information about the Homebrew addon in the OS X page, and link to the Homebrew addon reference. --- user/reference/osx.md | 58 +++---------------------------------------- 1 file changed, 3 insertions(+), 55 deletions(-) diff --git a/user/reference/osx.md b/user/reference/osx.md index e56258816d7..4b7b6348041 100644 --- a/user/reference/osx.md +++ b/user/reference/osx.md @@ -59,63 +59,11 @@ Travis CI uses OS X 10.13 and Xcode 9.4.1 by default . You can use another versi Homebrew is installed and updated every time the virtual machines are updated. -> To speed up your build, try installing your packages *without* running `brew update` first, to see if the Homebrew database on the build image already has what you need. +> The [Travis Homebrew addon](/user/installing-dependencies/#installing-packages-on-os-x) is the simplest, fastest and most reliable way to install dependencies. -### A note on upgrading packages +The Homebrew addon correctly handles up-to-date, outdated, and missing packages. Manual Homebrew dependency scripts are error-prone, and we recommend against using them. -When upgrading a package with `brew upgrade`, the command will fail if the most up-to-date version of the package is already installed (so an upgrade didn't occur). - -Depending on how you are upgrading the package, it could cause the build to error: - -``` -$ brew upgrade xctool -Error: xctool-0.1.16 already installed -The command "brew upgrade xctool" failed and exited with 1 during . - -Your build has been stopped. -``` - -Or it can result in the command not found: - -``` -xctool: command not found -``` - -This is intended behaviour from Homebrew's side, but you can get around it by using [`brew bundle`](https://github.com/Homebrew/homebrew-bundle) or by first checking if the command needs an upgrade with `brew outdated` - -#### `brew bundle` - -[`brew bundle`](https://github.com/Homebrew/homebrew-bundle) uses a `Brewfile`, similar to to a Ruby `Gemfile` to install multiple dependencies. By creating a `Brewfile`: - -``` -brew 'xctool' -``` -{: data-file="Brewfile"} - -You can then update and/or install all of the dependencies with the following command (which will not error if the package is already installed and up to date): -```yaml -before_install: - - brew update && brew bundle -``` -{: data-file=".travis.yml"} - -#### `brew outdated` - -```yaml -before_install: - - brew update - - brew outdated || brew upgrade -``` -{: data-file=".travis.yml"} - -For example, if you always want the latest version of xctool, you can run this: - -```yaml -before_install: - - brew update - - brew outdated xctool || brew upgrade xctool -``` -{: data-file=".travis.yml"} +The Homebrew addon uses the Homebrew database on the build image by default, but can be configured to run `brew update` if needed. ## File System From dd5ec635f8e772e85c80f97805ecdc73d8299561 Mon Sep 17 00:00:00 2001 From: jamrok <3874968+jamrok@users.noreply.github.com> Date: Mon, 22 Oct 2018 04:26:06 -0500 Subject: [PATCH 0051/1851] Fix broken links in Enterprise docs (#2073) --- user/enterprise/build-images.md | 2 +- user/enterprise/high-availability.md | 10 +++++----- user/enterprise/install-on-xenial.md | 4 ++-- user/enterprise/installation.md | 6 +++--- user/enterprise/operations-manual.md | 8 ++++---- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/user/enterprise/build-images.md b/user/enterprise/build-images.md index 1403e3c3a9d..1272ccb2dff 100644 --- a/user/enterprise/build-images.md +++ b/user/enterprise/build-images.md @@ -86,7 +86,7 @@ With this option we tell `travis-worker` to make the host's Docker socket availa #### Restart travis-worker -To restart travis-worker, you can find the instructions [here](/user/enterprise/worker-cli-commands/#Stopping-and-Starting-the-Worker). +To restart travis-worker, you can find the instructions [here](/user/enterprise/worker-cli-commands/#stopping-and-starting-the-worker). ### Updates to your .travis.yml files diff --git a/user/enterprise/high-availability.md b/user/enterprise/high-availability.md index fd4e0c71a31..70509dc1ef2 100644 --- a/user/enterprise/high-availability.md +++ b/user/enterprise/high-availability.md @@ -10,11 +10,11 @@ If you're interested, or might be interested, in running Travis CI Enterprise in ## Overview of Installation -The platform installation is similar to the standard [Enterprise installation](/user/enterprise/installation#Setting-up-the-Travis-CI-Enterprise-Platform), and the [worker installation](#Installing-the-Worker-in-High-Availability-Mode) is identical. However, there are some additional [system prerequisites](/user/enterprise/prerequisites/#High-Availability-Mode), which mean that to install in HA mode, you will need the following: +The platform installation is similar to the standard [Enterprise installation](/user/enterprise/installation#setting-up-the-travis-ci-enterprise-platform), and the [worker installation](#Installing-the-Worker-in-High-Availability-Mode) is identical. However, there are some additional [system prerequisites](/user/enterprise/prerequisites/#high-availability-mode), which mean that to install in HA mode, you will need the following: * 3+ **16 gigs of RAM, 8 CPUs, 40GB HDD**, i.e. `c4.2xlarge` with a 40GB HDD. - 2+ for the VMs running the Platform, and 1+ for the VMs running the Worker * [Redis](https://redis.io/), [RabbitMQ](https://www.rabbitmq.com/), and [Postgres](https://www.postgresql.org/) instances - * [GitHub OAuth app](/user/enterprise/prerequisites#OAuth-App), [trial license](/user/enterprise/prerequisites#License) -- enabled for HA + * [GitHub OAuth app](/user/enterprise/prerequisites#oauth-app), [trial license](/user/enterprise/prerequisites#license) -- enabled for HA * Internet connection -- note, this installation is _not_ airgapped by default. Let [us know](mailto:enterprise@travis-ci.com) if you are interested in one. ## Installing the Platform in High Availability Mode @@ -22,7 +22,7 @@ and [Postgres](https://www.postgresql.org/) instances HA is configured entirely on the Enterprise platform instance, but installing an HA platform is quite similar to installing a standard platform. The steps for HA are as follows. 1. Contact [enterprise@travis-ci.com](mailto:enterprise@travis-ci.com?subject=HA%20Installation) to have your Enterprise license configured for HA mode. -1. Setup your [platform instance per the standard installation steps](/user/enterprise/installation#Setting-up-the-Travis-CI-Enterprise-Platform) +1. Setup your [platform instance per the standard installation steps](/user/enterprise/installation#setting-up-the-travis-ci-enterprise-platform) 1. Sign into your Admin Dashboard (at `your-domain.tld:8800`) 1. Go to "Settings" and click "Enable HA" 1. Paste in the urls where you have [Postgres](https://www.postgresql.org/), [Redis](https://redis.io/), and [RabbitMQ](https://www.rabbitmq.com/) hosted. The connection strings should be in the format of: @@ -38,13 +38,13 @@ Once your first platform instance is fulling configured, you should be able to s ### Adding More Platform Installations -We recommend at least two Platform containers for HA mode, and you can install more Enterprise containers in the same way you [installed](/user/enterprise/installation#Setting-up-the-Travis-CI-Enterprise-Platform) the first. +We recommend at least two Platform containers for HA mode, and you can install more Enterprise containers in the same way you [installed](/user/enterprise/installation#setting-up-the-travis-ci-enterprise-platform) the first. Once your second platform is installed, it will also need its HA settings configured. Go to the Admin Dashboard for your new platform container at `secondIP:8800` or `second-platform-public-dns.tld:8800` to complete this the same way as [the first platform installation](#Installing-the-PLatform-in-High-Availability-Mode) ## Installing the Worker in High Availability Mode -The worker installation works the same as for non-HA installations, as does the build environment compatibility defaults per Enterprise version. Check out the [docs for which version of Enterprise handle different OS's](/user/enterprise/installation#Install-Travis-CI-Worker) and other information regarding installation. You will need to retrieve your RabbitMQ password from your own installation, rather than from the Travis CI Enterprise Admin Dashboard. +The worker installation works the same as for non-HA installations, as does the build environment compatibility defaults per Enterprise version. Check out the [docs for which version of Enterprise handle different OS's](/user/enterprise/installation#install-travis-ci-worker) and other information regarding installation. You will need to retrieve your RabbitMQ password from your own installation, rather than from the Travis CI Enterprise Admin Dashboard. ## Contact Enterprise Support diff --git a/user/enterprise/install-on-xenial.md b/user/enterprise/install-on-xenial.md index 5ab840febad..965a34d93a5 100644 --- a/user/enterprise/install-on-xenial.md +++ b/user/enterprise/install-on-xenial.md @@ -12,7 +12,7 @@ This guide walks you through the installation of Travis CI Enterprise on Ubuntu ## Install Platform machine To install the platform machine the steps are exactly the same as for Ubuntu 14.04. -Please follow the instructions for the [installation here](/user/enterprise/installation#Setting-up-the-Travis-CI-Enterprise-Platform). +Please follow the instructions for the [installation here](/user/enterprise/installation#setting-up-the-travis-ci-enterprise-platform). ## Install worker machine @@ -26,7 +26,7 @@ Please follow the instructions for the [installation here](/user/enterprise/inst $ sudo bash /tmp/installer.sh --travis_enterprise_host="" --travis_enterprise_security_token="" ``` -This installs all necesary components, such as Docker and `travis-worker`. It also downloads Trusty build images by default. If this is the first time you're setting up a worker machine with Trusty build images, please enable [this feature flag](/user/enterprise/trusty#Enabling-the-Trusty-Beta-Feature-Flag) on your platform machine. +This installs all necesary components, such as Docker and `travis-worker`. It also downloads Trusty build images by default. If this is the first time you're setting up a worker machine with Trusty build images, please enable [this feature flag](/user/enterprise/trusty#enabling-the-trusty-beta-feature-flag) on your platform machine. If you need to use Precise build images, please pass in the `--travis_legacy_build_images=true` flag during installation: diff --git a/user/enterprise/installation.md b/user/enterprise/installation.md index 171d98da2cb..344290a7274 100644 --- a/user/enterprise/installation.md +++ b/user/enterprise/installation.md @@ -10,9 +10,9 @@ recommends steps geared toward this provider, but you can certainly modify it to use your provider of choice. **Before getting started:** please check our [system prerequisites](/user/enterprise/prerequisites/) for -[expected system specs](/user/enterprise/prerequisites/#Host-Machine-Specs), -notes on setting up the required [OAuth app](/user/enterprise/prerequisites/#OAuth-App), -and information on obtaining a [license](/user/enterprise/prerequisites/#License). +[expected system specs](/user/enterprise/prerequisites/#host-machine-specs), +notes on setting up the required [OAuth app](/user/enterprise/prerequisites/#oauth-app), +and information on obtaining a [license](/user/enterprise/prerequisites/#license). diff --git a/user/enterprise/operations-manual.md b/user/enterprise/operations-manual.md index ee78fee604f..44a9172635a 100644 --- a/user/enterprise/operations-manual.md +++ b/user/enterprise/operations-manual.md @@ -84,11 +84,11 @@ $ sudo restart travis-worker A source for the problem could be that the worker machine is not able to communicate with the platform machine. -Here we're distinguishing between an AWS EC2 installation and an installation running on other hardware. For the former, security groups need to be configured per machine. To do so, please follow our installation instructions [here](/user/enterprise/installation/#Create-a-Travis-CI-Platform-Security-Group). If you're not using AWS EC2, please make sure that the ports listed [in the docs](/user/enterprise/installation/#Create-a-Travis-CI-Platform-Security-Group) are open in your firewall. +Here we're distinguishing between an AWS EC2 installation and an installation running on other hardware. For the former, security groups need to be configured per machine. To do so, please follow our installation instructions [here](/user/enterprise/installation/#create-a-travis-ci-platform-security-group). If you're not using AWS EC2, please make sure that the ports listed [in the docs](/user/enterprise/installation/#create-a-travis-ci-platform-security-group) are open in your firewall. #### Docker Versions Mismatched -This issue sometimes occurs after maintenance on workers installed before November 2017 or systems running a `docker version` before `17.06.2-ce`. When this happens, the `/var/log/upstart/travis-worker.log` file contains a line: `Error response from daemon:client and server don't have same version`. For this issue, we recommend [re-installing worker from scratch](/user/enterprise/installation/#Install-Travis-CI-Enterprise-Worker) on a fresh instance. Please note: the default build environment images will be pulled and you may need to apply customizations again as well. +This issue sometimes occurs after maintenance on workers installed before November 2017 or systems running a `docker version` before `17.06.2-ce`. When this happens, the `/var/log/upstart/travis-worker.log` file contains a line: `Error response from daemon:client and server don't have same version`. For this issue, we recommend [re-installing worker from scratch](/user/enterprise/installation/#install-travis-ci-enterprise-worker) on a fresh instance. Please note: the default build environment images will be pulled and you may need to apply customizations again as well. If none of the steps above lead to results for you, please follow the steps in the [Contact Enterprise Support](#Contact-Enterprise-Support) section below to move forward. @@ -107,7 +107,7 @@ After a fresh installation or configuration change the Travis CI Enterprise cont #### GitHub OAuth app configuration -The above mentioned error can be caused by a configuration mismatch in [the GitHub OAuth Application](https://docs.travis-ci.com/user/enterprise/prerequisites/#OAuth-App). Please check that _both_ website and callback URL contain the Travis CI Enterprise's hostname. If you have discovered a mismatch here, please restart the Travis container from within the admin dashboard. +The above mentioned error can be caused by a configuration mismatch in [the GitHub OAuth Application](/user/enterprise/prerequisites/#oauth-app). Please check that _both_ website and callback URL contain the Travis CI Enterprise's hostname. If you have discovered a mismatch here, please restart the Travis container from within the admin dashboard. #### Hostname does not match license's hostname @@ -141,7 +141,7 @@ This can have various causes, including an automatic nvm update or a caching err ### Strategy -This error is most likely caused by a self-signed certificate. During the build, the worker container attempts to fetch different files from the platform machine. If the server got provisioned with a self-signed certificate, curl doesn't trust this certificate and therefore fails. While we're working on resolving this in a permanent and sufficient way, currently the only solution is to install a certificate issued by a trusted Certificate Authority (CA). This can be a free Let's Encrypt certificate or any other trusted CA of your choice. We have a section in our [Platform Administration Tips](/user/enterprise/platform-tips/#Use-a-Lets-Encrypt-SSL-Certificate) page that walks you through the installation process using Let's Encrypt as an example. +This error is most likely caused by a self-signed certificate. During the build, the worker container attempts to fetch different files from the platform machine. If the server got provisioned with a self-signed certificate, curl doesn't trust this certificate and therefore fails. While we're working on resolving this in a permanent and sufficient way, currently the only solution is to install a certificate issued by a trusted Certificate Authority (CA). This can be a free Let's Encrypt certificate or any other trusted CA of your choice. We have a section in our [Platform Administration Tips](/user/enterprise/platform-tips/#use-a-lets-encrypt-ssl-certificate) page that walks you through the installation process using Let's Encrypt as an example. ## User accounts are stuck in syncing state From b4e060909c15a0064e52a73bc6842602bea2c1ef Mon Sep 17 00:00:00 2001 From: jamrok <3874968+jamrok@users.noreply.github.com> Date: Tue, 23 Oct 2018 03:54:15 -0500 Subject: [PATCH 0052/1851] Fix broken links in various docs (#2076) --- user/addons.md | 6 +++--- user/best-practices-security.md | 2 +- user/browserstack.md | 6 +++--- user/build-environment-updates/2017-08-17.md | 2 +- user/build-environment-updates/2017-12-12.md | 2 +- user/build-feeds.md | 2 +- user/build-stages.md | 6 +++--- user/caching.md | 4 ++-- user/chrome.md | 4 ++-- user/common-build-problems.md | 12 ++++++------ user/conditional-builds-stages-jobs.md | 2 +- user/cron-jobs.md | 2 +- user/database-setup.md | 4 ++-- user/docker.md | 6 +++--- user/encrypting-files.md | 2 +- user/encryption-keys.md | 4 ++-- user/gui-and-headless-browsers.md | 2 +- user/installing-dependencies.md | 2 +- user/integration/platformio.md | 2 +- user/ip-addresses.md | 2 +- user/jwt.md | 2 +- user/migrating-from-legacy.md | 2 +- user/multi-os.md | 4 ++-- user/reference/precise.md | 2 +- user/reference/trusty.md | 2 +- user/sonarcloud.md | 2 +- user/speeding-up-the-build.md | 6 +++--- user/tutorial.md | 4 ++-- user/web-ui.md | 4 ++-- 29 files changed, 51 insertions(+), 51 deletions(-) diff --git a/user/addons.md b/user/addons.md index ba2be2128cb..037b9917830 100644 --- a/user/addons.md +++ b/user/addons.md @@ -9,7 +9,7 @@ moved: - [Sauce Connect](/user/sauce-connect/) - [Custom Host Names](/user/hosts/) -- [MariaDB](/user/database-setup/#MariaDB) -- [PostgreSQL](/user/database-setup/#PostgreSQL) -- [RethinkDB](/user/database-setup/#RethinkDB) +- [MariaDB](/user/database-setup/#mariadb) +- [PostgreSQL](/user/database-setup/#postgresql) +- [RethinkDB](/user/database-setup/#rethinkdb) - [Firefox](/user/firefox/) diff --git a/user/best-practices-security.md b/user/best-practices-security.md index 0a778d9b823..fc861f15d22 100644 --- a/user/best-practices-security.md +++ b/user/best-practices-security.md @@ -5,7 +5,7 @@ layout: en --- ## Steps Travis CI takes to secure your data -Travis CI obfuscates secure environment variables and tokens displayed in the UI. Our [documentation about encryption keys](https://docs.travis-ci.com/user/encryption-keys/) outlines the build configuration we require to ensure this, however, once a VM is booted and tests are running, we have less control over what information utilities or add-ons are able to print to the VM’s standard output. +Travis CI obfuscates secure environment variables and tokens displayed in the UI. Our [documentation about encryption keys](/user/encryption-keys/) outlines the build configuration we require to ensure this, however, once a VM is booted and tests are running, we have less control over what information utilities or add-ons are able to print to the VM’s standard output. To prevent leaks made by these components, we automatically filter secure environment variables and tokens that are longer than three characters at runtime, effectively removing them from the build log, displaying the string `[secure]` instead. diff --git a/user/browserstack.md b/user/browserstack.md index bea002820b1..1b7be4b5f0d 100644 --- a/user/browserstack.md +++ b/user/browserstack.md @@ -23,11 +23,11 @@ URLs with HTTPS. [account-settings]: https://www.browserstack.com/accounts/settings -[encryption-keys]: http://docs.travis-ci.com/user/encryption-keys/ +[encryption-keys]: https://docs.travis-ci.com/user/encryption-keys/ [browserstack-ruby-bindings]: https://www.browserstack.com/automate/ruby -[travis-matrix-builds]: https://docs.travis-ci.com/user/customizing-the-build/#Build-Matrix +[travis-matrix-builds]: https://docs.travis-ci.com/user/customizing-the-build/#build-matrix ## Setting up BrowserStack @@ -38,7 +38,7 @@ file of your project. Choose whether you want to store your access key as plain text or in a secure/encrypted form. For open source projects we recommend storing the access key in a secure form so that pull requests cannot use the keys stored in your `.travis.yml`. -For more information see the [pull requests page](/user/pull-requests/#Pull-Requests-and-Security-Restrictions). +For more information see the [pull requests page](/user/pull-requests/#pull-requests-and-security-restrictions). ### Encrypted Access Key diff --git a/user/build-environment-updates/2017-08-17.md b/user/build-environment-updates/2017-08-17.md index e6e5dcd2603..a0c5c1e5d36 100644 --- a/user/build-environment-updates/2017-08-17.md +++ b/user/build-environment-updates/2017-08-17.md @@ -16,7 +16,7 @@ date: 2017-08-17 - As previously communicated, Xcode beta versions 6.1, 6.2, and 6.3 are being deprecated. Projects configured with values of `beta-xcode6.1`, `beta-xcode6.2`, or `beta-xcode6.3` -for the `osx_image` tag will now be run on our [default OS X image](https://docs.travis-ci.com/user/reference/osx/#OS-X-Version). +for the `osx_image` tag will now be run on our [default OS X image](/user/reference/osx/#os-x-version). - Users will be able to run on Xcode 6.4 by specifying `osx_image: xcode-6.4` in their project configuration. diff --git a/user/build-environment-updates/2017-12-12.md b/user/build-environment-updates/2017-12-12.md index c2fe3ccc751..64b91b5b849 100644 --- a/user/build-environment-updates/2017-12-12.md +++ b/user/build-environment-updates/2017-12-12.md @@ -24,7 +24,7 @@ container-based execution environments. - cmake `3.9.2` - docker `17.09.0-ce` - docker-compose `1.17.1` - - firefox `56.0.2` (now supports [headless mode](https://docs.travis-ci.com/user/gui-and-headless-browsers/#Using-the-Firefox-addon-in-headless-mode)) + - firefox `56.0.2` (now supports [headless mode](/user/gui-and-headless-browsers/#using-the-firefox-addon-in-headless-mode)) - git `2.15.1` - google-chrome `62.0.3202` - google-cloud-sdk `176.0.0` diff --git a/user/build-feeds.md b/user/build-feeds.md index c2480f1a8b7..612352fe127 100644 --- a/user/build-feeds.md +++ b/user/build-feeds.md @@ -34,7 +34,7 @@ the feed. The API endpoint is different too: `https://api.travis-ci.com` 1. The token is the same as is used to fetch a build status image, which can be found on the repository page. See the related - [documentation](/user/cc-menu/#Using-the-CC-feed-with-repositories) + [documentation](/user/cc-menu/#using-the-cc-feed-with-repositories) for more details on how to access the token. 2. Once you have the token, append it as the `token` parameter to the URL: diff --git a/user/build-stages.md b/user/build-stages.md index 07b2d454266..4c40439f60b 100644 --- a/user/build-stages.md +++ b/user/build-stages.md @@ -15,7 +15,7 @@ In the simplest and most common use case, you can now make one job run _only_ if several other, parallel jobs have completed successfully. Let’s say you want to test a library like a Ruby gem or an npm package against -various runtime (Ruby or Node.js) versions in [parallel](/user/customizing-the-build#Build-Matrix). +various runtime (Ruby or Node.js) versions in [parallel](/user/customizing-the-build#build-matrix). And you want to release your gem or package **only** if all tests have passed and completed successfully. Build stages make this possible. @@ -118,7 +118,7 @@ jobs: ## Build Stages and Build Matrix Expansion -[Matrix expansion](/user/customizing-the-build/#Build-Matrix) +[Matrix expansion](/user/customizing-the-build/#build-matrix) means that certain top level configuration keys expand into a matrix of jobs. For example: @@ -191,7 +191,7 @@ jobs: {: data-file=".travis.yml"} Travis CI does not set or overwrite any of your scripts, and most languages -have a [default test script](/user/languages/ruby/#Default-Build-Script) +have a [default test script](/user/languages/ruby/#default-build-script) defined. So in many use cases you might want to overwrite the `script` step by specifying the keyword `skip` or `ignore`, in other cases you might want to overwrite other steps, such as the `install` step that runs by default on diff --git a/user/caching.md b/user/caching.md index 4d316b44d3c..a3ef75c4dea 100644 --- a/user/caching.md +++ b/user/caching.md @@ -54,7 +54,7 @@ Whenever you update your bundle, Travis CI will also update the cache. Travis CI tries its best at determining the path bundler uses for storing dependencies. -If you have [custom Bundler arguments](/user/languages/ruby/#Custom-Bundler-arguments-and-Gemfile-locations), and these include the `--path` option, Travis CI will use that path. If `--path` is missing but `--deployment` is present, it will use `vendor/bundle`. +If you have [custom Bundler arguments](/user/languages/ruby/#custom-bundler-arguments-and-gemfile-locations), and these include the `--path` option, Travis CI will use that path. If `--path` is missing but `--deployment` is present, it will use `vendor/bundle`. Otherwise it will automatically add the `--path` option. In this case it will either use the value of the environment variable `BUNDLE_PATH` or, if it is missing, `vendor/bundle`. @@ -391,7 +391,7 @@ cache: ## Caches and build matrices -When you have multiple jobs in a [build matrix](/user/customizing-the-build/#Build-Matrix), +When you have multiple jobs in a [build matrix](/user/customizing-the-build/#build-matrix), some characteristics of each job are used to identify the cache each of the jobs should use. diff --git a/user/chrome.md b/user/chrome.md index 1657bb941e6..e655e2f4ccd 100644 --- a/user/chrome.md +++ b/user/chrome.md @@ -19,12 +19,12 @@ addons: ## Headless mode -You can use Google Chrome in [headless mode](/user/gui-and-headless-browsers/#Using-the-Chrome-addon-in-the-headless-mode). +You can use Google Chrome in [headless mode](/user/gui-and-headless-browsers/#using-the-chrome-addon-in-the-headless-mode). ## Sandboxing For security reasons, Google Chrome is unable to provide sandboxing when it is running in the -[container-based environment](https://docs.travis-ci.com/user/reference/overview/#Virtualization-environments). +[container-based environment](/user/reference/overview/#virtualization-environments). In that case, you may see an error message like this: diff --git a/user/common-build-problems.md b/user/common-build-problems.md index b01c40b86ac..7086081f242 100644 --- a/user/common-build-problems.md +++ b/user/common-build-problems.md @@ -64,7 +64,7 @@ One possible cause for builds failing unexpectedly can be calling `set -e` (also Note that using `set -e` in external scripts does not cause this problem. -See also [Complex Build Steps](/user/customizing-the-build/#Implementing-Complex-Build-Steps). +See also [Complex Build Steps](/user/customizing-the-build/#implementing-complex-build-steps). ## Segmentation faults from the language interpreter (Ruby, Python, PHP, Node.js, etc.) @@ -221,7 +221,7 @@ The following lines in your build log possibly indicate an occurence of this iss ▸ Signing /Users/travis/Library/Developer/Xcode/DerivedData/PresenterKit-ggzwtlifkopsnbffbqrmtydtmafv/Build/Intermediates/CodeCoverage/Products/Debug-iphonesimulator/project.xctest No output has been received in the last 10m0s, this potentially indicates a stalled build or something wrong with the build itself. -Check the details on how to adjust your build configuration on: https://docs.travis-ci.com/user/common-build-problems/#Build-times-out-because-no-output-was-received +Check the details on how to adjust your build configuration on: https://docs.travis-ci.com/user/common-build-problems/#build-times-out-because-no-output-was-received The build has been terminated ``` @@ -232,7 +232,7 @@ The build has been terminated ▸ Running script '[CP] Embed Pods Frameworks' No output has been received in the last 10m0s, this potentially indicates a stalled build or something wrong with the build itself. -Check the details on how to adjust your build configuration on: https://docs.travis-ci.com/user/common-build-problems/#Build-times-out-because-no-output-was-received +Check the details on how to adjust your build configuration on: https://docs.travis-ci.com/user/common-build-problems/#build-times-out-because-no-output-was-received The build has been terminated ``` @@ -633,16 +633,16 @@ Whenever your build has been processed you'll see the message: **"Build created If a build hasn't been triggered for your commit, these are the possible build request messages: - **"Could not authorize build request"**, usually means that the account's subscription expired or that it ran out of trial builds. -- **"Build skipped via commit message"**, this commit contains [the skip command](/user/customizing-the-build/#Skipping-a-build). +- **"Build skipped via commit message"**, this commit contains [the skip command](/user/customizing-the-build/#skipping-a-build). - **"GitHub payload is missing a merge commit"**, please confirm your pull request is open and mergeable. -- **"Branch excluded per configuration"** or **"Branch not included per configuration"**, please make sure your branch is not [explicitly excluded](/user/customizing-the-build/#Safelisting-or-blocklisting-branches) or [not included](/user/customizing-the-build/#Safelisting-or-blocklisting-branches) in your `.travis.yml` file. +- **"Branch excluded per configuration"** or **"Branch not included per configuration"**, please make sure your branch is not [explicitly excluded](/user/customizing-the-build/#safelisting-or-blocklisting-branches) or [not included](/user/customizing-the-build/#safelisting-or-blocklisting-branches) in your `.travis.yml` file. - **Build type disabled via repository settings**, please make sure your Push and Pull Request builds are still active. > Please note that Travis CI does not receive a Webhook event when more than three commits are tagged. So if you do `git push --tags`, and more than three tags that are present locally, are not known on GitHub, Travis will not be told about any of those events, and the tagged commits will not be built. ## I'm running out of disk space in my build -Approximate available disk space is listed in the [build environment overview](/user/reference/overview/#Virtualisation-Environment-vs-Operating-System). +Approximate available disk space is listed in the [build environment overview](/user/reference/overview/#virtualisation-environment-vs-operating-system). The best way to find out what is available on your specific image is to run `df -h` as part of your build script. If you need a bit more space in your Ubuntu builds, we recommend using `sudo: required` *and* `language: minimal`, which will route you to a base image with less tools and languages preinstalled. This image has approximately ~24GB of free space. diff --git a/user/conditional-builds-stages-jobs.md b/user/conditional-builds-stages-jobs.md index f5c641fefb2..81fcc5504cf 100644 --- a/user/conditional-builds-stages-jobs.md +++ b/user/conditional-builds-stages-jobs.md @@ -43,7 +43,7 @@ jobs: env: FOO=foo ``` -Jobs need to be listed explicitly, i.e., using `jobs.include` (or its alias `matrix.include`), in order to specify conditions for them. Jobs created via [matrix expansion](/user/customizing-the-build/#Build-Matrix) currently cannot have conditions. +Jobs need to be listed explicitly, i.e., using `jobs.include` (or its alias `matrix.include`), in order to specify conditions for them. Jobs created via [matrix expansion](/user/customizing-the-build/#build-matrix) currently cannot have conditions. Jobs that do not match the condition will be skipped silently. diff --git a/user/cron-jobs.md b/user/cron-jobs.md index bb477842cd4..2e578e6ac23 100644 --- a/user/cron-jobs.md +++ b/user/cron-jobs.md @@ -28,7 +28,7 @@ Confirm that the cron job is displayed in your settings tab: ## Skipping Cron Jobs -Because cron jobs build the latest commit to a particular branch, if that commit message includes [the skip command](/user/customizing-the-build/#Skipping-a-build) the cron job will skip that build. +Because cron jobs build the latest commit to a particular branch, if that commit message includes [the skip command](/user/customizing-the-build/#skipping-a-build) the cron job will skip that build. ## Deleting Cron Jobs diff --git a/user/database-setup.md b/user/database-setup.md index 4587abf23f2..f015aefb2ef 100644 --- a/user/database-setup.md +++ b/user/database-setup.md @@ -487,7 +487,7 @@ before_install: We advise verifying the validity of the download URL [on ElasticSearch's website](https://www.elastic.co/downloads/elasticsearch). -> `sudo` is not available on [Container-based infrastructure](/user/reference/overview/#Virtualization-environments). +> `sudo` is not available on [Container-based infrastructure](/user/reference/overview/#virtualization-environments). ### Installing ElasticSearch on trusty container-based infrastructure @@ -551,7 +551,7 @@ Use the `DB` environment variable to specify the name of the database configurat DB=postgres [commands to run your tests] ``` -On Travis CI you want to create a [build matrix](/user/customizing-the-build/#Build-Matrix) of three builds each having the `DB` variable exported with a different value, and for that you can use the `env` option in `.travis.yml`: +On Travis CI you want to create a [build matrix](/user/customizing-the-build/#build-matrix) of three builds each having the `DB` variable exported with a different value, and for that you can use the `env` option in `.travis.yml`: ```yaml env: diff --git a/user/docker.md b/user/docker.md index bf4ff2a6b48..fc68fc05861 100644 --- a/user/docker.md +++ b/user/docker.md @@ -25,7 +25,7 @@ examples. > Travis CI automatically routes builds to run on our Trusty sudo-enabled infrastructure when `services: docker` is configured. > We do not currently support use of Docker on OS X. -> For information on how to use Docker on Travis CI Enterprise check out [Enabling Docker Builds](https://docs.travis-ci.com/user/enterprise/build-images/#Enabling-Docker-Builds). +> For information on how to use Docker on Travis CI Enterprise check out [Enabling Docker Builds](/user/enterprise/build-images/#enabling-docker-builds). ## Using a Docker Image from a Repository in a Build @@ -136,7 +136,7 @@ travis env set DOCKER_USERNAME myusername travis env set DOCKER_PASSWORD secretsecret ``` -Be sure to [encrypt environment variables](/user/environment-variables#Encrypting-environment-variables) +Be sure to [encrypt environment variables](/user/environment-variables#encrypting-environment-variables) using the travis gem. Within your `.travis.yml` prior to attempting a `docker push` or perhaps before @@ -181,7 +181,7 @@ echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin re ## Using Docker Compose -The [Docker Compose](https://docs.docker.com/compose/) tool is also [installed in the Docker enabled environment](/user/reference/trusty/#Docker). +The [Docker Compose](https://docs.docker.com/compose/) tool is also [installed in the Docker enabled environment](/user/reference/trusty/#docker). If needed, you can easily replace this preinstalled version of `docker-compose` by adding the following `before_install` step to your `.travis.yml`: diff --git a/user/encrypting-files.md b/user/encrypting-files.md index 98c8fe05d9f..aeed6c013bc 100644 --- a/user/encrypting-files.md +++ b/user/encrypting-files.md @@ -4,7 +4,7 @@ layout: en --- -**Please note that encrypted files are not available for [pull requests from forks](/user/pull-requests#Pull-Requests-and-Security-Restrictions).** +**Please note that encrypted files are not available for [pull requests from forks](/user/pull-requests#pull-requests-and-security-restrictions).** diff --git a/user/encryption-keys.md b/user/encryption-keys.md index 718e5495e20..a794fbe5fb3 100644 --- a/user/encryption-keys.md +++ b/user/encryption-keys.md @@ -8,7 +8,7 @@ layout: en A repository's `.travis.yml` file can have "encrypted values", such as [environment variables](/user/environment-variables/), notification settings, and deploy api keys. These encrypted values can be added by anyone, but are only readable by Travis CI. The repository owner does not keep any secret key material. -**Please note that encrypted environment variables are not available for [pull requests from forks](/user/pull-requests#Pull-Requests-and-Security-Restrictions).** +**Please note that encrypted environment variables are not available for [pull requests from forks](/user/pull-requests#pull-requests-and-security-restrictions).** ## Encryption scheme @@ -48,7 +48,7 @@ Please note that the name of the environment variable and its value are both enc You may add multiple entries to your .travis.yml with key "secure." They will all be available to your program. Encrypted values can be used in -[secure environment variables in the build matrix](/user/environment-variables#Defining-Variables-in-travisyml) +[secure environment variables in the build matrix](/user/environment-variables#defining-encrypted-variables-in-travisyml) and [notifications](/user/notifications). ### Note on escaping certain symbols diff --git a/user/gui-and-headless-browsers.md b/user/gui-and-headless-browsers.md index 1ae02e6dfec..148b904b2c7 100644 --- a/user/gui-and-headless-browsers.md +++ b/user/gui-and-headless-browsers.md @@ -40,7 +40,7 @@ driver = webdriver.Remote(desired_capabilities=capabilities, command_executor="h The Sauce Connect addon exports the `SAUCE_USERNAME` and `SAUCE_ACCESS_KEY` environment variables, and relays connections to the hub URL back to Sauce Labs. -This is all you need to get your Selenium tests running on Sauce Labs. However, you may want to only use Sauce Labs for Travis CI builds, and not for local builds. To do this, you can use the `CI` or `TRAVIS` environment variables to conditionally change what driver you're using (see [our list of available envionment variables](/user/reference/precise/#Environment-variables) for more ways to detect if you're running on Travis CI). +This is all you need to get your Selenium tests running on Sauce Labs. However, you may want to only use Sauce Labs for Travis CI builds, and not for local builds. To do this, you can use the `CI` or `TRAVIS` environment variables to conditionally change what driver you're using (see [our list of available envionment variables](/user/reference/precise/#environment-variables) for more ways to detect if you're running on Travis CI). To make the test results on Sauce Labs a little more easy to navigate, you may wish to provide some more metadata to send with the build. You can do this by passing in more desired capabilities: diff --git a/user/installing-dependencies.md b/user/installing-dependencies.md index bb03c3bfeee..a5522112dcc 100644 --- a/user/installing-dependencies.md +++ b/user/installing-dependencies.md @@ -254,7 +254,7 @@ addons: ## Installing Packages on OS X -To install packages that are not included in the [default OS X environment](/user/reference/osx/#Compilers-and-Build-toolchain) use [Homebrew](http://brew.sh) and our Homebrew addon in your `.travis.yml`. For example, to install beanstalk: +To install packages that are not included in the [default OS X environment](/user/reference/osx/#compilers-and-build-toolchain) use [Homebrew](http://brew.sh) and our Homebrew addon in your `.travis.yml`. For example, to install beanstalk: ```yaml addons: diff --git a/user/integration/platformio.md b/user/integration/platformio.md index fa73e07c358..62873fb9836 100644 --- a/user/integration/platformio.md +++ b/user/integration/platformio.md @@ -37,7 +37,7 @@ Please read the official [PlatformIO & Travis CI](http://docs.platformio.org/en/latest/ci/travis.html) documentation before using PlatformIO. PlatformIO is written in Python and is recommended to be run within a [Travis CI -Python isolated environment](/user/languages/python/#Travis-CI-Uses-Isolated-virtualenvs): +Python isolated environment](/user/languages/python/#travis-ci-uses-isolated-virtualenvs): ```yaml language: python diff --git a/user/ip-addresses.md b/user/ip-addresses.md index a219109fb35..284dc27ac2f 100644 --- a/user/ip-addresses.md +++ b/user/ip-addresses.md @@ -38,4 +38,4 @@ different. More details about our different infrastructures are available on the [virtualization environments -page](/user/reference/overview/#Virtualization-environments). +page](/user/reference/overview/#virtualization-environments). diff --git a/user/jwt.md b/user/jwt.md index 16ee6d38d8d..f2cef85302a 100644 --- a/user/jwt.md +++ b/user/jwt.md @@ -9,7 +9,7 @@ layout: en > [discontinued on April 17, 2018](https://blog.travis-ci.com/2018-01-23-jwt-addon-is-deprecated). Integration between Travis-CI and third-party services like Sauce Labs relies -on [encrypted variables](http://docs.travis-ci.com/user/environment-variables/#Encrypted-Variables) +on [encrypted variables](/user/environment-variables/#encrypting-environment-variables) which works well for trusted branches and committers. For security reasons, encrypted variables are not exposed to untrusted pull requests, so builds of pull requests do not have access to third party integrations. diff --git a/user/migrating-from-legacy.md b/user/migrating-from-legacy.md index 07ffb37c3d1..f6af0eecc93 100644 --- a/user/migrating-from-legacy.md +++ b/user/migrating-from-legacy.md @@ -176,7 +176,7 @@ fi See [here](https://github.com/travis-ci/container-example) for a working example of compiling, installing, and caching protobuf. -More information about caching can be found in our [Caching Directories and Dependencies](http://docs.travis-ci.com/user/caching/) doc. +More information about caching can be found in our [Caching Directories and Dependencies](/user/caching/) doc. ## Need Help? diff --git a/user/multi-os.md b/user/multi-os.md index 7faf56a7e69..a6063de8bd8 100644 --- a/user/multi-os.md +++ b/user/multi-os.md @@ -18,7 +18,7 @@ os: The value of the `$TRAVIS_OS_NAME` variable is set to `linux` or `osx` according to the operating system a particular build is running on, so you can use it to conditionalize your build scripts. -If you are already using a [build matrix](/user/customizing-the-build/#Build-Matrix) to test multiple versions, the `os` key also multiplies the matrix. +If you are already using a [build matrix](/user/customizing-the-build/#build-matrix) to test multiple versions, the `os` key also multiplies the matrix. ## Operating System differences @@ -94,7 +94,7 @@ script: ``` {: data-file=".travis.yml"} -There are many options available and using the `matrix.include` key is essential to include any specific entries. For example, this matrix would route builds to the [Trusty build environment](/user/reference/trusty/) and to an [OS X image using Xcode 7.2](/user/languages/objective-c#Supported-Xcode-versions): +There are many options available and using the `matrix.include` key is essential to include any specific entries. For example, this matrix would route builds to the [Trusty build environment](/user/reference/trusty/) and to an [OS X image using Xcode 7.2](/user/languages/objective-c#supported-xcode-versions): ```yaml matrix: diff --git a/user/reference/precise.md b/user/reference/precise.md index d8036ef60e5..78ba1939d9b 100644 --- a/user/reference/precise.md +++ b/user/reference/precise.md @@ -123,7 +123,7 @@ Please note that the addon only works in 64-bit Linux environments. ### Environment variables -There is a [list of default environment variables](/user/environment-variables#Default-Environment-Variables) available in each build environment. +There is a [list of default environment variables](/user/environment-variables#default-environment-variables) available in each build environment. ### Libraries diff --git a/user/reference/trusty.md b/user/reference/trusty.md index d5db22d741e..4354e91b4be 100644 --- a/user/reference/trusty.md +++ b/user/reference/trusty.md @@ -363,7 +363,7 @@ addons: ### Environment variables There is a [list of default environment -variables](/user/environment-variables#Default-Environment-Variables) available +variables](/user/environment-variables#default-environment-variables) available in each build environment. ### apt configuration diff --git a/user/sonarcloud.md b/user/sonarcloud.md index b896f7190a5..7f5a7247daa 100644 --- a/user/sonarcloud.md +++ b/user/sonarcloud.md @@ -32,7 +32,7 @@ dist: trusty Before inspecting your code, you need to: 1. [Create a user authentication token](https://sonarcloud.io/account/security) for your account on SonarCloud. -2. [Encrypt this token](/user/encryption-keys/#Usage) `travis encrypt abcdef0123456789` or define `SONAR_TOKEN` in your [Repository Settings](/user/environment-variables/#Defining-Variables-in-Repository-Settings) +2. [Encrypt this token](/user/encryption-keys/#usage) `travis encrypt abcdef0123456789` or define `SONAR_TOKEN` in your [Repository Settings](/user/environment-variables/#defining-variables-in-repository-settings) 3. [Find which SonarCloud.io organization](https://sonarcloud.io/account/organizations) you want to push your project on and get its key 4. Create a `sonar-project.properties` file for your project (see the [documentation](http://redirect.sonarsource.com/doc/install-configure-scanner.html)). diff --git a/user/speeding-up-the-build.md b/user/speeding-up-the-build.md index 3c571b407ca..6647e332c7a 100644 --- a/user/speeding-up-the-build.md +++ b/user/speeding-up-the-build.md @@ -14,7 +14,7 @@ that can be done to improve build times even more. To speed up a test suite, you can break it up into several parts using Travis CI's [build -matrix](/user/customizing-the-build/#Build-Matrix) +matrix](/user/customizing-the-build/#build-matrix) feature. Say you want to split up your unit tests and your integration tests into two @@ -170,7 +170,7 @@ reports in your Travis builds, but it has been shown to have a negative effect upon performance. You may wish to consider -[disabling the PHP XDebug extension](/user/languages/php#Disabling-preinstalled-PHP-extensions) for your +[disabling the PHP XDebug extension](/user/languages/php#disabling-preinstalled-php-extensions) for your builds if: - you are not generating code coverage reports in your Travis tests; or @@ -195,7 +195,7 @@ If your makefile build consists of independent parts that can be safely parallelized, you can [run multiple recipes simultaneously](https://www.gnu.org/software/make/manual/html_node/Parallel.html). See [Virtualization -environments](/user/reference/overview/#Virtualization-environments) to determine +environments](/user/reference/overview/#virtualization-environments) to determine how many CPUs an environment normally has and set the `make` job parameter to a similar number (or slightly higher if your build frequently waits on disk I/O). Note that doing this will cause concurrent recipe output to become interleaved. diff --git a/user/tutorial.md b/user/tutorial.md index 3e7293a5ab9..f9b34a3c61f 100644 --- a/user/tutorial.md +++ b/user/tutorial.md @@ -38,7 +38,7 @@ To start using Travis CI, make sure you have: ``` {: data-file=".travis.yml"} - The defaults for Ruby projects are `bundle install` to [install dependencies](/user/job-lifecycle/#Customizing-the-Installation-Phase), + The defaults for Ruby projects are `bundle install` to [install dependencies](/user/job-lifecycle/#customizing-the-installation-phase), and `rake` to build the project. 5. Add the `.travis.yml` file to git, commit and push, to trigger a Travis CI build: @@ -122,6 +122,6 @@ Read more about * [customizing your build](/user/customizing-the-build) * [security best practices](/user/best-practices-security/) * [build stages](/user/build-stages/) -* [build matrixes](/user/customizing-the-build/#Build-Matrix) +* [build matrixes](/user/customizing-the-build/#build-matrix) * [installing dependencies](/user/installing-dependencies) * [setting up databases](/user/database-setup/) diff --git a/user/web-ui.md b/user/web-ui.md index 8ecbd822fbb..224a3df30aa 100644 --- a/user/web-ui.md +++ b/user/web-ui.md @@ -33,7 +33,7 @@ If *ON*, builds will be run on new [pull requests](/user/pull-requests/). {{ site.data.snippets.environment_variables }} -More information on [environment variables](/user/environment-variables/#Defining-Variables-in-Repository-Settings). +More information on [environment variables](/user/environment-variables/#defining-variables-in-repository-settings). ## Cron jobs @@ -43,7 +43,7 @@ Check the full cron jobs docs for more information on [skipping and detecting cr ## Caches -More information on [caching](https://docs.travis-ci.com/user/caching). +More information on [caching](/user/caching). ## Trigger a custom build From 1e4975e19d3fb82dc1e76bf0740ea87dae41bc0d Mon Sep 17 00:00:00 2001 From: jamrok <3874968+jamrok@users.noreply.github.com> Date: Tue, 23 Oct 2018 04:05:15 -0500 Subject: [PATCH 0053/1851] Fix broken links in Deployment docs (#2075) --- user/deployment/bluemixcloudfoundry.md | 2 +- user/deployment/boxfuse.md | 2 +- user/deployment/cloudfoundry.md | 2 +- user/deployment/codedeploy.md | 4 ++-- user/deployment/elasticbeanstalk.md | 4 ++-- user/deployment/firebase.md | 4 ++-- user/deployment/google-app-engine.md | 2 +- user/deployment/hackage.md | 2 +- user/deployment/launchpad.md | 2 +- user/deployment/npm.md | 2 +- user/deployment/pages.md | 4 ++-- user/deployment/puppetforge.md | 2 +- user/deployment/pypi.md | 2 +- user/deployment/releases.md | 4 ++-- user/deployment/scalingo.md | 8 ++++---- user/deployment/script.md | 2 +- user/deployment/testfairy.md | 2 +- 17 files changed, 25 insertions(+), 25 deletions(-) diff --git a/user/deployment/bluemixcloudfoundry.md b/user/deployment/bluemixcloudfoundry.md index 762abbcaf38..9a41eae2346 100644 --- a/user/deployment/bluemixcloudfoundry.md +++ b/user/deployment/bluemixcloudfoundry.md @@ -42,7 +42,7 @@ You can do this using the Travis gem by running: travis encrypt --add deploy.password ``` -If your password includes symbols (such as braces, parentheses, backslashes, and pipe symbols), [you must escape those symbols before running `travis encrypt`](/user/encryption-keys/#Note-on-escaping-certain-symbols). +If your password includes symbols (such as braces, parentheses, backslashes, and pipe symbols), [you must escape those symbols before running `travis encrypt`](/user/encryption-keys/#note-on-escaping-certain-symbols). ### Conditional releases diff --git a/user/deployment/boxfuse.md b/user/deployment/boxfuse.md index c2ccbb6c6e5..aab0b6046ab 100644 --- a/user/deployment/boxfuse.md +++ b/user/deployment/boxfuse.md @@ -24,7 +24,7 @@ travis encrypt --add deploy.user travis encrypt --add deploy.secret ``` -Alternatively you can pass in your credentails using Travis CI [encrypted environment variables](/user/environment-variables/#Encrypted-Variables) called `BOXFUSE_USER` and `BOXFUSE_SECRET`. You can define these variables either using the Travis CI command line client or directly in the Travis CI repository settings UI. +Alternatively you can pass in your credentials using Travis CI [encrypted environment variables](/user/environment-variables/#encrypting-environment-variables) called `BOXFUSE_USER` and `BOXFUSE_SECRET`. You can define these variables either using the Travis CI command line client or directly in the Travis CI repository settings UI. Finally you can also fully configure Boxfuse by placing a `boxfuse.conf` file in the root of your repository. More info about configuration in the [Boxfuse Command-line Client documentation](https://boxfuse.com/docs/commandline/). diff --git a/user/deployment/cloudfoundry.md b/user/deployment/cloudfoundry.md index 3983dfad7e6..a12cb87abe1 100644 --- a/user/deployment/cloudfoundry.md +++ b/user/deployment/cloudfoundry.md @@ -37,7 +37,7 @@ You can do this using the Travis gem above and running: travis encrypt --add deploy.password ``` -If your password includes symbols (such as braces, parentheses, backslashes, and pipe symbols), [you must escape those symbols before running `travis encrypt`](/user/encryption-keys/#Note-on-escaping-certain-symbols). +If your password includes symbols (such as braces, parentheses, backslashes, and pipe symbols), [you must escape those symbols before running `travis encrypt`](/user/encryption-keys/#note-on-escaping-certain-symbols). ### Conditional releases diff --git a/user/deployment/codedeploy.md b/user/deployment/codedeploy.md index 6c99d3fece5..13a875361f9 100644 --- a/user/deployment/codedeploy.md +++ b/user/deployment/codedeploy.md @@ -30,7 +30,7 @@ A complete example can be found [here](https://github.com/travis-ci/cat-party/bl You can find your AWS Access Keys [here](https://console.aws.amazon.com/iam/home?#security_credential). It is recommended to encrypt that key. -If your CodeDeploy application lives in any region other than `us-east-1` please add a region field to `.travis.yml` (see [AWS-region-to-deploy-to](https://docs.travis-ci.com/user/deployment/codedeploy#AWS-region-to-deploy-to)). +If your CodeDeploy application lives in any region other than `us-east-1` please add a region field to `.travis.yml` (see [AWS-region-to-deploy-to](/user/deployment/codedeploy#aws-region-to-deploy-to)). Assuming you have the Travis CI command line client installed, you can do it like this: @@ -48,7 +48,7 @@ travis setup codedeploy Keep in mind that the above command has to run in your project directory, so it can modify the `.travis.yml` for you. -This command will also offer to set up [S3 deployment](http://docs.travis-ci.com/user/deployment/s3/), if you want to bundle to be uploaded from the Travis CI build. +This command will also offer to set up [S3 deployment](/user/deployment/s3/), if you want to bundle to be uploaded from the Travis CI build. ## Branch to deploy from diff --git a/user/deployment/elasticbeanstalk.md b/user/deployment/elasticbeanstalk.md index d8f7f606335..85210d4963c 100644 --- a/user/deployment/elasticbeanstalk.md +++ b/user/deployment/elasticbeanstalk.md @@ -12,8 +12,8 @@ successful build. To deploy to AWS Elastic Beanstalk add the following to your `.travis.yml`: -* `access-key-id`: [Encrypted](/user/encryption-keys#Usage) AWS Access Key ID, obtained from your [AWS Console](https://console.aws.amazon.com/iam/home?#security_credential). -* `secret-access-key`: [Encrypted](/user/encryption-keys#Usage) AWS Secret Key, obtained from your [AWS Console](https://console.aws.amazon.com/iam/home?#security_credential). +* `access-key-id`: [Encrypted](/user/encryption-keys#usage) AWS Access Key ID, obtained from your [AWS Console](https://console.aws.amazon.com/iam/home?#security_credential). +* `secret-access-key`: [Encrypted](/user/encryption-keys#usage) AWS Secret Key, obtained from your [AWS Console](https://console.aws.amazon.com/iam/home?#security_credential). * `region`: **must** be the region the Elastic Beanstalk application is running on, for example `us-east-1`. * `app`: Application name. * `env`: Elastic Beanstalk environment the application will be deployed to. diff --git a/user/deployment/firebase.md b/user/deployment/firebase.md index c026539a1b3..b56ca5bcc7a 100644 --- a/user/deployment/firebase.md +++ b/user/deployment/firebase.md @@ -9,7 +9,7 @@ layout: en Travis CI can automatically deploy your application to [Firebase](https://firebase.google.com/) after a successful build. -To use the default configuration, add your [encrypted](/user/encryption-keys/#Usage) Firebase [token](/user/deployment/firebase/#Generating-your-Firebase-token) to your `.travis.yml`, all other information is read from your `firebase.json`: +To use the default configuration, add your [encrypted](/user/encryption-keys/#usage) Firebase [token](/user/deployment/firebase/#generating-your-firebase-token) to your `.travis.yml`, all other information is read from your `firebase.json`: ```yaml deploy: @@ -32,7 +32,7 @@ travis encrypt "1/AD7sdasdasdKJA824OvEFc1c89Xz2ilBlaBlaBla" --add ``` When using `travis encrypt --add` you are likely to receive `WARNING: The name of the repository is now passed to the command with the -r option` (see https://github.com/travis-ci/travis-ci/issues/7869). The token will be added to your `.travis.yml`, regardless. Inspect and move the token to the `secure:` section of your `.travis.yml` if it isn't added there. -Remember to [encrypt](/user/encryption-keys/#Usage) the token before adding it to your `.travis.yml` +Remember to [encrypt](/user/encryption-keys/#usage) the token before adding it to your `.travis.yml` ## Deploying to a custom project diff --git a/user/deployment/google-app-engine.md b/user/deployment/google-app-engine.md index 5443d7a1e84..d50f867ce05 100644 --- a/user/deployment/google-app-engine.md +++ b/user/deployment/google-app-engine.md @@ -33,7 +33,7 @@ The `--add` flag automatically adds the decryption step to the .travis file. Keep in mind that the above command has to run in your project directory, so it can modify the `.travis.yml` for you. -More detailed instructions for encrypting keys using Travis can be found [here](http://docs.travis-ci.com/user/encrypting-files/). +More detailed instructions for encrypting keys using Travis can be found [here](/user/encrypting-files/). ### Project to deploy diff --git a/user/deployment/hackage.md b/user/deployment/hackage.md index 7bf2d6fddd1..e3010cb01a4 100644 --- a/user/deployment/hackage.md +++ b/user/deployment/hackage.md @@ -38,7 +38,7 @@ Keep in mind that the above command has to run in your project directory, so it You can deploy only when certain conditions are met. See [Conditional Releases with `on:`](/user/deployment#conditional-releases-with-on). -For example, if you build your project with [different GHC versions](/user/languages/haskell/#Specifying-Haskell-compiler-versions) but only want to deploy from one GHC version, add an `on` condition to your `deploy:` section: +For example, if you build your project with [different GHC versions](/user/languages/haskell/#specifying-haskell-compiler-versions) but only want to deploy from one GHC version, add an `on` condition to your `deploy:` section: ```yaml deploy: diff --git a/user/deployment/launchpad.md b/user/deployment/launchpad.md index 97891439510..831cb83952b 100644 --- a/user/deployment/launchpad.md +++ b/user/deployment/launchpad.md @@ -21,7 +21,7 @@ deploy: ``` {: data-file=".travis.yml"} -It is recommended to [encrypt both your `oauth_token` and your `oauth_token_secret`](/user/deployment/launchpad/#Encrypting-your-OAUTH-tokens). +It is recommended to [encrypt both your `oauth_token` and your `oauth_token_secret`](/user/deployment/launchpad/#encrypting-your-oauth-tokens). The `slug` contains user or team name, project name, and branch name, and is formatted like `~user-name/project-name/branch-name`. If your project's code is a git repository, the form is `~user-name/project-name/+git/repository-name`. You can find your project's slug in the header (and the url) of its `code.launchpad.net` page. diff --git a/user/deployment/npm.md b/user/deployment/npm.md index 56e2725c664..386fc0fc8ed 100644 --- a/user/deployment/npm.md +++ b/user/deployment/npm.md @@ -41,7 +41,7 @@ Your NPM Auth Token can be obtained by: 1. For NPM v2+, use the `authToken` value. 1. For NPM ~1, use the `auth` value. -Always [encrypt](/user/encryption-keys/#Usage) your auth token. Assuming you have the Travis CI command line client installed, you can do it like this: +Always [encrypt](/user/encryption-keys/#usage) your auth token. Assuming you have the Travis CI command line client installed, you can do it like this: ```bash $ travis encrypt YOUR_AUTH_TOKEN --add deploy.api_key diff --git a/user/deployment/pages.md b/user/deployment/pages.md index 3a304dfefa9..f2dcae9040b 100644 --- a/user/deployment/pages.md +++ b/user/deployment/pages.md @@ -37,9 +37,9 @@ token](https://help.github.com/articles/creating-an-access-token-for-command-lin with the `public_repo` or `repo` scope (`repo` is required for private repositories). Since the token should be private, you'll want to pass it to Travis securely in your [repository -settings](https://docs.travis-ci.com/user/environment-variables#Defining-Variables-in-Repository-Settings) +settings](/user/environment-variables#defining-variables-in-repository-settings) or via [encrypted variables in -`.travis.yml`](https://docs.travis-ci.com/user/environment-variables#Defining-encrypted-variables-in-travisyml). +`.travis.yml`](/user/environment-variables#defining-encrypted-variables-in-travisyml). ## Further configuration diff --git a/user/deployment/puppetforge.md b/user/deployment/puppetforge.md index f8f61eb7c45..8c62e689e14 100644 --- a/user/deployment/puppetforge.md +++ b/user/deployment/puppetforge.md @@ -9,7 +9,7 @@ layout: en Travis CI can automatically deploy your modules to [Puppet Forge ](https://forge.puppet.com/) or to your own Forge instance after a successful build. To deploy to Puppet Forge, add your Puppet Forge username and your -[encrypted](/user/encryption-keys/#Usage) Puppet Forge password to your +[encrypted](/user/encryption-keys/#usage) Puppet Forge password to your `.travis.yml`: ```yaml diff --git a/user/deployment/pypi.md b/user/deployment/pypi.md index fbac9d49f67..49e66e0a50d 100644 --- a/user/deployment/pypi.md +++ b/user/deployment/pypi.md @@ -25,7 +25,7 @@ However, this would expose your PyPI password to the world. We recommend you travis encrypt your-password-here --add deploy.password ``` -> Note that if your PyPI password contains [special characters](/user/encryption-keys#Note-on-escaping-certain-symbols) you need to escape them before encrypting your password. Some people have [reported difficulties](https://github.com/travis-ci/dpl/issues/377) connecting to PyPI with passwords containing anything except alphanumeric characters. +> Note that if your PyPI password contains [special characters](/user/encryption-keys#note-on-escaping-certain-symbols) you need to escape them before encrypting your password. Some people have [reported difficulties](https://github.com/travis-ci/dpl/issues/377) connecting to PyPI with passwords containing anything except alphanumeric characters. ```yaml deploy: diff --git a/user/deployment/releases.md b/user/deployment/releases.md index afad05946cb..ff3d84baa25 100644 --- a/user/deployment/releases.md +++ b/user/deployment/releases.md @@ -104,7 +104,7 @@ If you wish to upload assets to a GitHub Enterprise repository, you must overrid http(s)://"GITHUB ENTERPRISE HOSTNAME"/api/v3/ ``` -You can configure this in [Repository Settings](https://docs.travis-ci.com/user/environment-variables/#Defining-Variables-in-Repository-Settings) or via your `.travis.yml`: +You can configure this in [Repository Settings](/user/environment-variables/#defining-variables-in-repository-settings) or via your `.travis.yml`: ```yaml env: @@ -160,7 +160,7 @@ deploy: ``` {: data-file=".travis.yml"} -Please note that all paths in `file` are relative to the current working directory, not to [`$TRAVIS_BUILD_DIR`](/user/environment-variables/#Default-Environment-Variables). +Please note that all paths in `file` are relative to the current working directory, not to [`$TRAVIS_BUILD_DIR`](/user/environment-variables/#default-environment-variables). ### Conditional releases diff --git a/user/deployment/scalingo.md b/user/deployment/scalingo.md index 3657bd2d7a1..3883ddaabfe 100644 --- a/user/deployment/scalingo.md +++ b/user/deployment/scalingo.md @@ -11,15 +11,15 @@ Travis CI can automatically deploy your application to Chose one of two ways to connect to your Scalingo account: -* Using a [username and password](/user/deployment/scalingo/#Connecting-using-a-username-and-password). -* Using an [api key](/user/deployment/scalingo/#Connecting-using-an-api-key). +* Using a [username and password](/user/deployment/scalingo/#connecting-using-a-username-and-password). +* Using an [api key](/user/deployment/scalingo/#connecting-using-an-api-key). ## Connecting using a username and password -Add your Scalingo username and your [encrypted](/user/encryption-keys/#Usage) +Add your Scalingo username and your [encrypted](/user/encryption-keys/#usage) Scalingo password to your `.travis.yml`: ```yaml @@ -33,7 +33,7 @@ deploy: ## Connecting using an api key -Add your [encrypted](/user/encryption-keys/#Usage) +Add your [encrypted](/user/encryption-keys/#usage) Scalingo `api_key` to your `.travis.yml`: ```yaml diff --git a/user/deployment/script.md b/user/deployment/script.md index 34e1d64f084..b2979898102 100644 --- a/user/deployment/script.md +++ b/user/deployment/script.md @@ -42,7 +42,7 @@ deploy: ``` {: data-file=".travis.yml"} -The script has access to all the usual [environment variables](/user/environment-variables/#Default-Environment-Variables). +The script has access to all the usual [environment variables](/user/environment-variables/#default-environment-variables). ```yaml deploy: diff --git a/user/deployment/testfairy.md b/user/deployment/testfairy.md index ca62e0ee67d..032d23da083 100644 --- a/user/deployment/testfairy.md +++ b/user/deployment/testfairy.md @@ -39,7 +39,7 @@ deploy: ``` {: data-file=".travis.yml"} -Always [encrypt](http://docs.travis-ci.com/user/encrypting-files/) your keystore file. +Always [encrypt](/user/encrypting-files/) your keystore file. ## Symbols file From c488dd9b61134c722190b75264ae8d4bbd694b63 Mon Sep 17 00:00:00 2001 From: jamrok <3874968+jamrok@users.noreply.github.com> Date: Tue, 23 Oct 2018 04:10:39 -0500 Subject: [PATCH 0054/1851] Fix broken links in Language docs (#2074) --- user/languages/android.md | 4 ++-- user/languages/clojure.md | 4 ++-- user/languages/csharp.md | 2 +- user/languages/groovy.md | 2 +- user/languages/java.md | 10 +++++----- user/languages/javascript-with-nodejs.md | 2 +- user/languages/objective-c.md | 4 ++-- user/languages/php.md | 2 +- user/languages/python.md | 4 ++-- user/languages/r.md | 2 +- user/languages/ruby.md | 4 ++-- user/languages/rust.md | 2 +- user/languages/scala.md | 12 ++++++------ 13 files changed, 27 insertions(+), 27 deletions(-) diff --git a/user/languages/android.md b/user/languages/android.md index e5f96bce911..3d1f923a975 100644 --- a/user/languages/android.md +++ b/user/languages/android.md @@ -16,7 +16,7 @@ Android builds are not available on the OS X environment. ### Overview -Travis CI environment provides a large set of build tools for JVM languages with [multiple JDKs, Ant, Gradle, Maven](/user/languages/java/#Overview), [sbt](/user/languages/scala#Projects-using-sbt) and [Leiningen](/user/languages/clojure). +Travis CI environment provides a large set of build tools for JVM languages with [multiple JDKs, Ant, Gradle, Maven](/user/languages/java/#overview), [sbt](/user/languages/scala#projects-using-sbt) and [Leiningen](/user/languages/clojure). By setting @@ -243,7 +243,7 @@ to run your test suite. This can be overridden as described in the [general buil ## Testing Against Multiple JDKs -As for any JVM language, it is also possible to [test against multiple JDKs](/user/languages/java/#Testing-Against-Multiple-JDKs). +As for any JVM language, it is also possible to [test against multiple JDKs](/user/languages/java/#testing-against-multiple-jdks). ## Build Matrix diff --git a/user/languages/clojure.md b/user/languages/clojure.md index 4c1ae5b30aa..71bbef8b845 100644 --- a/user/languages/clojure.md +++ b/user/languages/clojure.md @@ -35,7 +35,7 @@ Clojure builds are not available on the OS X environment. ## CI Environment for Clojure Projects Travis CI environment provides a large set of build tools for JVM languages with -[multiple JDKs, Ant, Gradle, Maven](/user/languages/java/#Overview) and both +[multiple JDKs, Ant, Gradle, Maven](/user/languages/java/#overview) and both [Leiningen](http://leiningen.org) 1.7.x and 2.4.x (default). ## Dependency Management @@ -165,7 +165,7 @@ script: lein1 do javac, test ## Testing Against Multiple JDKs -As for any JVM language, it is also possible to [test against multiple JDKs](/user/languages/java/#Testing-Against-Multiple-JDKs). +As for any JVM language, it is also possible to [test against multiple JDKs](/user/languages/java/#testing-against-multiple-jdks). ### Examples diff --git a/user/languages/csharp.md b/user/languages/csharp.md index f3ceb639585..454b5957136 100644 --- a/user/languages/csharp.md +++ b/user/languages/csharp.md @@ -136,7 +136,7 @@ The [Coverity Scan](/user/coverity-scan/) addon is not supported because it only ### Running unit tests (NUnit, xunit, etc.) -To run your unit test suite, you'll need to install a test runner first. The recommended approach is to install it from NuGet, as this also works on the [container-based](http://docs.travis-ci.com/user/workers/container-based-infrastructure/) Travis infrastructure (i.e. it doesn't need `sudo`). +To run your unit test suite, you'll need to install a test runner first. The recommended approach is to install it from NuGet, as this also works on the [container-based](/user/workers/container-based-infrastructure/) Travis infrastructure (i.e. it doesn't need `sudo`). The following examples show how you'd override `install` and `script` to install a test runner and pass your test assemblies to it for running the tests. diff --git a/user/languages/groovy.md b/user/languages/groovy.md index 92302c08601..d1504260cec 100644 --- a/user/languages/groovy.md +++ b/user/languages/groovy.md @@ -144,7 +144,7 @@ jdk: ### Using Java 10 and Up For testing with OpenJDK and OracleJDK 10 and up, see -[Java documentation](/user/languages/java/#Using-Java-10-and-later). +[Java documentation](/user/languages/java/#using-java-10-and-later). ## Build Matrix diff --git a/user/languages/java.md b/user/languages/java.md index ee052c299c8..1c8d91d76b1 100644 --- a/user/languages/java.md +++ b/user/languages/java.md @@ -80,7 +80,7 @@ Travis CI uses that instead: > The default command does not generate JavaDoc (`-Dmaven.javadoc.skip=true`). -To use a different `script` command, customize the [build step](/user/job-lifecycle/#Customizing-the-Build-Phase). +To use a different `script` command, customize the [build step](/user/job-lifecycle/#customizing-the-build-phase). ## Projects Using Gradle @@ -98,7 +98,7 @@ or ./gradlew assemble ``` -To use a different `install` command, customize the [installation step](/user/job-lifecycle/#Customizing-the-Installation-Phase). +To use a different `install` command, customize the [installation step](/user/job-lifecycle/#customizing-the-installation-phase). ### Gradle Default Script Command @@ -116,7 +116,7 @@ root, Travis CI uses that wrapper instead: ./gradlew check ``` -To use a different `script` command, customize the [build step](/user/job-lifecycle/#Customizing-the-Build-Phase). +To use a different `script` command, customize the [build step](/user/job-lifecycle/#customizing-the-build-phase). ### Caching @@ -165,7 +165,7 @@ If Travis CI does not detect Maven or Gradle files it runs Ant: ant test ``` -To use a different `script` command, customize the [build step](/user/job-lifecycle/#Customizing-the-Build-Phase). +To use a different `script` command, customize the [build step](/user/job-lifecycle/#customizing-the-build-phase). ## Testing Against Multiple JDKs @@ -181,7 +181,7 @@ jdk: {: data-file=".travis.yml"} > Note that testing against multiple Java versions is not supported on OS X. See -the [OS X Build Environment](/user/reference/osx/#JDK-and-OS-X) for more +the [OS X Build Environment](/user/reference/osx/#jdk-and-os-x) for more details. The list of available JVMs for different dists are at diff --git a/user/languages/javascript-with-nodejs.md b/user/languages/javascript-with-nodejs.md index 1ad7029f753..a3663ad902e 100644 --- a/user/languages/javascript-with-nodejs.md +++ b/user/languages/javascript-with-nodejs.md @@ -240,7 +240,7 @@ matrix: before_install: # setting the path for phantom.js 2.0.0 - export PATH=/usr/local/phantomjs-2.0.0/bin:$PATH - # starting a GUI to run tests, per https://docs.travis-ci.com/user/gui-and-headless-browsers/#Using-xvfb-to-Run-Tests-That-Require-a-GUI + # starting a GUI to run tests, per https://docs.travis-ci.com/user/gui-and-headless-browsers/#using-xvfb-to-run-tests-that-require-a-gui - export DISPLAY=:99.0 - sh -e /etc/init.d/xvfb start - "npm config set spin false" diff --git a/user/languages/objective-c.md b/user/languages/objective-c.md index 8dfda0dcab7..d3b491273ac 100644 --- a/user/languages/objective-c.md +++ b/user/languages/objective-c.md @@ -33,7 +33,7 @@ the following table: > Detailed iOS SDK versions are available in the [OS X CI environment -> reference](https://docs.travis-ci.com/user/reference/osx/#xcode-version) +> reference](/user/reference/osx/#xcode-version) ## Default Test Script @@ -173,4 +173,4 @@ For Objective-C projects, `env`, `rvm`, `gemfile`, `xcode_sdk`, and ## Simulators -A complete list of simulators available in each version of Xcode is shown on the [OS X environment page](/user/reference/osx#Xcode-version). +A complete list of simulators available in each version of Xcode is shown on the [OS X environment page](/user/reference/osx#xcode-version). diff --git a/user/languages/php.md b/user/languages/php.md index 0518ba86c5e..1ce238b2f9f 100644 --- a/user/languages/php.md +++ b/user/languages/php.md @@ -71,7 +71,7 @@ php: We do not suppport these versions on Trusty. If you need to test them, please use Precise. -See [this page](/user/reference/trusty#PHP-images) for more information. +See [this page](/user/reference/trusty#php-images) for more information. ### HHVM versions diff --git a/user/languages/python.md b/user/languages/python.md index afe7d4b6029..3b6a9adf544 100644 --- a/user/languages/python.md +++ b/user/languages/python.md @@ -154,7 +154,7 @@ and fails the build. ## Using Tox as the Build Script Due to the way Travis is designed, interaction with [tox](https://tox.readthedocs.io/en/latest/) is not straightforward. -As described [above](/user/languages/python/#Travis-CI-Uses-Isolated-virtualenvs), Travis already runs tests inside an isolated virtualenv whenever `language: python` is specified, so please bear that in mind whenever creating more environments with tox. If you would prefer to run tox outside the Travis-created virtualenv, it might be a better idea to use `language: generic` instead of `language: python`. +As described [above](/user/languages/python/#travis-ci-uses-isolated-virtualenvs), Travis already runs tests inside an isolated virtualenv whenever `language: python` is specified, so please bear that in mind whenever creating more environments with tox. If you would prefer to run tox outside the Travis-created virtualenv, it might be a better idea to use `language: generic` instead of `language: python`. If you're using tox to test your code against multiple versions of python, you have two options: * use `language: generic` and manually install the python versions you're interested in before running tox (without the manual installation, tox will only have access to the default Ubuntu python versions - 2.7.6 and 3.4.3 for Trusty) @@ -183,7 +183,7 @@ Please note that the `--user` option is mandatory if you are not using `language To override the default `pip` dependency management, alter the `before_install` step as described in [general build -configuration](/user/job-lifecycle/#Customizing-the-Installation-Phase) guide. +configuration](/user/job-lifecycle/#customizing-the-installation-phase) guide. ### Testing Against Multiple Versions of Dependencies (e.g. Django or Flask) diff --git a/user/languages/r.md b/user/languages/r.md index 2fbdda7cc17..9302bfb7c8a 100644 --- a/user/languages/r.md +++ b/user/languages/r.md @@ -241,7 +241,7 @@ repos: ### Environment Variables R-Travis sets the following additional environment variables from the [Travis -defaults](/user/environment-variables/#Default-Environment-Variables). +defaults](/user/environment-variables/#default-environment-variables). - `TRAVIS_R_VERSION=3.2.4` Set to version chosen by `r:`. - `R_LIBS_USER=~/R/Library` diff --git a/user/languages/ruby.md b/user/languages/ruby.md index 057240557b3..ccba43387f5 100644 --- a/user/languages/ruby.md +++ b/user/languages/ruby.md @@ -297,7 +297,7 @@ For example, see ### Using Java 10 and Up For testing with OpenJDK and OracleJDK 10 and up, see -[Java documentation](/user/languages/java/#Using-Java-10-and-later). +[Java documentation](/user/languages/java/#using-java-10-and-later). ## Upgrading RubyGems @@ -330,4 +330,4 @@ downloads and installations are required. ## Build Matrix For Ruby projects, `env`, `rvm`, `gemfile`, and `jdk` can be given as arrays to -construct a [build matrix](/user/customizing-the-build/#Build-Matrix). +construct a [build matrix](/user/customizing-the-build/#build-matrix). diff --git a/user/languages/rust.md b/user/languages/rust.md index fb4a3cf4499..891127f5501 100644 --- a/user/languages/rust.md +++ b/user/languages/rust.md @@ -117,4 +117,4 @@ build in the `TRAVIS_RUST_VERSION` environment variable. ## Build Matrix For Rust projects, `env` and `rust` can be given as arrays to -construct a [build matrix](/user/customizing-the-build/#Build-Matrix). +construct a [build matrix](/user/customizing-the-build/#build-matrix). diff --git a/user/languages/scala.md b/user/languages/scala.md index 54dc0e8d4c1..94b2696a2b3 100644 --- a/user/languages/scala.md +++ b/user/languages/scala.md @@ -10,8 +10,8 @@ layout: en | Scala | Default | |:-----------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| Default `install` | [sbt](#sbt-Dependency-Management), [Gradle](/user/languages/java/#Gradle-Dependency-Management), [Maven](/user/languages/java/#Maven-Dependency-Management), [Ant](/user/languages/java/#Ant-Dependency-Management) | -| Default `script` | [sbt](#sbt-Default-Script-Command), [Gradle](/user/languages/java/#Gradle-Default-Script-Command), [Maven](/user/languages/java/#Maven-Default-Script-Command), [Ant](/user/languages/java/#Ant-Default-Script-Command) | +| Default `install` | [sbt](#sbt-Dependency-Management), [Gradle](/user/languages/java/#gradle-dependency-management), [Maven](/user/languages/java/#maven-dependency-management), [Ant](/user/languages/java/#ant-dependency-management) | +| Default `script` | [sbt](#sbt-Default-Script-Command), [Gradle](/user/languages/java/#gradle-default-script-command), [Maven](/user/languages/java/#maven-default-script-command), [Ant](/user/languages/java/#ant-default-script-command) | | [Matrix keys](#Build-Matrix) | `scala`,`jdk`, `env` | | Support | [Travis CI](mailto:support@travis-ci.com) | @@ -33,7 +33,7 @@ new to Travis CI please read our [Tutorial](/user/tutorial/) and ## Overview Travis CI environment provides a large set of build tools for JVM languages with -[multiple JDKs, Ant, Gradle, Maven](/user/languages/java/#Overview) and +[multiple JDKs, Ant, Gradle, Maven](/user/languages/java/#overview) and [sbt](http://www.scala-sbt.org). ## Specifying Scala versions @@ -76,7 +76,7 @@ sbt ++$TRAVIS_SCALA_VERSION test to run your test suite. To use a different `script` command, customize the -[build step](/user/job-lifecycle/#Customizing-the-Build-Phase). +[build step](/user/job-lifecycle/#customizing-the-build-phase). ### Custom sbt Arguments @@ -117,12 +117,12 @@ typical [Java Project](/user/languages/java). ## Testing Against Multiple JDKs As for any JVM language, it is also possible to [test against multiple -JDKs](/user/languages/java/#Testing-Against-Multiple-JDKs). +JDKs](/user/languages/java/#testing-against-multiple-jdks). ### Using Java 10 and Up For testing with OpenJDK and OracleJDK 10 and up, see -[Java documentation](/user/languages/java/#Using-Java-10-and-later). +[Java documentation](/user/languages/java/#using-java-10-and-later). ## Build Matrix From 74ea3e000b85cba0b3fa5e7a542be3f8d6bf95a8 Mon Sep 17 00:00:00 2001 From: Jan Schulte Date: Wed, 24 Oct 2018 11:40:37 +0200 Subject: [PATCH 0055/1851] Add missing Encryption Key steps This is copied over from the operations manual page to make sure that users include the encryption key in their backups as well. --- user/enterprise/upgrading.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/user/enterprise/upgrading.md b/user/enterprise/upgrading.md index 911ed2949f3..fb6220f1d11 100644 --- a/user/enterprise/upgrading.md +++ b/user/enterprise/upgrading.md @@ -15,6 +15,18 @@ One good way to do this is to run ``` See [restoring from backups](#Restoring-from-Backups) if you have any questions about the steps or want to do a restore. +### Encryption key + +Without the encryption key you cannot access the information in your production database. To make sure that you can always recover your database, make a backup of this key. + +> Without the encryption key the information in the database is not recoverable. + +To make a backup, please follow these steps: + +1. open a ssh connection to the platform machine +2. run `travis bash`. This will open a bash session with `root` privileges into the Travis container. +3. Then run `grep -A1 encryption: /usr/local/travis/etc/travis/config/travis.yml`. Create a backup of the value returned by that command by either writing it down on a piece of paper or storing it on a different computer. + ## Updating your Travis CI Enterprise Platform You can check for new releases by going to the management interface From 62a186272f2ccd2fc1e0b7c7dce92cb3240cd10d Mon Sep 17 00:00:00 2001 From: Samuel Wright Date: Wed, 24 Oct 2018 11:26:03 +0100 Subject: [PATCH 0056/1851] Minor fixes --- _includes/footer.html | 1 + legal/refund-policy.md | 23 +++++++++++++---------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/_includes/footer.html b/_includes/footer.html index de34c1f5c67..2d611dbf363 100644 --- a/_includes/footer.html +++ b/_includes/footer.html @@ -33,6 +33,7 @@