Skip to content

Commit c93002f

Browse files
authored
Merge branch 'master' into mysql-jammy
2 parents 7433b52 + 278914b commit c93002f

File tree

4 files changed

+77
-36
lines changed

4 files changed

+77
-36
lines changed

_data/snippets.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ all_note: |
3030
> * [Trusty](/user/reference/trusty/)
3131
> * [Xenial](/user/reference/xenial/)
3232
> * [Bionic](/user/reference/bionic/)
33+
> * [Focal](/user/reference/focal/)
34+
> * [Jammy](/user/reference/jammy/)
3335
> * [macOS](/user/reference/osx/)
3436
> * [Windows](/user/reference/windows/)
3537
> * [FreeBSD](/user/reference/freebsd/)
@@ -40,6 +42,8 @@ unix_note: |
4042
> * [Trusty](/user/reference/trusty/)
4143
> * [Xenial](/user/reference/xenial/)
4244
> * [Bionic](/user/reference/bionic/)
45+
> * [Focal](/user/reference/focal/)
46+
> * [Jammy](/user/reference/jammy/)
4347
> * [macOS](/user/reference/osx/)
4448
> * [FreeBSD](/user/reference/freebsd/)
4549
linux_note: |
@@ -49,13 +53,17 @@ linux_note: |
4953
> * [Trusty](/user/reference/trusty/)
5054
> * [Xenial](/user/reference/xenial/)
5155
> * [Bionic](/user/reference/bionic/)
56+
> * [Focal](/user/reference/focal/)
57+
> * [Jammy](/user/reference/jammy/)
5258
linux_windows_note: |
5359
> For Language versions and other build-environment specific
5460
> information visit our reference pages:
5561
> * [Precise](/user/reference/precise/)
5662
> * [Trusty](/user/reference/trusty/)
5763
> * [Xenial](/user/reference/xenial/)
5864
> * [Bionic](/user/reference/bionic/)
65+
> * [Focal](/user/reference/focal/)
66+
> * [Jammy](/user/reference/jammy/)
5967
> * [Windows](/user/reference/windows/)
6068
> * [FreeBSD](/user/reference/freebsd/)
6169
concurrent_jobs: |

user/travis-ci-vcs-proxy-get-started.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ After you sign up to Travis CI using Travis CI VCS Proxy, we will review the acc
2222
To get started with Travis CI VCS Proxy, first, you will need:
2323

2424
1. An organization with at least one repository assigned in TCI VCS Proxy.
25+
2526
2. To configure the repository with the appropriate credentials in TCI VCS Proxy, in particular tokens.
2627

2728
For more information read the [Setting up Travis CI VCS Proxy](/user/travis-ci-vcs-proxy/).
@@ -59,7 +60,7 @@ The following example specifies a Ruby project built with Ruby 2.2 and the lates
5960
6061
The defaults for Ruby projects are a `bundle install` to [install dependencies](/user/job-lifecycle/#customizing-the-installation-phase), and `rake` to build the project.
6162

62-
6. Add the `.travis.yml` file to repository, commit to the repository to trigger a Travis CI build:
63+
7. Add the `.travis.yml` file to repository, commit to the repository to trigger a Travis CI build:
6364

6465
> Travis only runs builds on the commits you push *after* you've added a `.travis.yml` file.
6566

@@ -78,7 +79,7 @@ Perforce depot/repository may be very heavy, so downloading it fully for build (
7879
{: data-file=".travis.yml"}
7980

8081

81-
Perforce and SVN builds during Closed Beta are **available only for Linux Ubuntu, Bionic Beaver and Focal Fossa** build environments. In order to use these, following tags must be used in the `.travis.yml`:
82+
Perforce and SVN builds during Closed Beta are **available only for Linux Ubuntu, Bionic Beaver and Focal Fossa** and standard amd64 CPU architecture build environments. In order to use these, following tags must be used in the `.travis.yml`:
8283

8384
```yaml
8485
dist: bionic

user/travis-ci-vcs-proxy.md

Lines changed: 65 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,16 @@ layout: en
55

66
<blockquote class="beta">
77
<p>
8-
This section documents the new TCI VCS Proxy option that is currently in closed beta.
8+
This section documents the new TCI VCS Proxy (Travis CI Version Control System Proxy) option that is currently in closed beta.
99
</p>
1010
</blockquote>
1111

1212
## Travis CI VCS Proxy
13-
To use Travis CI with Travis CI Version Control System VCS) Proxy for builds over Perforce Helix Core (P4) and Apache SVN (SVN) repositories, you will need to configure TCI Proxy first. This separate configuration step is required to support both Assembla-based P4/SVN repositories and P4/SVN servers fully managed by you.
13+
14+
Travis CI Version Control System Proxy is a connector between Apache SVN or Perforce Helix Core server and Travis CI. It serves the purpose to allow SVN and Perforce users to utilize Travis CI as a build and testing tool.
15+
16+
To use Travis CI with Travis CI VCS Proxy for builds over Perforce Helix Core (P4) and Apache SVN (SVN) repositories, you will need to configure TCI VCS Proxy first. This separate configuration step is required to support both Assembla-based P4/SVN repositories and P4/SVN servers fully managed by you.
17+
1418

1519
Integration supported by TCI VCS Proxy
1620

@@ -28,9 +32,11 @@ You will need:
2832
- To generate the access token for the P4 repository, access the P4 repository via the Command Line Tool which you can grab [here](https://www.perforce.com/products/helix-core-apps/command-line-client).
2933
2. If you host your own P4/SVN server: the server must be reachable via a public network (Internet) w/o VPN connection. In addition, you need admin rights at the server to deploy post-commit hook scripts that send notifications on commits to TCI VCS Proxy. Please verify the `Supported integration` and `Authorization engine` that TCI VCS Proxy integration supports (see table above). Please sign up for closed beta and contact Beta Support email address for more details.
3034
3. Sign-up for closed beta.
31-
4. Google Authenticator application to configure 2-Factor Authentication (2FA) within TCI Proxy.
35+
4. Google Authenticator application to configure 2-Factor Authentication (2FA) within TCI VCS Proxy.
3236
5. You will receive an email with subsequent instructions.
3337

38+
If you are on Windows when working with Perforce repository, you may want to check [Windows section](/user/travis-ci-vcs-proxy#windows) below in the *P4 CLI Usage* chapter.
39+
3440
## Setting up repositories and organization TCI Proxy
3541

3642
You will go through following major steps in configuration
@@ -73,16 +79,18 @@ The next step is to add a repository to your Organization. Use the `Add Reposito
7379

7480
1. In **Assembla**:
7581
1. First, navigate to your selected SVN Repository, and select the `Source` option.
76-
2. On the right-hand menu, use the `Checkout` option, select 'SSH' and note down both the `REPO_NAME` and the `svn+ssh://` link. You will need these in TCI VS Proxy.
77-
3. Navigate to your SVN Repository `Settings` option, and select the `Deploy SSH keys` option - add here the key you intend to use with TCI VCS Proxy and Travis CI (or copy an already added one if you wish to).
82+
2. On the right-hand menu, use the `Checkout` option, **select 'SSH'** and note down both the `REPO_NAME` and the `svn+ssh://` link. You will need these in TCI VS Proxy.
83+
3. Navigate to your SVN Repository `Settings` option, and select the `Deploy SSH keys` option - add here the **public** key you intend to use with TCI VCS Proxy and Travis CI (or copy an already added one if you wish to). Please refer to [Assembla - using SVN+SSH protocol](https://articles.assembla.com/en/articles/1137042-using-svn-ssh-protocol) for more details.
84+
- **Please note**: for the integration with Travis CI VCS Proxy you will need a key with no passphrase generated, e.g. via `ssh-keygen -t rsa -f test_key_with_no_passphrase -N ""` due to Travis CI VCS Proxy conciously not wanting to store your SSH key passwords for automated connection
85+
- **Please note**: When pasting a public SSH Key in Assembla Repository settings, make sure it has 'write access' checked in order to make the integration with TCI VCS Proxy work. This is current Assembla requirement for authorizing the connection. Neither Travis CI VCS Proxy nor Travis CI requires write access to your repositories - only read access is needed to set up Travis CI VCS Proxy and trigger builds in Travis CI.
7886
4. Next, navigate to your SVN Repository `Settings` option, and select `Travis VCS Proxy integration` - enter the same listener token previously defined in your TCI VCS Proxy Organization.
7987
2. In **TCI VCS Proxy** (from the `Add Repository` view):
8088
1. First, select TCI VCS Proxy Organization.
8189
2. In the `Name` field - paste the REPO_NAME copied from Assembla.
82-
3. In the `URL` field - paste the svn+ssh url copied from Assembla.
90+
3. In the `URL` field - paste the **svn+ssh://** url copied from Assembla.
8391
4. `SVN REALM` - in the case of Assembla, leave the field empty.
8492
5. `USERNAME` - provide your Assembla user name.
85-
6. `SSH KEY` - paste the selected SSH key in the 'Deploy SSH Keys' setting for an Assembla SVN repository.
93+
6. `SSH KEY` - paste the selected private SSH key in the 'Deploy SSH Keys' setting for an Assembla SVN repository.
8694
7. Click the 'Add Repository' button to complete the configuration.
8795

8896
The first user adding an SVN repository to TCI VCS Proxy organization becomes an ‘admin’ for this repository. Therefore, we recommend Assembla Space owners to perform this action in TCI VCS Proxy.
@@ -129,21 +137,22 @@ You can access your P4 environment variables by running in your command line `ca
129137
## Inviting collaborators to TCI VCS Proxy Organization
130138

131139
To allow users to trigger builds in Travis CI, first, you must add them as members of the organization in the TCI VCS Proxy.
132-
Please note: Only TCI VCS Proxy users can trigger builds in Travis CI. If a user, who is not a member of the organization in the TCI VCS Proxy but has access to the P4 repository, performs a commit - then the commit will not trigger a build in TCI. Thus, to trigger the build, a subsequent commit must be done by a user recognized by TCI VCS Proxy must make a subsequent commit and synchronize it into Travis CI. Or perform a manual build trigger from the TCI user interface to trigger the build.
133140

134-
In the TCI VCS Proxy, please navigate to the `Repositories` screen and select an organization linked to one of the already added repositories. An `Organization view` appears, with a list of members and their assigned roles.
141+
Please note: Only TCI VCS Proxy users can trigger builds in Travis CI. If a user, who is not a member of the organization in the TCI VCS Proxy but has access to the P4 repository, performs a commit - then the commit will not trigger a build in TCI. Thus, to trigger the build in Travis CI, a subsequent commit must be done by a user recognized by TCI VCS Proxy. Alternatively, you can perform a manual build trigger from the Travis CI user interface to initiate the build.
135142

136-
> As of the Beta version, TCI VCS Proxy doesn’t provide a list of created organizations in order to limit various security-related use cases.
143+
In the TCI VCS Proxy, please navigate to the `Repositories` screen and in the list of repositories **click on organization name in a repository row**. This will open screen an `Organization view` for organization linked with the repository, with a list of members and their assigned roles.
144+
145+
> As of the Beta version, TCI VCS Proxy doesn’t provide a list of created organizations linked to the user account in order to limit various security-related use cases. We're interested in feedback on that part from you.
137146
138147
To invite a collaborator, use the `Invite user` button. The invited collaborator will receive an email notification with the link to activate the account.
139148

140149
During the closed Beta, a TCI VCS Proxy account is automatically created for the invited collaborator. Invited users should follow the instructions from the email to complete the account configuration process.
141150

142-
> As of the Beta version, TCI VCS Proxy doesn’t list a list of repositories that invited users can access straight after the first login. For security reasons, each user will need to re-add the repositories to their accounts through the `Add repository` steps and provide the required credentials.
151+
> As of the Beta version, once an invited user signs in, TCI VCS Proxy doesn’t present a list of repositories that invited user can access straight after the first login for security reasons.
143152
144-
Once a collaborator signs in to TCI VCS Proxy and sets their 2FA, they can navigate to the `Repositories` screen. First, every user needs to `Add Repository` as explained in the [Add repository to the Organization](#add-repository-to-the-organization) section.
153+
Once a collaborator signs in to TCI VCS Proxy and sets their 2FA, they can navigate to the `Repositories` screen. First, every user needs to `Add Repository` as explained in the [Add repository to the Organization](#add-repository-to-the-organization) section. During that process collaborator must provide individual access credentials to the repository. Only after that step is completed, the Repository will appear in the list of repositories.
145154

146-
Please note that a TCI VCS Proxy user is re-adding a Repository already linked to their account to the TCI VCS Proxy organization. If an invited, non-admin collaborator tries to add a completely new repository to the existing TCI VCS Proxy organization. Such an attempt will fail with an error.
155+
Please note that a TCI VCS Proxy user invited to the organization is actually re-adding a Repository already linked the TCI VCS Proxy organization. If an invited, non-admin (in terms of TCI VCS Proxy Organization role) collaborator tries to add a completely new repository to the existing TCI VCS Proxy organization the action will fail with an error.
147156

148157
> As inconvenient as it may seem, this forces every user to provide correct access credentials to the repository. This process is a one-time action for each repository and aims to protect an individual´s token/ssh keys from being shared unconsciously with other TCI Proxy Users. We prefer a more secure approach to accessing your source code and are curious about your feedback on the subject.
149158
@@ -166,7 +175,13 @@ A TCI VCS Proxy user invited to a TCI VCS Proxy organization can:
166175
* Re-add a TCI VCS Proxy repository previously added to the TCI VCS Proxy organization by the organization admin to make it visible under this person´s account.
167176
* Edit the re-added TCI VCS Proxy repository personal access credentials.
168177

169-
Upon synchronizing of TCI VCS Proxy organization with Travis CI, a `member` becomes a Travis CI organization member. Members in the main Travis CI, have access to respective repository builds and jobs information.
178+
Upon synchronizing of TCI VCS Proxy organization with Travis CI, a `member` becomes a Travis CI organization member. Members in the main Travis CI, have access to respective repository builds and jobs information. TCI VCS Proxy translates user access rights to the single repository (and forwards that information to Travis CI) in accordance with following rule of thumb:
179+
180+
| Repository type | Admin of the repository | Write access to the repository | Read access to the repository |
181+
| --------------- | --------------------------------------------- | -------------------------------------- | ----------------------------- |
182+
| P4 (Perforce) | derived from owner/admin in P4 | derived from P4 access rights | derived from P4 access rights |
183+
| SVN | first user adding repository to TCI VCS Proxy organization | all subsequent users adding repository (write-access can commit and trigger a build) | N/A |
184+
170185

171186
The builds in Travis CI are executed based on the personal access credentials for each account configured in TCI VCS Proxy. Thus, only commits performed by the TCI VCS Proxy users with correct P4/SVn credentials may trigger automatic builds in the Travis CI.
172187

@@ -183,25 +198,16 @@ Such constraints may be beneficial for Assembla spaces with multiple P4 reposito
183198

184199
> As of the closed Beta launch, we recommend using individual listener tokens for each Assembla Cloud P4 repository. Meanwhile, we are working on improving the handling of shared TCI Proxy Organization-level listener tokens for your convenience.
185200
186-
## I want to build with Travis CI
187-
188-
Once the Travis CI VCS Proxy configuration is ready for at least one organization and repository, please follow the instructions in [Getting started with Travis CI using Travis CI VCS Proxy](/user/travis-ci-vcs-proxy-get-started/).
189-
190-
The general workflow is summarized in the following picture:
191-
192-
![P4 SVN TCI drawing](/user/images/P4_SVN_TCI_drawing.png)
193-
194-
## Assembla/Perforce CLI usage
201+
## P4 CLI Usage
195202

196-
This is how you get around the CLI for Assembla, specifically when you want to push something to your Assembla repository from the CLI, the Perforce Graphical Version is not the most intuitive, and I just prefer the CLI.
203+
### Usage
197204

198-
## Usage
205+
Below example uses [Assembla Cloud](https://get.assembla.com/perforce/) P4 repository.
199206

200207
Make a directory entitled `p4-test` and then have another directory called `main`. In the `main` directory, make a `.travis.yml` file with the following directions:
201208

202209
```yaml
203-
dist: focal
204-
language: ruby
210+
language: ruby
205211
rvm:
206212
- 2.2
207213
- jruby
@@ -210,10 +216,11 @@ Make a directory entitled `p4-test` and then have another directory called `main
210216
Here's some sample environment variables:
211217
212218
```bash
213-
P4PORT=ssl:p4-us.assembla.com:xxxx # Your port number.
214-
P4HOST=YOURHOST
215-
P4CLIENT=client # Can be called whatever.
219+
P4PORT=ssl:p4-us.assembla.com:30920
220+
P4HOST=travis-ci-ext/Travis-CI-P4-and-SVN-demo-space.8
221+
P4CLIENT=montana6
216222
P4USER=MontanaMendy
223+
P4_ssl:p4-us.assembla.com:30920_CHARSET=auto
217224
P4CONFIG=.p4config
218225
```
219226
In `P4CLIENT` put what your workspace name is (can be anything), then run the following:
@@ -234,13 +241,24 @@ Then make sure your `p4 info` matches to your environment variables, then run:
234241
p4 reconcile
235242
```
236243

237-
Then push up your files that are in your `p4-test` repo:
244+
Then push up your files:
238245

239246
```bash
240247
p4 submit -d "import"
241248
```
242249

243-
## VCS Proxy
250+
### Windows
251+
252+
If you're using Windows to push changes into Perforce Helix Core repository in Assembla, please check also:
253+
254+
<a href="https://articles.assembla.com/en/articles/998589-get-started-with-perforce-using-p4v" target="_blank">Get Started with Perforce Using P4V</a>
255+
256+
This article shows how to set up local visual P4 client on Windows machine to interact with your P4 repository.
257+
258+
Please note that actual builds in Travis CI over P4 source code are executed within Linux build environment.
259+
260+
261+
### VCS Proxy
244262

245263
You'll want to make sure your repository is showing up on Travis CI VCS Proxy, it should look like this if you were successful:
246264

@@ -250,4 +268,18 @@ Check back on Assembla and see if your files are there, it should look like this
250268

251269
<img width="846" alt="Screen Shot 2022-06-14 at 11 06 40 PM" src="https://user-images.githubusercontent.com/20936398/173754520-ba44a32e-bd5b-4845-9a73-ade01f485e0d.png">
252270

253-
You'll see that I pushed successfully, with my Assembla username. You can see the `.travis.yml` I pushed to Assembla that will ultimately be built running on Perforce, and you're set.
271+
After you pushed successfully, with your Assembla username, you can see my `.travis.yml` in Assembla. That will ultimately trigger a build in Travis CI Beta App on Perforce sources:
272+
273+
<img width="661" alt="Screen Shot 2022-06-14 at 11 08 20 PM" src="https://user-images.githubusercontent.com/20936398/173754690-cc112ee0-1ca0-486e-84d8-252eb59acad6.png">
274+
275+
### More on Assembla Cloud Perforce
276+
277+
You may find more of the useful information in <a href="https://articles.assembla.com/en/collections/33902-using-perforce" target="_blank">Assembla articles on working with Perforce Helix Core<a/>.
278+
279+
## I want to build with Travis CI
280+
281+
Once the Travis CI VCS Proxy configuration is ready for at least one organization and repository, please follow the instructions in [Getting started with Travis CI using Travis CI VCS Proxy](/user/travis-ci-vcs-proxy-get-started/).
282+
283+
The general workflow is summarized in the following picture:
284+
285+
![P4 SVN TCI drawing](/user/images/P4_SVN_TCI_drawing.png)

user/triggering-builds.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ layout: en
66

77
Trigger Travis CI builds using the API V3 by sending a POST request to `/repo/{slug|id}/requests`:
88

9-
1. Get an API token from your Travis CI [Profile page](https://travis-ci.com/profile). You'll need the token to authenticate most of these API requests.
9+
1. Get an API token from your Travis CI [settings page](https://app.travis-ci.com/account/preferences). You'll need the token to authenticate most of these API requests.
1010

1111
You can also use the Travis CI [command line client](https://github.com/travis-ci/travis.rb#readme)
1212
to get your API token:

0 commit comments

Comments
 (0)