Skip to content

fix(init): scaffold apps that the platform pipeline can deploy - #5

Merged
Alexanderamiri merged 3 commits into
mainfrom
fix/init-scaffold
Oct 24, 2026
Merged

Alexanderamiri merged 3 commits into
mainfrom
fix/init-scaffold

Conversation

@Alexanderamiri

@Alexanderamiri Alexanderamiri commented Oct 23, 2026 •

Copy link
Copy Markdown
Member

javabin init scaffolded repos the platform pipeline could not deploy. This fixes what it writes:

  • deploy.yml: workflow-level permissions (id-token: write for AWS OIDC, contents: write so the expand step can commit generated Terraform, pull-requests: write for plan comments), workflow_dispatch: for manual runs, and no secrets: inherit.
  • app.yaml: routing: with a hostname prompt (default <name>.javazone.no) and a validated ALB rule priority, so a web service gets a URL.
  • kotlin: Gradle installDist Dockerfile instead of a Maven build.
  • Next steps: the correct command to add the repo to the app.yaml team, javabin aws setup for AWS access, and javabin secret set once secrets are declared and deployed.

Brought up to date with main (merge, after #6/#7/#8; no conflicts).

Verification

  • cmd/init_test.go: golden test of renderAppYaml, deploy.yml permissions / workflow_dispatch / no secrets: inherit.
  • The golden app.yaml was run through platform/scripts/generate-modules.py: it generates the service-routing (priority 4242, host header) and ecs-service modules without errors.
  • gofmt -l . clean, go vet ./..., go test ./... (38 passed), sh scripts/next-version_test.sh pass.
  • javabin init was not run for real (it creates repos in the org).

🤖 Generated with Claude Code

Alexanderamiri and others added 3 commits October 23, 2026 10:52
- deploy.yml granted contents: read, but the platform's expand step
  commits generated Terraform; grant contents: write at workflow level
  and drop secrets: inherit (no secrets are needed).
- app.yaml had no routing:, so the service got no URL or ALB rule.
  Prompt for host and priority.
- kotlin emitted a Maven Dockerfile; use Gradle installDist.
- The printed add-repo-to-team command used the wrong API shape.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Merge main into the init scaffolding branch and extend init's next steps
with `javabin aws setup` and `javabin secret set` after the first deploy.
Pin the rendered app.yaml with a golden test (validated against the
platform generator) and assert deploy.yml has workflow_dispatch and no
secrets: inherit.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@Alexanderamiri
Alexanderamiri merged commit 26661ec into main Oct 24, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant