GoogleCloudPlatform / cloud-run-button

Let anyone deploy your GitHub repos to Google Cloud Run with a single click
https://cloud.run
Apache License 2.0
526 stars 91 forks source link

multiple apps with a single button #142

Open matti opened 4 years ago

matti commented 4 years ago

you know, a microservice/microlith thing as a button

ahmetb commented 4 years ago

Please be more descriptive. I cannot understand what you’re saying.

matti commented 4 years ago
[
  {app1},
  {app2}
]
jamesward commented 4 years ago

Are you thinking for monorepos or for multirepo?

Also, you could do this today with a pre/post create script, but that is kinda messy.

matti commented 4 years ago

I think for both... but the use case I have in mind is in 6 different repos (although if I had the time and energy I would merge them to one monorepo)

What about adding support to specify image: in the app.json ? like this way the button could be anywhere..?

matti commented 4 years ago

But really what I'm talking about that if I have an app that has services like "frontend" that connect to "billing" and "users" and as a true microlith does... then it would be cool to deploy that kind of app with one click.

jamesward commented 4 years ago

What about adding support to specify image: in the app.json ? like this way the button could be anywhere..?

Can you elaborate on that?

matti commented 4 years ago

good question - I started to explain and I realized that it would mean that the image version is set to something and it's not updated when the repository is updated. so scratch that.

So yeah, something like

[
  {app1},
  {app2}
]

or

{
  name: "mainapp",
  env: {...},
  subapps: [
    {
       name: "mainapp-sub1"
       env: {....
    },
    {
       name: "mainapp-sub2"
       env: {....
    },
  ]
}
ahmetb commented 4 years ago

This came up in other forms like "can you add support for docker compose".

Right now, there's nothing preventing someone from deploying a multi-tier application by placing 2 different buttons in their readme with ?dir= parameter.

Since there's not enough demand volume, I'm not sure if it will be worth rearchitecting everything.

matti commented 4 years ago

Sure that works. So for a six service app you need six buttons.

tomlarkworthy commented 4 years ago

Suggest close. Multi isolated services with multi buttons works now. Multiple things on one install button (like docker-compose) logically extends to something like Terraform. So I feel like the outstanding scope of this issue is a dupe of (https://github.com/GoogleCloudPlatform/cloud-run-button/issues/137)