Skip to content

Commit 98ef86e

Browse files
satanasclaude
andauthored
chore: add local dev setup script and gitignore workflow.local.yaml (#37)
Adds .speakeasy/workflow.local.example as a template for local SDK generation, a bin/setup-local script to bootstrap it, and gitignores workflow.local.yaml so it is never accidentally committed. Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 6d7c73d commit 98ef86e

3 files changed

Lines changed: 48 additions & 0 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.speakeasy/workflow.local.yaml

.speakeasy/workflow.local.example

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Template for local SDK generation. Copy this file to workflow.local.yaml before use.
2+
# Intended for Gusto engineers with access to the internal API specification repository.
3+
# External contributors: local generation requires access to internal Gusto repositories
4+
# and is not supported outside of Gusto's development environment.
5+
#
6+
# Setup: run bin/setup-local to create workflow.local.yaml automatically.
7+
# Usage: speakeasy run --target=local
8+
workflowVersion: 1.0.0
9+
speakeasyVersion: latest
10+
sources:
11+
GustoEmbedded-local:
12+
inputs:
13+
- location: ../Gusto-Partner-API/generated/embedded/api.v2025-06-15.embedded.yaml
14+
overlays:
15+
- location: ../Gusto-Partner-API/.speakeasy/speakeasy-modifications-overlay.yaml
16+
- location: gusto_embedded/.speakeasy/speakeasy-modifications-overlay.yaml
17+
GustoAppInt-local:
18+
inputs:
19+
- location: ../Gusto-Partner-API/generated/app-integrations/api.v2025-06-15.app-integrations.yaml
20+
overlays:
21+
- location: ../Gusto-Partner-API/.speakeasy/speakeasy-app-int-modifications-overlay.yaml
22+
- location: gusto_app_int/.speakeasy/speakeasy-modifications-overlay.yaml
23+
targets:
24+
local:
25+
target: python
26+
source: GustoEmbedded-local
27+
output: ./gusto_embedded
28+
local-app-int:
29+
target: python
30+
source: GustoAppInt-local
31+
output: ./gusto_app_int

bin/setup-local

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#!/usr/bin/env bash
2+
set -e
3+
4+
DEST=".speakeasy/workflow.local.yaml"
5+
EXAMPLE=".speakeasy/workflow.local.example"
6+
7+
if [ -f "$DEST" ]; then
8+
echo "$DEST already exists — skipping"
9+
exit 0
10+
fi
11+
12+
cp "$EXAMPLE" "$DEST"
13+
echo "Created $DEST"
14+
echo ""
15+
echo "Note: local generation requires access to internal Gusto repositories."
16+
echo "Run: speakeasy run --target=local"

0 commit comments

Comments
 (0)