Skip to main content
Read-only command. fjall list parses an application’s infrastructure.ts and prints the resources declared in it. It never calls AWS and never changes a file.

Overview

fjall list reads one application’s infrastructure.ts and prints every resource the codemod engine can locate: databases, storage, compute, and the rest. Use it to confirm what fjall add, fjall modify or fjall remove left behind before you deploy. The command is scoped to a single application, so -a, --app is required. For a fleet view, use fjall apps (lists applications) or fjall status (deployment health). fjall list reports declarations, not deployed state. A resource can appear here and not yet exist in AWS.

Prerequisites

No Fjall login and no AWS connection are needed. The command reads local files only.

Usage

Arguments

An unrecognised type exits with a validation error before the file is parsed.

Options

Resource types for type

Each type corresponds to one factory call in infrastructure.ts, so you can grep the file for the identifier in the right-hand column.

Examples

List every resource

Output:
The heading shows the application name and the resource count. Each row lists the resource name, its type, and the absolute path of the file it lives in. --non-interactive prints the same rows without the File: line and the column header.

Filter by type

Pass a resource type to narrow the output. The heading records the filter:
Output:

JSON output

For scripts and pipelines, emit the entries as JSON. --json bypasses the table and writes a single line to stdout:
start and length are the character offset and span of the declaration inside the file, which is how fjall modify and fjall remove locate it. Pipe it through jq to pull out one field:

Empty application

A newly created application with no added resources prints a zero count:
With a type filter, the message names the type instead: No storage resources found.

Legacy declarations

A resource written in the older method form, such as app.addBuildkite({ … }), is listed with an (unmanaged) suffix:
fjall list sees these entries, but fjall modify and fjall remove refuse them. Rewrite the declaration in factory form to bring it back under codemod management.

How it works

  1. Resolves fjall/<app>/infrastructure.ts relative to your current directory and exits if the file is missing.
  2. Parses the file with the codemod engine, an AST parser that makes no AWS calls.
  3. Collects every factory declaration it can locate.
  4. Applies the type filter when you pass one.
  5. Prints a table, or a JSON array with --json.

Common workflows

Confirm an added resource

Confirm a removed resource

fjall remove deletes a declaration from infrastructure.ts. List afterwards to verify the file no longer carries it:

Inspect before deploying

Troubleshooting

”Application name is required. Use —app flag”

fjall list is scoped to one application. Pass the name:

“Application ‘api’ infrastructure file not found at …”

The path in the message is where Fjall looked. Two usual causes:
  • You are not in the project root. cd to the directory that holds fjall/.
  • The application name is misspelled. Run fjall apps to see the real names.

Resource missing from the list

  • Check the type filter is not hiding it. Run fjall list --app api with no type to see everything.
  • Check for an (unmanaged) suffix elsewhere in the output. Legacy method-form declarations are listed but not managed.
  • Confirm the resource reached the file. Re-run fjall add if it did not.
fjall list reflects only what is declared in infrastructure.ts. To check what is actually deployed to AWS, use fjall status.

Next Steps

fjall add

Add a resource to an application’s infrastructure.

fjall modify

Change the properties of a declared resource.

fjall remove

Delete a resource declaration from infrastructure.ts.

fjall deploy

Deploy an application’s infrastructure to AWS.