VS Code Extensions
C

Concourse Fly Integration

by Concourse-Cli

Manage Concourse CI directly from VS Code. Browse pipelines and jobs, trigger builds, view logs, intercept containers, deploy pipeline templates — all without leaving your editor. Powered by the fly CLI.

Downloads

30

Rating

— (0)

Version

0.6.0

Last updated

Apr 26, 2026

Manage Concourse CI directly from VS Code. Browse pipelines and jobs across multiple teams, trigger builds, view logs, intercept containers, deploy pipeline templates — all without leaving your editor. Powered by the fly CLI.


Features

🏢 Multi-Team Sidebar

Login to multiple teams. Pipelines grouped by team, jobs show last build status:

Pipelines
├── 🏢 main (ci)                              [🚪]
│   ├── hello                                  [👁] [📊] [⏸]
│   │   ├── ✅ say-hello       [#5](https://github.com/samuelBarreto/concourse-fly-vscode/issues/5) — succeeded  [▶] [>_] [👁]
│   │   └── ❌ run-tests       [#3](https://github.com/samuelBarreto/concourse-fly-vscode/issues/3) — failed     [▶] [>_] [👁]
│   └── my-app
│       └── ⏳ deploy          pending          [▶] [>_] [👁]
├── 🏢 dev-team (ci)                          [🚪]
│   └── staging
└── ➕ Add Team...

Recent Builds
├── 🏢 main (ci)
│   ├── 📦 hello
│   │   ├── ✅ [#6](https://github.com/samuelBarreto/concourse-fly-vscode/issues/6) hello/build                  [📋] [>_]
│   │   └── ✅ [#5](https://github.com/samuelBarreto/concourse-fly-vscode/issues/5) hello/build                  [📋] [>_]
│   └── 📦 my-app
│       └── ⏳ [#1](https://github.com/samuelBarreto/concourse-fly-vscode/issues/1) my-app/deploy                [📋] [>_]
└── 🏢 dev-team (ci)
    └── 📦 staging
        └── ✅ [#2](https://github.com/samuelBarreto/concourse-fly-vscode/issues/2) staging/deploy               [📋] [>_]

Templates
├── 📄 Hello World                             [📄] [🚀]
├── 📄 Git Resource                            [📄] [🚀]
├── 📄 Time Triggered                          [📄] [🚀]
├── 📄 Docker Build                            [📄] [🚀]
└── 📄 Multi-Job Pipeline                      [📄] [🚀]

Quick Actions
├── 🔑 Login / Add Team
├── 🚪 Logout / Remove Team
├── ☁️  Set Pipeline
├── 🚀 Quick Deploy
├── 📊 Diff with Concourse
├── 📄 New Pipeline from Template
└── 🔄 Refresh

📋 Formatted Build Logs

Click 📋 on any build to open a formatted log file in the editor:

✅ concourse-golang / build  [#6](https://github.com/samuelBarreto/concourse-fly-vscode/issues/6)
Status: SUCCEEDED
Lines: 15  |  Errors: 0  |  Warnings: 0

════════════════════════════════════════════════════════════

════════════════════════════════════════════════════════════

initializing
selected worker: 96fda3fbbe21
running sh -c cd my-repo
go build -o ../built/app .
succeeded

When there are errors, they're extracted and shown at the top:

❌ concourse-golang / test  [#3](https://github.com/samuelBarreto/concourse-fly-vscode/issues/3)
Status: FAILED
Lines: 25  |  Errors: 2  |  Warnings: 1

════════════════════════════════════════════════════════════

❌ ERRORS
────────────────────────────────────────────────────────
│ FAIL: TestHandler (0.00s)
│ exit status 1

⚠️  WARNINGS
────────────────────────────────────────────────────────
│ warning: unused variable

════════════════════════════════════════════════════════════

[full logs below]
  • Opens as a .log file with syntax highlighting
  • Searchable with Ctrl+F
  • Accessible by screen readers

🔮 Smart Deploy with CodeLens

YAML pipeline files get inline actions:

  • First deploy: ▶ Deploy "hello" to Concourse
  • After deploy: 🚀 Deploy "hello" to main (ci) + 📊 Diff with Concourse
  • Pipeline name auto-detected from filename
  • Remembers last team/target per file

📐 Pipeline Graph

Click 📊 on any pipeline to see a visual diagram with resources inside jobs, status colors, and dependency arrows.

🖱️ Right-Click Menu

Right-click any YAML file: Set Pipeline, Quick Deploy, Diff, New Template.

🔔 Build Monitor

Notifications when build status changes (succeeded, failed, errored).


Inline Actions

Pipelines

Icon Action
👁 View/save pipeline YAML
📊 Show pipeline graph
⏸/▶ Pause/Unpause
🚪 Logout team

Jobs

Icon Action
▶ Trigger job
>_ Intercept (shell into container)
👁 View/save job YAML

Builds

Icon Action
📋 View formatted logs in editor
>_ Intercept (shell into container)

Templates

Icon Action
📄 Save template to workspace
🚀 Deploy to Concourse

Requirements

  • fly CLI installed
  • A running Concourse instance

Setup

Adding a Team

  1. Command Palette → Concourse: Login
  2. Select fly binary (first time only)
  3. Choose: Browser login or Username & Password
  4. Enter Concourse URL and target name
  5. TLS: skip verification or select CA certificate
  6. Enter team name
  7. Enter credentials (if basic auth)

Removing a Team

Click 🚪 next to team name, or Quick Actions → Logout.

Manual Configuration

{
  "concourse.url": "http://localhost:8080",
  "concourse.flyPath": "C:\\concourse\\fly.exe",
  "concourse.skipTls": false,
  "concourse.caCert": "",
  "concourse.enableSounds": true
}

Commands

Command Description
Concourse: Login Add a new team
Concourse: Logout Remove a team
Concourse: Set Pipeline Deploy YAML (auto-names from filename)
Concourse: Quick Deploy Redeploy to last target
Concourse: Diff with Concourse Diff local vs remote
Concourse: Show Pipeline Graph Visual pipeline diagram
Concourse: Trigger Job Start a job
Concourse: Pause Pipeline Pause a pipeline
Concourse: Unpause Pipeline Unpause a pipeline
Concourse: View Pipeline YAML Save pipeline config
Concourse: View Job YAML Save job config
Concourse: Intercept Build Shell into build container
Concourse: Intercept Job Shell into job container
Concourse: New Pipeline from Template Create from template
Concourse: Deploy Template Deploy template to team
Concourse: Refresh Refresh all data

License

MIT

Related extensions