Skip to content

ci: build the desktop template on every cluster (foxtrot, juliett, tango) - #260

Draft
devin-ai-integration[bot] wants to merge 4 commits into
mainfrom
devin/1788791818-build-templates-all-clusters
Draft

ci: build the desktop template on every cluster (foxtrot, juliett, tango)#260
devin-ai-integration[bot] wants to merge 4 commits into
mainfrom
devin/1788791818-build-templates-all-clusters

Conversation

@devin-ai-integration

@devin-ai-integration devin-ai-integration Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Summary

The desktop template is now built on every production cluster — foxtrot, juliett and tango — instead of foxtrot only. Clusters are separate tenancies with separate template registries, so a template built on one does not exist on the others.

template.yml splits into the DockerHub image job (unchanged, push-only) and a buildTemplate matrix job, one leg per cluster, with the cluster map in matrix.include and the key looked up by name:

matrix:
  include:
    - { cluster: foxtrot, domain: e2b.dev,         api_key_secret: E2B_API_KEY }
    - { cluster: juliett, domain: e2b-juliett.dev, api_key_secret: E2B_JULIETT_API_KEY }
    - { cluster: tango,   domain: e2b-tango.dev,   api_key_secret: E2B_TANGO_API_KEY }
env:
  E2B_API_KEY: ${{ secrets[matrix.api_key_secret] }}
  E2B_DOMAIN: ${{ matrix.domain }}

E2B_JULIETT_API_KEY and E2B_TANGO_API_KEY are new repo secrets and must be added before merging (names follow e2b-dev/code-interpreter's E2B_<CLUSTER>_API_KEY convention). A missing key fails that leg fast with Missing secret <name> for cluster: <cluster>; fail-fast: false so the other clusters still build.

Also adds a bare workflow_dispatch so the template can be rebuilt on all clusters without a template change (the Docker image only rebuilds on push). Legs on the same cluster serialize via Template-${{ github.ref }}-<cluster>; different clusters run in parallel.

Merging this PR triggers the workflow (its path filter includes the workflow file), which will do the first juliett/tango builds.

Companion PR for the code-interpreter template: e2b-dev/code-interpreter#338.

Link to Devin session: https://app.devin.ai/sessions/164235e15a6f4e30bbdc3907d388fbc5
Open in Devin Desktop: https://app.devin.ai/desktop/session/164235e15a6f4e30bbdc3907d388fbc5?variant=devin
Requested by: @mishushakov

…ngo)

Co-Authored-By: mish@e2b.dev <mish@e2b.dev>
@devin-ai-integration

Copy link
Copy Markdown
Contributor Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment, CI, and merge conflict monitoring

@cla-bot cla-bot Bot added the cla-signed label Sep 7, 2026
Comment thread template/README.md Outdated
Co-Authored-By: mish@e2b.dev <mish@e2b.dev>
Comment thread .github/workflows/template.yml Outdated
Co-Authored-By: mish@e2b.dev <mish@e2b.dev>
run:
working-directory: ./template
env:
E2B_API_KEY: ${{ secrets[matrix.api_key_secret] }}
Comment thread .github/workflows/template.yml Outdated
Co-Authored-By: mish@e2b.dev <mish@e2b.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants