Configure your app¶
Forge reads mithran.yaml from the repository root. Commit this file
with the application source so each deployment uses the configuration
that belongs to its selected commit.
Initialize existing source¶
Run initialization from your application's repository root:
An existing valid forge.mithran/v1 or map.mithran/v1 manifest is
validated and preserved byte for byte. Initialization leaves application
source unchanged when a valid manifest already exists.
Without a manifest, initialization detects a static application when
index.html exists at the root and no competing build manifest exists.
It writes this configuration while preserving the existing source:
apiVersion: forge.mithran/v1
kind: ForgeApp
source:
root: .
runtime:
kind: static
entrypoint: index.html
An empty directory, including one containing only .git, receives this
manifest and a starter index.html.
Resolve an initialization refusal¶
Automatic detection covers the root-level static layout. A
package.json, Cargo.toml, pyproject.toml, requirements.txt,
go.mod, or Dockerfile prevents that automatic choice.
For an application requiring a build or another runtime, provide a manifest for its supported runtime before rerunning initialization. Use Manifest reference and your application's runtime requirements to choose the configuration.
If initialization reports invalid YAML, an unsupported schema, or invalid fields, correct the reported problem in your existing manifest. Keep your source files and rerun initialization after the correction.
Prepare for deployment¶
Review the manifest diff and test the app locally. Image-based runtimes also need the build files required by their manifest, including a Dockerfile where applicable.
Keep credentials and private keys out of the manifest and committed source. Read HTTP app contract for runtime behavior and Security and trust for authority boundaries.
The GitHub origin identifies the default repository, and committed
HEAD identifies the source. Commit and push your reviewed changes
before requesting deployment.