From 902a7c4033cf9cc3d31eee31e69917e12fedab68 Mon Sep 17 00:00:00 2001 From: Bryan MacFarlane Date: Mon, 13 Jun 2016 18:47:41 -0700 Subject: [PATCH] 2.102.0 Doc Updates (#287) * 2.102.0 docs * 2.102.0 role changes * 2.102.0 status update * remove dupe message * start links * troubleshooting md * typo * troubleshooting content - didn't save * tweak * system.debug note * fiddler docs --- README.md | 20 ++++++----- docs/config.md | 3 -- docs/start/moreconfig.md | 2 ++ docs/start/nixsvc.md | 50 +++++++++++++++++---------- docs/start/roles.md | 15 ++++---- docs/start/roles.png | Bin 41293 -> 46154 bytes docs/start/startosx.md | 6 ++-- docs/start/startredhat.md | 6 ++-- docs/start/startubuntu.md | 6 ++-- docs/start/startwin.md | 6 ++-- docs/troubleshooting.md | 71 ++++++++++++++++++++++++++++++++++++++ 11 files changed, 132 insertions(+), 53 deletions(-) delete mode 100644 docs/config.md create mode 100644 docs/troubleshooting.md diff --git a/README.md b/README.md index fd8bd73940..74fd7cf44f 100644 --- a/README.md +++ b/README.md @@ -9,27 +9,25 @@ Supported on Windows, OSX, Ubuntu and Red Hat. Written for the .NET Core CLR as ## Status -A preview is available for Ubuntu, RedHat and OSX for VSTS. The current preview is more feature complete than the node agent bringing Auto Update, Cancellation, Run as a svc on OSX and Linux, and Gated support. +The preview is feature complete on all platforms and supported for production use. -What's missing from the preview? Windows tf.exe support is finishing up. +The current preview is more feature complete than the node agent bringing Auto Update, Cancellation, Run as a svc on OSX and Linux, and Gated support. | | Build & Test | Preview | Release | |---|:-----:|:-----:|:-----:| -|![Apple](docs/res/apple_med.png) **OSX**|![Build & Test](https://mseng.visualstudio.com/_apis/public/build/definitions/b924d696-3eae-4116-8443-9a18392d8544/3080/badge?branch=master)| [Preview 6 v2.101.1](https://github.com/Microsoft/vsts-agent/releases/tag/v2.101.1) | June | -|![Ubuntu](docs/res/ubuntu_med.png) **Ubuntu**|![Build & Test](https://mseng.visualstudio.com/_apis/public/build/definitions/b924d696-3eae-4116-8443-9a18392d8544/2853/badge?branch=master)| [Preview 6 v2.101.1](https://github.com/Microsoft/vsts-agent/releases/tag/v2.101.1) | June | -|![RedHat](docs/res/redhat_med.png) **RedHat**|![Build & Test](https://mseng.visualstudio.com/_apis/public/build/definitions/b924d696-3eae-4116-8443-9a18392d8544/3418/badge?branch=master)| [Preview 6 v2.101.1](https://github.com/Microsoft/vsts-agent/releases/tag/v2.101.1) | June | -|![Win](docs/res/win_med.png) **Windows**|![Build & Test](https://mseng.visualstudio.com/_apis/public/build/definitions/b924d696-3eae-4116-8443-9a18392d8544/2850/badge?branch=master)| [Preview 3 v2.101.1](https://github.com/Microsoft/vsts-agent/releases/tag/v2.101.1) | | +|![Apple](docs/res/apple_med.png) **OSX**|![Build & Test](https://mseng.visualstudio.com/_apis/public/build/definitions/b924d696-3eae-4116-8443-9a18392d8544/3080/badge?branch=master)| [RC v2.102.0](https://github.com/Microsoft/vsts-agent/releases/tag/v2.102.0) | Next Drop | +|![Ubuntu](docs/res/ubuntu_med.png) **Ubuntu**|![Build & Test](https://mseng.visualstudio.com/_apis/public/build/definitions/b924d696-3eae-4116-8443-9a18392d8544/2853/badge?branch=master)| [RC v2.102.0](https://github.com/Microsoft/vsts-agent/releases/tag/v2.102.0) | Next Drop | +|![RedHat](docs/res/redhat_med.png) **RedHat**|![Build & Test](https://mseng.visualstudio.com/_apis/public/build/definitions/b924d696-3eae-4116-8443-9a18392d8544/3418/badge?branch=master)| [RC v2.102.0](https://github.com/Microsoft/vsts-agent/releases/tag/v2.102.0) | Next Drop | +|![Win](docs/res/win_med.png) **Windows**|![Build & Test](https://mseng.visualstudio.com/_apis/public/build/definitions/b924d696-3eae-4116-8443-9a18392d8544/2850/badge?branch=master)| [Preview 4 v2.102.0](https://github.com/Microsoft/vsts-agent/releases/tag/v2.102.0) | July | ## Preview Support -This is the current state of what works with the preview. - This agent can be used for the VSTS service and it replaces the node agent for TFS2015 On-Prem. | Scenario | OSX/Unix | Windows | Comment | |:-------------:|:-----:|:-----:|:-----:| | VSTS Git | Yes | Yes | -| VSTS TfsVC | Yes | Soon | +| VSTS TfsVC | Yes | Yes | | TFS2015 Git | Yes | No | Win use agent with 2015 | | TFS2015 TfsVC | Yes | No | Win use agent with 2015 | @@ -49,6 +47,10 @@ This agent can be used for the VSTS service and it replaces the node agent for T ![redhat](docs/res/redhat_sm.png) [Start RedHat](docs/start/startredhat.md) +## Troubleshooting + +Troubleshooting tips are [located here](docs/troubleshooting.md) + ## Contribute For developers that want to contribute, [read here](docs/contribute.md) on how to build and test. diff --git a/docs/config.md b/docs/config.md deleted file mode 100644 index 24766d5b1b..0000000000 --- a/docs/config.md +++ /dev/null @@ -1,3 +0,0 @@ -# Configuration - -Coming Soon diff --git a/docs/start/moreconfig.md b/docs/start/moreconfig.md index 8c85f97b62..156bc7615d 100644 --- a/docs/start/moreconfig.md +++ b/docs/start/moreconfig.md @@ -19,6 +19,8 @@ Successfully added the agent # Unconfigure +> Important: If you're running as a service on Linux/OSX, ensure you `stop` then `uninstall` the service before unconfiguring. See [Nix Service Config](nixsvc.md) + ```bash $ ./config.sh remove Removing service diff --git a/docs/start/nixsvc.md b/docs/start/nixsvc.md index 95eb9ffb56..8df8dce75b 100644 --- a/docs/start/nixsvc.md +++ b/docs/start/nixsvc.md @@ -1,18 +1,24 @@ # Running As A Service On Unix and OSX -## Configuration +Key Points: + - This is a convenience which only creates OS specific service files. + - SystemD is used on Linux. Ubuntu 16 LTS, Redhat 7.1 has SystemD + - SystemD requires sudo so all scripts below must be called with sudo. OSX does not. -**During configuration, answer Y to run as a service**. +## Install -The systemd and launchagent files run ./runsvc.sh which will set PATH to that if it's present. +Install will create a LaunchAgent plist on OSX or a systemd unit file on Linux -You can also inject anything you want to run when the service runs. For example setting up environment, calling other scripts etc... - -./runsvc.sh -``` -# insert anything to setup env when running as a service +```bash +$ ./svc.sh install +... +Creating runsvc.sh +Creating .Service +svc install complete ``` +Service files point to `./runsvc.sh` which will setup the environment and start the agents host. See Environment section below. + Start and stop the service after making changes ## Managing the Service @@ -74,7 +80,7 @@ On OSX the convenience default is to create the service as a LaunchAgent. A Lau When you install and/or configure tools, your path is often setup or other environment variables are set. Examples are PATH, JAVA_HOME, ANT_HOME, MYSQL_PATH etc... -If your environment changes at any time, you can run env.sh and it will update your path. You can also manually edit .Env file. Changes are retained. +If your environment changes at any time, you can run env.sh and it will update your path. You can also manually edit .env file. Changes are retained. Stop and start the service for changes to take effect. @@ -90,23 +96,34 @@ Started: 15397 0 vsts.agent.bryanmac.testsvc2 ``` +## Environment + Configuring as a service will snapshot off your PATH and other "interesting variables" like LANG, JAVA_HOME etc.. When the service starts, it will read these and set. This allows for unified environment management between ```bash $ ls -la --rwxrwx--- 1 bryanmac staff 189 May 29 11:42 .Agent --rwxrwx--- 1 bryanmac staff 106 May 29 11:41 .Credentials --rw-r--r-- 1 bryanmac staff 58 May 29 11:44 .Env --rw-r--r-- 1 bryanmac staff 187 May 29 11:40 .Path +-rwxrwx--- 1 bryanmac staff 189 May 29 11:42 .agent +-rwxrwx--- 1 bryanmac staff 106 May 29 11:41 .credentials +-rw-r--r-- 1 bryanmac staff 58 May 29 11:44 .env +-rw-r--r-- 1 bryanmac staff 187 May 29 11:40 .path ... -rwxr-xr-x 1 bryanmac staff 546 May 29 11:40 env.sh ``` +Run ./env.sh to update. + +You can also inject anything you want to run when the service runs. For example setting up environment, calling other scripts etc... + +./runsvc.sh +``` +# insert anything to setup env when running as a service +``` + ## Service Files This is a convenience that simply creates a service file for you can sets permissions. You are free to manually configure and control your service using alternate methods. -Details are in .Service file in root of the agent +Details are in .service file in root of the agent OSX LaunchAgent: ~/Library/LaunchAgents/vsts.agent.{accountName}.{agentName}.plist Linux SystemD: /etc/systemd/system/vsts.agent.{accountName}.{agentName}.service @@ -118,8 +135,3 @@ Linux: ./bin/vsts.agent.service.template For example, on OSX you could use that template to run as a launch daemon if you are not needing UI tests and/or don't want to configure auto logon lock. [Details Here](https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/CreatingLaunchdJobs.html) - - - - - diff --git a/docs/start/roles.md b/docs/start/roles.md index ecba3cec11..4ad3e01a71 100644 --- a/docs/start/roles.md +++ b/docs/start/roles.md @@ -1,17 +1,20 @@ # Configure Account and Roles -VSTS only for now. On-prem coming with NTLM support in the works. +## VSTS Create a PAT token. [Step by Step here](http://roadtoalm.com/2015/07/22/using-personal-access-tokens-to-access-visual-studio-online/) -Add the user you created the PAT token for to *both*: +## On Premises TFS - 1. Agent Pool Administrators (allows to register) - 2. Agent Pool Service Accounts (allows listening to build queue) +You can use a domain user but it's recommended to create a local windows user on each of your application tiers specifically for registering build agents. + +## Add to Role + +Add the user from above to only the Agent Pool Administrators which allows you to register the agent. ![Agent Roles](roles.png "Agent Roles") >> TIPS: >> You can add to roles for a specific pool or select "All Pools" on the left and grant for all pools. This allows the account owner to delegate build administration globally or for specific pools. [More here](https://msdn.microsoft.com/en-us/Library/vs/alm/Build/agents/admin) ->> The PAT token is only used to listen to the message queue for a build job ->> When a build is run, it will generate an OAuth token for the scoped identity selected on the general tab of the build definition. That token is short lived and will be used to access resource in VSTS \ No newline at end of file +>> The role is only needed to register the agent. A token is downloaded to listen to the queue. +>> When a build is run, it will generate an OAuth token for the scoped identity selected on the general tab of the build definition. That token is short lived and will be used to access resource in VSTS. The account used to register the agent has no bearing on the build run time credentials \ No newline at end of file diff --git a/docs/start/roles.png b/docs/start/roles.png index 59651872d175772541faa93fbfcd866f2a3ca702..1287947350e389279c3f2a6c07944ef93965e162 100644 GIT binary patch literal 46154 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 NnzA;yO3^Ch{{Zv^ZoB{h diff --git a/docs/start/startosx.md b/docs/start/startosx.md index 42d8bb6bed..1643f0d64b 100644 --- a/docs/start/startosx.md +++ b/docs/start/startosx.md @@ -6,13 +6,13 @@ ## Step 2: Download from Releases -Download the agent from [github releases](https://github.com/Microsoft/vsts-agent/releases/tag/v2.101.1) +Download the agent from [github releases](https://github.com/Microsoft/vsts-agent/releases/tag/v2.102.0) ## Step 3: Create the agent ```bash ~/$ mkdir myagent && cd myagent -~/myagent$ tar xzf ~/Downloads/vsts-agent-osx.10.11-x64-2.101.1.tar.gz +~/myagent$ tar xzf ~/Downloads/vsts-agent-osx.10.11-x64-2.102.0.tar.gz ``` ## Step 4: Configure @@ -29,8 +29,6 @@ Download the agent from [github releases](https://github.com/Microsoft/vsts-agen ## Step 5: Optionally run the agent interactively -If you didn't run as a service above: - ```bash ~/myagent$ ./run.sh ``` diff --git a/docs/start/startredhat.md b/docs/start/startredhat.md index d9149d0afc..0877ef53d0 100644 --- a/docs/start/startredhat.md +++ b/docs/start/startredhat.md @@ -6,13 +6,13 @@ ## Step 2: Download from Releases -Download the agent from [github releases](https://github.com/Microsoft/vsts-agent/releases/tag/v2.101.1) +Download the agent from [github releases](https://github.com/Microsoft/vsts-agent/releases/tag/v2.102.0) ## Step 3: Create the agent ```bash ~/$ mkdir myagent && cd myagent -~/myagent$ tar xzf ~/Downloads/vsts-agent-rhel.7.2-x64-2.101.1.tar.gz +~/myagent$ tar xzf ~/Downloads/vsts-agent-rhel.7.2-x64-2.102.0.tar.gz ``` ## Step 4: Configure @@ -29,8 +29,6 @@ Download the agent from [github releases](https://github.com/Microsoft/vsts-agen ## Step 5: Optionally run the agent interactively -If you didn't run as a service above: - ```bash ~/myagent$ ./run.sh ``` diff --git a/docs/start/startubuntu.md b/docs/start/startubuntu.md index 904b0e2b91..9e42855cc5 100644 --- a/docs/start/startubuntu.md +++ b/docs/start/startubuntu.md @@ -8,13 +8,13 @@ ## Step 2: Download from Releases -Download the agent from [github releases](https://github.com/Microsoft/vsts-agent/releases/tag/v2.101.1) +Download the agent from [github releases](https://github.com/Microsoft/vsts-agent/releases/tag/v2.102.0) ## Step 3: Create the agent ```bash ~/$ mkdir myagent && cd myagent -~/myagent$ tar xzf ~/Downloads/vsts-agent-ubuntu.14.04-x64-2.101.1.tar.gz +~/myagent$ tar xzf ~/Downloads/vsts-agent-ubuntu.14.04-x64-2.102.0.tar.gz ``` ## Step 4: Configure @@ -31,8 +31,6 @@ Download the agent from [github releases](https://github.com/Microsoft/vsts-agen ## Step 5: Optionally run the agent interactively -If you didn't run as a service above: - ```bash ~/myagent$ ./run.sh ``` diff --git a/docs/start/startwin.md b/docs/start/startwin.md index ac1c044664..5dffaca5c1 100644 --- a/docs/start/startwin.md +++ b/docs/start/startwin.md @@ -1,20 +1,18 @@ # ![win](../res/win_med.png) Windows Agent -> NOTE: Preview 1 only has git support. TFSVC support is in progress for the next preview. - ## Step 1: System Requirements [Read here](../preview/latebreaking.md) to ensure system packages are installed ## Step 2: Download from Releases -Download the agent from [github releases](https://github.com/Microsoft/vsts-agent/releases/tag/v2.101.1) +Download the agent from [github releases](https://github.com/Microsoft/vsts-agent/releases/tag/v2.102.0) ## Step 3: Create the agent ```bash c:\ mkdir myagent && cd myagent -C:\myagent> Add-Type -AssemblyName System.IO.Compression.FileSystem ; [System.IO.Compression.ZipFile]::ExtractToDirectory("$HOME\Downloads\vsts-agent-win7-x64-2.101.1.zip", "$PWD") +C:\myagent> Add-Type -AssemblyName System.IO.Compression.FileSystem ; [System.IO.Compression.ZipFile]::ExtractToDirectory("$HOME\Downloads\vsts-agent-win7-x64-2.102.0.zip", "$PWD") ``` ## Step 4: Configure diff --git a/docs/troubleshooting.md b/docs/troubleshooting.md new file mode 100644 index 0000000000..0633116ecc --- /dev/null +++ b/docs/troubleshooting.md @@ -0,0 +1,71 @@ +# Troubleshooting + +The agent sends logs to the server but some failures such as configuration, networking or permissions prevent that. It requires investigating within the agent. + +Often these logs are most relevant to the product but they can sometimes provide hints to a user as what could be wrong. + +## System.Debug + +If you are having issues with a build, the first step is to set System.Debug to true on the build definitions variables tab. The agent and tasks will emit [debug]xxx lines for more detailed insight into what the specific task is doing. + +## Agent Trace Logs + +Logs are in the _diag folder. + +The agent has two parts. The agent which listens to the build queue. When it gets a build message, it creates a worker process to run that build. + +For example: +```bash +$ ls -la _diag/ +-rwxr--r-- 1 bryanmac staff 23126 Jun 11 06:43 Agent_20160611-104223-utc.log +-rwxr--r-- 1 bryanmac staff 26046 Jun 11 08:39 Agent_20160611-123755-utc.log +-rwxr--r-- 1 bryanmac staff 240035 Jun 11 08:38 Worker_20160611-123825-utc.log +-rwxr--r-- 1 bryanmac staff 220196 Jun 11 08:38 Worker_20160611-123843-utc.log +-rwxr--r-- 1 bryanmac staff 220012 Jun 11 08:39 Worker_20160611-123858-utc.log +``` + +If the agent isn't picking up builds, the agent logs are likely the most relevant. If a build starts running and you want to get details of that build, the specific worker log is relevant. + +Secrets are masked out of the logs. + +## Http Tracing Windows + +Start [Fiddler](http://www.telerik.com/fiddler). +It's recommended to only listen to agent traffic. File, Capture Traffic off (F12) + +Let the agent know to use the proxy: + +```bash +set VSTS_HTTP_PROXY=https://127.0.0.1:8888 +``` + +Run the agent interactively. If you're running as a service, you can set as the environment variable in control panel for the account the service is running as. + +Restart the agent. + +TODO: video + +## Http Tracing OSX / Linux + +It's easy to capture the http trace of the agent using Charles Proxy (similar to Fiddler on windows). + +TODO: video + +Start Charles Proxy +Charles: Proxy > Proxy Settings > SSL Tab. Enable. Add URL +Charles: Proxy > Mac OSX Proxy. Recommend disabling to only see agent traffic. + +```bash +export VSTS_HTTP_PROXY=https://127.0.0.1:8888 +``` + +Run the agent interactively. If it's running as a service, you can set in the .env file. See [nix service](start/nixsvc.md) + +Restart the agent. + +## Security Notice + +HTTP traces and trace files can contain credentials. + +1. Do not POST them on a publically accessible site. +2. If you send them to the product team, they will be treated securely and discarded after the investigation.