Skip to content

Commit 27b32ab

Browse files
Merge branch 'master' into patch-1
2 parents 0ebc6f6 + ade38bf commit 27b32ab

19 files changed

+407
-122
lines changed

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ WORKDIR /app
2424
COPY Gemfile /app
2525
COPY Gemfile.lock /app
2626

27-
RUN gem install bundler
27+
RUN gem install bundler:2.4.22
2828
RUN bundler install --verbose --retry=3
2929
RUN gem install --user-install executable-hooks
3030

_includes/enterprise_sidebar.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ <h3>Enterprise Operations Manual</h3>
6363
<li><a href="/user/enterprise/troubleshooting-guide/">Troubleshooting Guide</a></li>
6464
<li><a href="/user/enterprise/user-management/">User Management</a></li>
6565
<li><a href="/user/enterprise/Multi-CPU-Builds/">Multi CPU builds</a></li>
66+
<li><a href="/user/enterprise/workspaces-eom/">Workspaces & Cache</a></li>
6667
</ul>
6768

6869
<h3>Migrating from Enterprise 2.x to 3.x</h3>

_includes/sidebar.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ <h3>Installing Dependencies</h3>
5959
<li><a href="/user/private-dependencies-bb/">Private Dependencies Bitbucket</a></li>
6060
<li><a href="/user/database-setup/">Setting up Services and Databases</a></li>
6161
<li><a href="/user/caching/">Caching Dependencies</a></li>
62+
<li><a href="/user/using-workspaces/">Caching Dependencies within a Build (Workspaces)</a></li>
6263
<li><a href="/user/ssh-known-hosts/">Adding to SSH Known Hosts</a></li>
6364
</ul>
6465

images/tcie-3.x-workspaces-config.png

216 KB
Loading

user/apps.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -198,8 +198,6 @@ By ThoughtWorks Inc.
198198
- [app store](https://itunes.apple.com/us/app/ccmenu/id603117688)
199199
- [tutorial](/user/cc-menu/)
200200

201-
![Travis CI in Screensaver Ninja with Custom CSS](/images/apps/screensaver-ninja.gif){:.app}
202-
203201
## Linux
204202

205203
### BuildNotify

user/assembla-oauth-scopes.md

Lines changed: 38 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ permalink: /user/assembla-oauth-scopes/
55

66
---
77

8-
When you sign in to Travis CI for the first time, we ask for permissions to access
8+
When you sign in to Travis CI for the first time, we ask permission to access
99
some of your data on Assembla. Read the
1010
[Scopes for the Assembla REST API](https://api-docs.assembla.cc/)
1111
for general information about this, or pick an explanation of what data we need and why we need it.
@@ -25,33 +25,60 @@ We use scoped OAuth tokens to integrate with Assembla.
2525
## Used Scopes
2626

2727
### repository
28-
Gives the app read access to all the repositories the authorizing user has access to.
28+
It gives the app read access to all the repositories the authorizing user has access to.
2929
> This scope does not give access to a repository's pull requests.
3030
3131
### repository:admin
32-
Gives the app admin access to all the repositories the authorizing user has access to. This permission is needed to add the access key. Travis CI uses the key to read the travis.yml file content.
32+
It gives the app admin access to all the repositories the authorizing user has access to. This permission is needed to add the access key. Travis CI uses the key to read the travis.yml file content.
3333

3434

3535
### pullrequest
36-
Gives the app read access to pull requests and collaborate on them. This scope implies repository, giving read access to the pull request's destination repository.
36+
It gives the app read access to pull requests and collaborate on them. This scope implies a repository giving read access to the pull request's destination repository.
3737

3838
### email
39-
Ability to see the user's primary email address. This should make it easier to use Assembla as a login provider to apps or external applications.
39+
The ability to see the user's primary email address. This should make using Assembla as a login provider to apps or external applications easier.
4040

4141
### account
42-
Ability to see all the user's account information. Note that this does not include any ability to mutate any of the data.
42+
The ability to see all the user's account information. Note that this does not include any ability to mutate the data.
4343

4444
### team
45-
The ability to find out what teams the current user is part of. This is covered by the teams endpoint.
45+
The ability to find out what teams the current user is part of. The teams' endpoint covers this.
4646

4747
### webhook
48-
Gives access to webhooks. This scope is required for any webhook related operation.
48+
Gives access to webhooks. This scope is required for any webhook-related operation.
4949

50-
This scope gives read access to existing webhook subscriptions on all resources you can access, without needing further scopes.
51-
This means that a client can list all existing webhook subscriptions on repository foo/bar (assuming the principal user has access
52-
to this repo). The additional repository scope is not required for this.
50+
This scope gives read access to existing webhook subscriptions on all resources you can access without needing further scopes.
51+
This means a client can list all existing webhook subscriptions on repository foo/bar (assuming the principal user can access
52+
this repo). The additional repository scope is not required for this.
5353

5454
Likewise, existing webhook subscriptions for a repo's issue tracker can be retrieved without holding the issue scope.
5555
All that is required is the webhook scope.
5656

5757
However, to create a webhook for issue:created, the client will need to have both the webhook as well as issue scope.
58+
59+
## Version Control System Specific Information
60+
61+
Aside from Git Repository integration, Travis CI supports the following VCS (Version Control System) integrations with Assembla:
62+
63+
| Repository type | Supported integration | Authorization engine |
64+
| ------------------- | ------------------------------------ | ------------------------------------------------------- |
65+
| Perforce Helix Core | Streams mainline and dev depots only | Ticket-based authorization only |
66+
| SVN | Apache SVN server only | svn+ssh (implies SSH keys used) + optionally use realms |
67+
68+
### SVN
69+
70+
When enabling the Assembla SVN Repository in Travis CI, the 'write access' SSH deploy key with the title 'travis-ci.com' is
71+
added to the Assembla SVN Repository Settings. This is the current Assembla requirement for authorizing the connection.
72+
Travis CI does not require write access to your repositories. Only read access is needed to set up the connection and
73+
trigger builds in Travis CI.
74+
The svn+ssh protocol is used to obtain an SVN repository copy into the ephemerical build job environment for the time
75+
needed to execute build instructions.
76+
77+
### Perforce Helix Core (P4)
78+
79+
When enabling the Assembla P4 Repository in Travis CI, a special access group is created for this P4 repository in Assembla.
80+
You can see it in the respective 'P4 Admin' section for the enabled P4 repository. It will be named 'TravisCIAccessGroup-<guid>'
81+
and login timeout for the group will be set so the ticket-based authorization does not expire until the repository is disabled
82+
in Travis CI. The group will contain the Assembla user-enabling repository in Travis CI.
83+
This is required for the Travis CI build job to communicate with Assembla P4 and obtain a copy of the source code to the ephemerical
84+
build job environment for the time needed to execute build instructions.

user/billing-overview.md

Lines changed: 40 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ The variety of plans provides you with the flexibility to choose the plan that s
1717

1818
| Billing Period | Concurrency based | Usage-based |
1919
|:------- |:-----------------:|:-----------:|
20-
|Month | Concurrent jobs limit<br />Unlimited build minutes on Linux, Windows, and FreeBSD<br />Paid macOS builds (credits)<br /><br /> | Very high concurrency limit<br />Paid macOS, Linux, Windows, and FreeBSD build minutes (credits)<br />Paid user licenses (only per users triggering the builds)<br /><br /> |
21-
|Annual | Only grandfathered | Very high concurrency limit<br />Paid macOS, Linux, Windows, and FreeBSD build minutes (credits)<br />Paid user licenses (only per users triggering the builds)<br /><br />Purchase in Travis CI or contact support [for plans over $3,300](https://app.travis-ci.com/account/plan) in Travis CI |
20+
|Month | Concurrent jobs limit<br />Unlimited build minutes on standard vm sized Linux, Windows, and FreeBSD<br />Paid macOS builds (credits)<br />Paid premium VM size (credits). Contact sales for other options.<br /><br />Purchase in [Travis CI](https://app.travis-ci.com/account/plan). | Very high concurrency limit<br />Paid macOS, Linux, Windows, and FreeBSD build minutes (credits)<br />Paid user licenses (only per users triggering the builds)<br /><br />Grandfathered only. |
21+
|Annual | Available, same build rules as monthly. Purchase in [Travis CI](https://app.travis-ci.com/account/plan) or contact support. | Very high concurrency limit<br />Paid macOS, Linux, Windows, and FreeBSD build minutes (credits)<br />Paid user licenses (only per users triggering the builds)<br /><br />Contact support for high volume annual usage-based plans. |
2222

2323

2424
For most of users, a single concurrency-based plan should be sufficient. However, if you build a lot of minutes per month and concurrency becomes a bottleneck, please contact Travis CI asking for a Usage-based plan.
@@ -63,7 +63,7 @@ Credits are used to pay for each build job minute on macOS. Purchase only the cr
6363
1. Sign in to Travis CI with the [Version Control System of your choice](/user/tutorial/).
6464
2. Navigate to the [Plan tab](https://app.travis-ci.com/account/plan) and select 'X concurrent jobs Plan'.
6565
3. Enter your billing details. **Please note that all prices are provided netto, w/o any VAT or other applicable local taxes**. If you are EU based VAT paying company, do not forget to enter your VAT number.
66-
4. Confirm transaction.
66+
4. Confirm the transaction.
6767

6868

6969
## Usage-based plans
@@ -262,15 +262,15 @@ With every build started, Travis CI keeps track of how many unique users trigger
262262
263263
| Area | Details |
264264
| :--- | --- |
265-
| **Payment** | Credits are paid in advance:<BR />1. Upon purchasing a Plan, an immediate charge is applied depending on credits allotment coming with a Plan.<BR />2. The additional credit addons can be purchased at any time, and credits are only used when you need them. The charge is applied immediately upon transaction.<BR /><BR />The user license cost is charged automatically in arrears at the end of each billing period (Usage Plan w/o subscription). The number of unique users triggering a build is charged according to the license rates.<br /><br />The Free Plan assigned upon sign-up grants you unlimited users for free. |
265+
| **Payment** | Credits are paid in advance:<BR />1. Upon purchasing a Plan, an immediate charge is applied depending on the credits allotment coming with a Plan.<BR />2. The additional credit addons can be purchased at any time, and credits are only used when you need them. The charge is applied immediately upon transaction.<BR /><BR />The user license cost is charged automatically in arrears at the end of each billing period (Usage Plan w/o subscription). The number of unique users triggering a build is charged according to the license rates.<br /><br />The Free Plan assigned upon sign-up grants you unlimited users for free. |
266266
| **Private/Public repositories** | With Credits, you can build over both private and public repositories. <BR/> With OSS Credits, you can build only over public repositories. |
267-
| **Build job limits** | Very high. <BR/><BR/>The Free Plan assigned automatically upon sign-up has a limit of 20 concurrent jobs. The paid usage based plans start from a 40 concurrent jobs limit. |
267+
| **Build job limits** | Very high. <BR/><BR/>The Free Plan assigned automatically upon sign-up has a limit of 20 concurrent jobs. The paid usage-based plans start from a 40 concurrent jobs limit. |
268268
269269
270270
### Usage-based Plan - How to obtain?
271271
272272
1. Sign in to Travis CI with a [Version Control System of your choice](/user/tutorial/).
273-
2. Navigate to the [Plans](https://app.travis-ci.com/account/plan) and have your billing and contact details fill in correctly.
273+
2. Navigate to the [Plans](https://app.travis-ci.com/account/plan) and have your billing and contact details filled in correctly.
274274
3. Contact [Travis CI support](mailto:[email protected]) requesting a Usage-based Plan.
275275
276276
@@ -299,7 +299,40 @@ VM size property impacts the cost of build minutes/credits usage in the followin
299299

300300

301301

302-
> If you run a Linux build in usage model, it'll cost you 10 credits. If you run a Linux build under a concurrency plan, you do not need credits, as the subscription covers the cost. However, if you decide to run a Linux build using the `large` instance size, you will need in both cases 20 credits per every started build minutes (2 x 10 credits).
302+
> If you run a Linux build in usage model, it'll cost you 10 credits. If you run a Linux build under a concurrency plan, you do not need credits, as the subscription covers the cost. However, if you decide to run a Linux build using the `large` instance size, you will need, in both cases, 20 credits per every started build minutes (2 x 10 credits).
303+
304+
305+
## GPU VM Instance Sizes and Credit Cost for GPU builds
306+
307+
Travis CI allows users to trigger GPU builds both in usage-based and concurrency-based plans.
308+
309+
GPU builds allow you to choose the instance size the build will run on (for the 'full vm' build job). X-large instance sizes deliver more resources (vCPU and RAM) for your build jobs. This can be done by setting a 'vm' property in the .travis.yml config. This property allows you to choose the Virtual machine instance for a build:
310+
311+
```yaml
312+
vm:
313+
size: [gpu-medium | gpu-xlarge] #new values in the schema for existing key
314+
```
315+
316+
Instance sizes do not apply to Windows, and OSX build jobs. Visit our [CI Environment Overview page](/user/reference/overview#gpu-vm-instance-size) for information on the available GPU VM sizes, operating system, and CPU architecture.
317+
318+
To use instance sizes:
319+
320+
* you need to have credits under your account, regardless of the plan (Concurrency or Usage-based) you use.
321+
* you need to add the tags mentioned above to your `.travis.yml.`
322+
* you need to select a Linux operating system in your `travis.yml.`
323+
324+
GPU VM size property impacts the cost of build minutes/credits usage in the following way:
325+
326+
| GPU VM size | Credits per<br />started build minute |
327+
|:--------------------:|:-------------------------------------:|
328+
| T4 medium | 230 |
329+
| V100 x-large | 890 |
330+
331+
332+
> GPU Support is only available for:
333+
> * arch: amd64
334+
> * os: Linux
335+
> * dist: [focal] # jammy still under fixing, to be added later, xenial EOL, bionic will go EOL in April 2023.
303336

304337

305338
## Getting Help

user/browserstack.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ layout: en
44

55
---
66

7-
Travis CI integrates with [BrowserStack](https://www.browserstack.com), a cross browser and real device
7+
Travis CI integrates with [BrowserStack](https://www.browserstack.com/?utm_source=travis&utm_medium=partnered), a cross browser and real device
88
web-based testing platform. BrowserStack can be used for interactive as well as automated testing through frameworks
99
like Selenium, Karma and others.
1010

@@ -15,17 +15,17 @@ and BrowserStack servers. Local Testing also has support for firewalls, proxies
1515
Once the secure connection is setup, all URLs work out of the box, including your webserver, local folders, as well as
1616
URLs with HTTPS.
1717

18-
[local-testing]: https://www.browserstack.com/local-testing
18+
[local-testing]: https://www.browserstack.com/local-testing/?utm_source=travis&utm_medium=partnered
1919

20-
[local-binary]: https://www.browserstack.com/local-testing#command-line
20+
[local-binary]: https://www.browserstack.com/local-testing#command-line/?utm_source=travis&utm_medium=partnered
2121

22-
[open-source-browserstack]: https://www.browserstack.com/pricing
22+
[open-source-browserstack]: https://www.browserstack.com/open-source/?utm_source=travis&utm_medium=partnered
2323

24-
[account-settings]: https://www.browserstack.com/accounts/settings
24+
[account-settings]: https://www.browserstack.com/accounts/settings/?utm_source=travis&utm_medium=partnered
2525

2626
[encryption-keys]: https://docs.travis-ci.com/user/encryption-keys/
2727

28-
[browserstack-ruby-bindings]: https://www.browserstack.com/automate/ruby
28+
[browserstack-ruby-bindings]: https://www.browserstack.com/automate/ruby/?utm_source=travis&utm_medium=partnered
2929

3030
[travis-matrix-builds]: https://docs.travis-ci.com/user/customizing-the-build/#build-matrix
3131

user/build-config-imports.md

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -231,9 +231,14 @@ import:
231231
```
232232
{: data-file=".travis.yml"}
233233

234-
This mode first merges your `.travis.yml` contents into the `one.yml` file (overwriting, if required, sections in `one.yml` with content from `.travis.yml`). The results are merged into the `two.yml` file (again, items in the result of the previous merge win over what’s in this one, as the `deep_merge` mode is specified here).
235-
236-
The reasoning behind this is that in many cases when you import something to your `.travis.yml’ file, you want to be able to overwrite or customize that imported configuration with config in your `.travis.yml` file.
234+
This mode first merges your `.travis.yml` contents into the `one.yml` file (overwriting,
235+
if required, sections in `one.yml` with content from `.travis.yml`). The results are
236+
merged into the `two.yml` file (again, items in the result of the previous merge win
237+
over what’s in this one, as the `deep_merge` mode is specified here).
238+
239+
The reasoning behind this is that in many cases when you import something to your
240+
`.travis.yml` file, you want to be able to overwrite or customize that imported
241+
configuration with config in your `.travis.yml` file.
237242

238243
### Merge
239244

user/common-build-problems.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -630,3 +630,13 @@ This creates only one job, _Peanut Butter and Bread_ under the stage named _Bre
630630
## **Node**: Script execution before dependency installation causes build failures
631631

632632
When adding custom setup instructions to a NodeJS build, add them in the `before_script` phase and not before _dependencies are installed_. The `before_script` phase is the safest place to add custom setup scripts. Symptoms of this problem include previously succeeding builds suddenly failing due to the addition of a new dependency.
633+
634+
## **Node**: NPM/YARN throw ***Error: connect ENETUNREACH*** or build hangs in the install phase i.e. `npm install` or `yarn install` for NodeJs versions 16+ on LXD images (ppc64le, arm64 and s390x)
635+
636+
This seems to be a known bug and the details can be reviewed at https://github.com/npm/cli/issues/4163. Add the following to resolve the issue:
637+
638+
``` yaml
639+
env:
640+
global:
641+
- NODE_OPTIONS="--dns-result-order=ipv4first"
642+
```

0 commit comments

Comments
 (0)