basic_wrangler — Code View¶
← Back to Container | ← Back to System
Component Information¶
| Field | Value |
|---|---|
| Component | basic_wrangler |
| Container | Application |
| Type | module |
| Description | Cloudflare Wrangler deployment extractor |
| --- |
Code Structure¶
Class Diagram¶

Code Elements¶
14 code element(s)
#### Functions ##### `basicWranglerExtractor()` Extract deployment topology from Cloudflare Wrangler configuration files | Field | Value | | --- | --- | | **Type** | `function` | | **Visibility** | `public` | | **Async** | Yes || **Returns** | `Promiseany — - Configuration node with include/exclude patterns- `ctx`: import("C:/Users/chris/git/archlette/src/core/types").PipelineContext — - Optional pipeline context with logger
**Examples:**
---
##### `findWranglerFiles()`
Find wrangler.toml files based on include/exclude patterns
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `public` |
| **Async** | Yes || **Returns** | `Promiseimport("C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/types").ExtractorInputs — - Optional include/exclude patterns
---
##### `mapToIR()`
Map wrangler configurations to ArchletteIR
This creates:
- Containers: One per wrangler.toml file
- Deployments: One per environment (production, dev, preview, etc.)
- Container Instances: One per container per environment
- Container Relationships: Logical dependencies from service bindings
- Deployment Relationships: Physical instance-to-instance connections
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `public` |
| **Returns** | `z.inferimport("C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/types").WranglerConfig[] — - Parsed wrangler.toml configurations- `systemInfo`: z.infer — - Optional system-level metadata
---
##### `extractContainers()`
Extract containers from wrangler configurations
Creates one container per wrangler.toml file.
Each container represents a Cloudflare Worker (if main exists) or other Cloudflare service.
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `private` |
| **Returns** | `{ id: string; name: string; type: string; layer: string; description: string; tags: string[]; props: { technology: string; filePath: string; }; }[]` - Array of Container objects || **Location** | `C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/to-ir-mapper.ts:78` |
**Parameters:**
- `configs`: import("C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/types").WranglerConfig[] — - Parsed wrangler configurations
---
##### `deriveContainerType()`
Derive container type from wrangler configuration
Logic:
- If 'main' field exists → Cloudflare Worker
- Otherwise → Cloudflare Service (generic)
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `private` |
| **Returns** | `string` - Container type string || **Location** | `C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/to-ir-mapper.ts:111` |
**Parameters:**
- `config`: import("C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/types").WranglerConfig — - Wrangler configuration
---
##### `extractDeploymentsAndInstances()`
Extract deployments and container instances
Creates:
- One deployment per environment
- Container instances for each container in each environment
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `private` |
| **Returns** | `{ deployments: { name: string; environment: string; platform: string; instances: z.inferimport("C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/types").WranglerConfig[] — - Parsed wrangler configurations- `environments`: string[] — - Unique environment names
---
##### `findMatchingContainer()`
Smart lookup to find matching container for a service name
Tries exact match first, then fuzzy matching with common environment suffix removal.
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `private` |
| **Returns** | `string` - Matching container ID or null || **Location** | `C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/to-ir-mapper.ts:276` |
**Parameters:**
- `serviceName`: string — - Service name from binding (e.g., "content-service-preview")- `containers`: { id: string; name: string; }[] — - Available containers
---
##### `extractContainerRelationships()`
Extract container relationships from service bindings
Creates logical dependencies between containers based on service bindings.
Uses smart lookup to match service names to actual containers.
Deduplicates relationships across all environments.
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `private` |
| **Returns** | `z.inferimport("C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/types").WranglerConfig[] — - Parsed wrangler configurations- `containers`: { id: string; name: string; }[] — - Available containers for matching
---
##### `extractDeploymentRelationships()`
Extract deployment relationships from container instances
Creates physical instance-to-instance relationships based on service bindings.
Each relationship represents an actual runtime dependency in a specific environment.
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `private` |
| **Returns** | `z.inferz.infer[] — - Container instances
---
##### `extractDescription()`
Extract description from
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `private` |
| **Returns** | `string` - Description string if found, undefined otherwise || **Location** | `C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/wrangler-parser.ts:28` |
**Parameters:**
- `content`: string — - Raw TOML file content
---
##### `parseWranglerFile()`
Parse a wrangler.toml file
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `public` |
| **Async** | Yes || **Returns** | `Promisestring — - Absolute path to wrangler.toml file
---
##### `normalizeServiceBindings()`
Normalize service bindings from various formats
Wrangler supports multiple binding formats:
- [[services]] array (TOML array of tables)
- services = [{ binding = "...", service = "..." }]
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `public` |
| **Returns** | `import("C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/types").ServiceBinding[]` || **Location** | `C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/wrangler-parser.ts:109` |
**Parameters:**
- `services`: unknown
---
##### `getEnvironments()`
Get all environments from a wrangler config
Returns a list of environment names, including:
- "production" (from root-level config if it has deployable content)
- All keys from env.* sections
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `public` |
| **Returns** | `string[]` || **Location** | `C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/wrangler-parser.ts:130` |
**Parameters:**
- `config`: import("C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/types").WranglerConfig
---
##### `getEnvironmentConfig()`
Get configuration for a specific environment
Merges root-level config with environment-specific overrides.
Environment config takes precedence.
| Field | Value |
| --- | --- |
| **Type** | `function` |
| **Visibility** | `public` |
| **Returns** | `{ name: string; vars?: Recordimport("C:/Users/chris/git/archlette/src/extractors/builtin/basic-wrangler/types").WranglerConfig — - Parsed wrangler config- `envName`: string — - Environment name (e.g., "production", "development")
---