GitHub & Cross-Repo

The github block declares the GitHub organization and the conventions Foundry uses to discover the other repositories that make up a platform. It is the v0.4.0 replacement for the older ecosystem block.

The github block

FieldDescription
organizationGitHub org login that owns the platform repos
prefixRepo naming prefix for satellite discovery (falls back to the platform prefix)
apiLibThe API library repo — the contract-first source of API specs / generated code (optional)

Discovery by naming convention

The primary platform repo is matched by its full name (the slugified platform name). Satellite repos are matched by the {prefix}-* pattern.

Platform name:  "An Average Platform"
Repository:     an-average-platform      (primary, ★)
Prefix:         aap
Satellites:     aap-api-lib, aap-billing-service, ...

Test discovery against the live org with foundry github discover, which reads github.organization and the prefix from the manifest.

Note on the CLI: foundry github discover reads the new github block, while the older foundry config discover still reads the deprecated ecosystem block. Prefer github in new manifests.

Example

"github": {
  "organization": "FoundryMedia",
  "prefix": "foundry",
  "apiLib": {
    "repository": "aap-api-lib",
    "groupId": "com.thisistheaverage"
  }
}