113113 < div data-md-component ="skip ">
114114
115115
116- < a href ="#fly -workers " class ="md-skip ">
116+ < a href ="#managing -workers " class ="md-skip ">
117117 Skip to content
118118 </ a >
119119
42014201 < ul class ="md-nav__list " data-md-component ="toc " data-md-scrollfix >
42024202
42034203 < li class ="md-nav__item ">
4204+ < a href ="#managing-workers " class ="md-nav__link ">
4205+ < span class ="md-ellipsis ">
4206+
4207+ Managing Workers
4208+
4209+ </ span >
4210+ </ a >
4211+
4212+ < nav class ="md-nav " aria-label ="Managing Workers ">
4213+ < ul class ="md-nav__list ">
4214+
4215+ < li class ="md-nav__item ">
42044216 < a href ="#fly-workers " class ="md-nav__link ">
42054217 < span class ="md-ellipsis ">
42064218
42104222 </ a >
42114223
42124224</ li >
4213-
4214- < li class ="md-nav__item ">
4225+
4226+ < li class ="md-nav__item ">
42154227 < a href ="#fly-prune-worker " class ="md-nav__link ">
42164228 < span class ="md-ellipsis ">
42174229
42214233 </ a >
42224234
42234235</ li >
4224-
4225- < li class ="md-nav__item ">
4236+
4237+ < li class ="md-nav__item ">
42264238 < a href ="#fly-land-worker " class ="md-nav__link ">
42274239 < span class ="md-ellipsis ">
42284240
42314243 </ span >
42324244 </ a >
42334245
4246+ </ li >
4247+
4248+ </ ul >
4249+ </ nav >
4250+
42344251</ li >
42354252
42364253 < li class ="md-nav__item ">
4237- < a href ="#fly-containers " class ="md-nav__link ">
4254+ < a href ="#broadcast-message-system " class ="md-nav__link ">
42384255 < span class ="md-ellipsis ">
42394256
4240- fly containers
4257+ Broadcast Message System
4258+
4259+ </ span >
4260+ </ a >
4261+
4262+ < nav class ="md-nav " aria-label ="Broadcast Message System ">
4263+ < ul class ="md-nav__list ">
4264+
4265+ < li class ="md-nav__item ">
4266+ < a href ="#fly-set-wall " class ="md-nav__link ">
4267+ < span class ="md-ellipsis ">
4268+
4269+ fly set-wall
42414270
42424271 </ span >
42434272 </ a >
42444273
4274+ </ li >
4275+
4276+ < li class ="md-nav__item ">
4277+ < a href ="#fly-get-wall " class ="md-nav__link ">
4278+ < span class ="md-ellipsis ">
4279+
4280+ fly get-wall
4281+
4282+ </ span >
4283+ </ a >
4284+
4285+ </ li >
4286+
4287+ < li class ="md-nav__item ">
4288+ < a href ="#fly-clear-wall " class ="md-nav__link ">
4289+ < span class ="md-ellipsis ">
4290+
4291+ fly clear-wall
4292+
4293+ </ span >
4294+ </ a >
4295+
4296+ </ li >
4297+
4298+ </ ul >
4299+ </ nav >
4300+
42454301</ li >
42464302
42474303 < li class ="md-nav__item ">
4304+ < a href ="#diagnostic-troubleshooting " class ="md-nav__link ">
4305+ < span class ="md-ellipsis ">
4306+
4307+ Diagnostic / Troubleshooting
4308+
4309+ </ span >
4310+ </ a >
4311+
4312+ < nav class ="md-nav " aria-label ="Diagnostic / Troubleshooting ">
4313+ < ul class ="md-nav__list ">
4314+
4315+ < li class ="md-nav__item ">
4316+ < a href ="#fly-containers " class ="md-nav__link ">
4317+ < span class ="md-ellipsis ">
4318+
4319+ fly containers
4320+
4321+ </ span >
4322+ </ a >
4323+
4324+ </ li >
4325+
4326+ < li class ="md-nav__item ">
42484327 < a href ="#fly-volumes " class ="md-nav__link ">
42494328 < span class ="md-ellipsis ">
42504329
42544333 </ a >
42554334
42564335</ li >
4257-
4258- < li class ="md-nav__item ">
4336+
4337+ < li class ="md-nav__item ">
42594338 < a href ="#fly-curl " class ="md-nav__link ">
42604339 < span class ="md-ellipsis ">
42614340
42644343 </ span >
42654344 </ a >
42664345
4346+ </ li >
4347+
4348+ </ ul >
4349+ </ nav >
4350+
42674351</ li >
42684352
42694353 </ ul >
56845768 < ul class ="md-nav__list " data-md-component ="toc " data-md-scrollfix >
56855769
56865770 < li class ="md-nav__item ">
5771+ < a href ="#managing-workers " class ="md-nav__link ">
5772+ < span class ="md-ellipsis ">
5773+
5774+ Managing Workers
5775+
5776+ </ span >
5777+ </ a >
5778+
5779+ < nav class ="md-nav " aria-label ="Managing Workers ">
5780+ < ul class ="md-nav__list ">
5781+
5782+ < li class ="md-nav__item ">
56875783 < a href ="#fly-workers " class ="md-nav__link ">
56885784 < span class ="md-ellipsis ">
56895785
56935789 </ a >
56945790
56955791</ li >
5696-
5697- < li class ="md-nav__item ">
5792+
5793+ < li class ="md-nav__item ">
56985794 < a href ="#fly-prune-worker " class ="md-nav__link ">
56995795 < span class ="md-ellipsis ">
57005796
57045800 </ a >
57055801
57065802</ li >
5707-
5708- < li class ="md-nav__item ">
5803+
5804+ < li class ="md-nav__item ">
57095805 < a href ="#fly-land-worker " class ="md-nav__link ">
57105806 < span class ="md-ellipsis ">
57115807
57145810 </ span >
57155811 </ a >
57165812
5813+ </ li >
5814+
5815+ </ ul >
5816+ </ nav >
5817+
57175818</ li >
57185819
57195820 < li class ="md-nav__item ">
5720- < a href ="#fly-containers " class ="md-nav__link ">
5821+ < a href ="#broadcast-message-system " class ="md-nav__link ">
57215822 < span class ="md-ellipsis ">
57225823
5723- fly containers
5824+ Broadcast Message System
5825+
5826+ </ span >
5827+ </ a >
5828+
5829+ < nav class ="md-nav " aria-label ="Broadcast Message System ">
5830+ < ul class ="md-nav__list ">
5831+
5832+ < li class ="md-nav__item ">
5833+ < a href ="#fly-set-wall " class ="md-nav__link ">
5834+ < span class ="md-ellipsis ">
5835+
5836+ fly set-wall
57245837
57255838 </ span >
57265839 </ a >
57275840
5841+ </ li >
5842+
5843+ < li class ="md-nav__item ">
5844+ < a href ="#fly-get-wall " class ="md-nav__link ">
5845+ < span class ="md-ellipsis ">
5846+
5847+ fly get-wall
5848+
5849+ </ span >
5850+ </ a >
5851+
5852+ </ li >
5853+
5854+ < li class ="md-nav__item ">
5855+ < a href ="#fly-clear-wall " class ="md-nav__link ">
5856+ < span class ="md-ellipsis ">
5857+
5858+ fly clear-wall
5859+
5860+ </ span >
5861+ </ a >
5862+
5863+ </ li >
5864+
5865+ </ ul >
5866+ </ nav >
5867+
57285868</ li >
57295869
57305870 < li class ="md-nav__item ">
5871+ < a href ="#diagnostic-troubleshooting " class ="md-nav__link ">
5872+ < span class ="md-ellipsis ">
5873+
5874+ Diagnostic / Troubleshooting
5875+
5876+ </ span >
5877+ </ a >
5878+
5879+ < nav class ="md-nav " aria-label ="Diagnostic / Troubleshooting ">
5880+ < ul class ="md-nav__list ">
5881+
5882+ < li class ="md-nav__item ">
5883+ < a href ="#fly-containers " class ="md-nav__link ">
5884+ < span class ="md-ellipsis ">
5885+
5886+ fly containers
5887+
5888+ </ span >
5889+ </ a >
5890+
5891+ </ li >
5892+
5893+ < li class ="md-nav__item ">
57315894 < a href ="#fly-volumes " class ="md-nav__link ">
57325895 < span class ="md-ellipsis ">
57335896
57375900 </ a >
57385901
57395902</ li >
5740-
5741- < li class ="md-nav__item ">
5903+
5904+ < li class ="md-nav__item ">
57425905 < a href ="#fly-curl " class ="md-nav__link ">
57435906 < span class ="md-ellipsis ">
57445907
57475910 </ span >
57485911 </ a >
57495912
5913+ </ li >
5914+
5915+ </ ul >
5916+ </ nav >
5917+
57505918</ li >
57515919
57525920 </ ul >
57845952
57855953 < h1 > Administration</ h1 >
57865954
5787- < h2 id ="fly-workers "> < code > fly workers</ code > </ h2 >
5955+ < h2 id ="managing-workers "> Managing Workers</ h2 >
5956+ < h3 id ="fly-workers "> < code > fly workers</ code > </ h3 >
57885957< p > To list the currently registered workers, including additional metadata, run:</ p >
57895958< div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-0-1 "> < a id ="__codelineno-0-1 " name ="__codelineno-0-1 " href ="#__codelineno-0-1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > example< span class ="w "> </ span > workers
57905959</ span > </ code > </ pre > </ div >
57915960< p > This can be useful for monitoring the status of your workers, if you suspect that one keeps dropping out of the pool or
57925961getting tasked with too many containers, etc.</ p >
5793- < h2 id ="fly-prune-worker "> < code > fly prune-worker</ code > </ h2 >
5962+ < h3 id ="fly-prune-worker "> < code > fly prune-worker</ code > </ h3 >
57945963< p > To remove a stalled, landing, landed, or retiring worker, run:</ p >
57955964< div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-1-1 "> < a id ="__codelineno-1-1 " name ="__codelineno-1-1 " href ="#__codelineno-1-1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > example< span class ="w "> </ span > prune-worker< span class ="w "> </ span > --worker< span class ="w "> </ span > worker-name
57965965</ span > </ code > </ pre > </ div >
@@ -5802,30 +5971,53 @@ <h2 id="fly-prune-worker"><code>fly prune-worker</code></h2>
58025971< p class ="admonition-title "> Note</ p >
58035972< p > Running workers cannot be pruned, since they'll just re-register themselves anyway.</ p >
58045973</ div >
5805- < h2 id ="fly-land-worker "> < code > fly land-worker</ code > </ h2 >
5974+ < h3 id ="fly-land-worker "> < code > fly land-worker</ code > </ h3 >
58065975< p > To initiate landing of a worker and eventually (after draining) cause it to exit, run:</ p >
58075976< div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-3-1 "> < a id ="__codelineno-3-1 " name ="__codelineno-3-1 " href ="#__codelineno-3-1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > example< span class ="w "> </ span > land-worker< span class ="w "> </ span > --worker< span class ="w "> </ span > worker-name
58085977</ span > </ code > </ pre > </ div >
5809- < h2 id ="fly-containers "> < code > fly containers</ code > </ h2 >
5978+ < h2 id ="broadcast-message-system "> Broadcast Message System</ h2 >
5979+ < p > Concourse Admins who operate a big Concourse with many teams often want a way
5980+ to communicate to everyone that the system is unstable/recovering. Setting
5981+ a message on the Wall will result in a banner displaying the wall message in
5982+ the Concourse web UI. The following commands are used to manage the Wall.</ p >
5983+ < div class ="admonition tip ">
5984+ < p class ="admonition-title "> Fun Fact!</ p >
5985+ < p > "Wall" is a reference to the < a href ="https://en.wikipedia.org/wiki/Wall_(Unix) "> Unix < code > wall</ code > </ a > CLI.</ p >
5986+ </ div >
5987+ < h3 id ="fly-set-wall "> < code > fly set-wall</ code > </ h3 >
5988+ < p > < em > Requires being a member of the main team</ em > . To set a new wall with a message and expiration, run:</ p >
5989+ < div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-4-1 "> < a id ="__codelineno-4-1 " name ="__codelineno-4-1 " href ="#__codelineno-4-1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > main< span class ="w "> </ span > set-wall< span class ="w "> </ span > --message< span class ="o "> =</ span > < span class ="s2 "> "⚠️ Hello World, there is an error ⚠️"</ span > < span class ="w "> </ span > --ttl< span class ="o "> =</ span > 5m
5990+ </ span > </ code > </ pre > </ div >
5991+ < p > This will set a wall of "⚠️ Hello World, there is an error ⚠️" with an expiration of five minutes.</ p >
5992+ < h3 id ="fly-get-wall "> < code > fly get-wall</ code > </ h3 >
5993+ < p > To get the current wall, run:</ p >
5994+ < div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-5-1 "> < a id ="__codelineno-5-1 " name ="__codelineno-5-1 " href ="#__codelineno-5-1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > main< span class ="w "> </ span > get-wall
5995+ </ span > </ code > </ pre > </ div >
5996+ < h3 id ="fly-clear-wall "> < code > fly clear-wall</ code > </ h3 >
5997+ < p > < em > Requires being a member of the main team</ em > . To clear a current wall, run:</ p >
5998+ < div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-6-1 "> < a id ="__codelineno-6-1 " name ="__codelineno-6-1 " href ="#__codelineno-6-1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > main< span class ="w "> </ span > clear-wall
5999+ </ span > </ code > </ pre > </ div >
6000+ < h2 id ="diagnostic-troubleshooting "> Diagnostic / Troubleshooting</ h2 >
6001+ < h3 id ="fly-containers "> < code > fly containers</ code > </ h3 >
58106002< p > To list the active containers across all your workers, run:</ p >
5811- < div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-4 -1 "> < a id ="__codelineno-4 -1 " name ="__codelineno-4 -1 " href ="#__codelineno-4 -1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > example< span class ="w "> </ span > containers
6003+ < div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-7 -1 "> < a id ="__codelineno-7 -1 " name ="__codelineno-7 -1 " href ="#__codelineno-7 -1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > example< span class ="w "> </ span > containers
58126004</ span > </ code > </ pre > </ div >
58136005< p > This can be useful when discovering the containers available for < a href ="../../builds/#fly-intercept "> < code > fly intercept</ code > </ a > ing.</ p >
5814- < h2 id ="fly-volumes "> < code > fly volumes</ code > </ h2 >
6006+ < h3 id ="fly-volumes "> < code > fly volumes</ code > </ h3 >
58156007< p > To list the active volumes across all your workers, run:</ p >
5816- < div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-5 -1 "> < a id ="__codelineno-5 -1 " name ="__codelineno-5 -1 " href ="#__codelineno-5 -1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > example< span class ="w "> </ span > volumes
6008+ < div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-8 -1 "> < a id ="__codelineno-8 -1 " name ="__codelineno-8 -1 " href ="#__codelineno-8 -1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > example< span class ="w "> </ span > volumes
58176009</ span > </ code > </ pre > </ div >
58186010< p > This can be useful to observe the caches warming across your cluster, and could be a good indicator of disk use.</ p >
5819- < h2 id ="fly-curl "> < code > fly curl</ code > </ h2 >
6011+ < h3 id ="fly-curl "> < code > fly curl</ code > </ h3 >
58206012< p > To execute an arbitrary API request, you can run something like the following:</ p >
5821- < div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-6 -1 "> < a id ="__codelineno-6 -1 " name ="__codelineno-6 -1 " href ="#__codelineno-6 -1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > example< span class ="w "> </ span > curl< span class ="w "> </ span > /api/v1/info
6013+ < div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-9 -1 "> < a id ="__codelineno-9 -1 " name ="__codelineno-9 -1 " href ="#__codelineno-9 -1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > example< span class ="w "> </ span > curl< span class ="w "> </ span > /api/v1/info
58226014</ span > </ code > </ pre > </ div >
58236015< p > This command is just a shim that runs < code > curl</ code > under the hood. To pass flags to < code > curl</ code > , pass a < code > --</ code > argument after the
58246016path so that < code > fly</ code > can distinguish them from its own flags:</ p >
5825- < div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-7 -1 "> < a id ="__codelineno-7 -1 " name ="__codelineno-7 -1 " href ="#__codelineno-7 -1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > example< span class ="w "> </ span > curl< span class ="w "> </ span > /api/v1/builds< span class ="w "> </ span > --< span class ="w "> </ span > < span class ="se "> \</ span >
5826- </ span > < span id ="__span-7 -2 "> < a id ="__codelineno-7 -2 " name ="__codelineno-7 -2 " href ="#__codelineno-7 -2 "> </ a > < span class ="w "> </ span > -X< span class ="w "> </ span > PUT< span class ="w "> </ span > < span class ="se "> \</ span >
5827- </ span > < span id ="__span-7 -3 "> < a id ="__codelineno-7 -3 " name ="__codelineno-7 -3 " href ="#__codelineno-7 -3 "> </ a > < span class ="w "> </ span > -H< span class ="w "> </ span > < span class ="s2 "> "Content-type: application/json"</ span > < span class ="w "> </ span > < span class ="se "> \</ span >
5828- </ span > < span id ="__span-7 -4 "> < a id ="__codelineno-7 -4 " name ="__codelineno-7 -4 " href ="#__codelineno-7 -4 "> </ a > < span class ="w "> </ span > -d< span class ="w "> </ span > @plan.json
6017+ < div class ="language-shell highlight "> < pre > < span > </ span > < code > < span id ="__span-10 -1 "> < a id ="__codelineno-10 -1 " name ="__codelineno-10 -1 " href ="#__codelineno-10 -1 "> </ a > fly< span class ="w "> </ span > -t< span class ="w "> </ span > example< span class ="w "> </ span > curl< span class ="w "> </ span > /api/v1/builds< span class ="w "> </ span > --< span class ="w "> </ span > < span class ="se "> \</ span >
6018+ </ span > < span id ="__span-10 -2 "> < a id ="__codelineno-10 -2 " name ="__codelineno-10 -2 " href ="#__codelineno-10 -2 "> </ a > < span class ="w "> </ span > -X< span class ="w "> </ span > PUT< span class ="w "> </ span > < span class ="se "> \</ span >
6019+ </ span > < span id ="__span-10 -3 "> < a id ="__codelineno-10 -3 " name ="__codelineno-10 -3 " href ="#__codelineno-10 -3 "> </ a > < span class ="w "> </ span > -H< span class ="w "> </ span > < span class ="s2 "> "Content-type: application/json"</ span > < span class ="w "> </ span > < span class ="se "> \</ span >
6020+ </ span > < span id ="__span-10 -4 "> < a id ="__codelineno-10 -4 " name ="__codelineno-10 -4 " href ="#__codelineno-10 -4 "> </ a > < span class ="w "> </ span > -d< span class ="w "> </ span > @plan.json
58296021</ span > </ code > </ pre > </ div >
58306022< div class ="admonition note ">
58316023< p class ="admonition-title "> Note</ p >
0 commit comments