KusionStack/konfig

Provide prebuild dev containers for Konfig

Closed this issue · 3 comments

Feature request

Now creating a new codespace with konfig's devcontainer.json needs about 3min to prepare the environment. That's time-consuming and can be speeded up by configuring a prebuild.

To enable prebuild, our KusionStack organization needs to pay for the compute and storage costs.

cost estimate

Here's the estimated cost for one year's usage: 72 dollars per year

  • basic: 48 dollars per year
  • (10min each prebuild) * (30 repeated prebuild each month) * (2core) / (60min) * (0.18 dollar) = 1.8 dollars per month
  • (0.1 GB each prebuild) * (30 repeated prebuild each month)*(0.01dollar) = 0.1 dollar per month

time consumption

A successful prebuild of minikube+kusion env costs about 5-7 min.

trigger policy

The prebuild process can be triggered in 3 kinds of scheduling policies:

  • Every push (the default setting) - With this setting, prebuilds will be updated on every push made to the given branch.
  • On configuration change - With this setting, prebuilds will be updated every time associated configuration files for a given repo and branch are updated.
  • Scheduled - With this setting, you can have your prebuilds updated on a custom schedule that's defined by you.
    And to meet our needs, we can choose the second one: trigger prebuild each time the .devcontainer.json is changed.

ref:

And..., no it can not be self-hosted, so the prebuild process make use of our computing & storage resources bought from Aliyun & AWS:
image

Already applied for a free usage for our open source project from here and now we can wait for a few days to see if we are enabled to use codespaces & prebuild for free:
image

Already applied for a free usage for our open source project from here and now we can wait for a few days to see if we are enabled to use codespaces & prebuild for free: image

The application is approved by the Github Codespaces Team and KusionStack can use GitHub Codespaces as a free team now! 🎉 🎉

The prebuild is enabled now and everything works just fine(creating and configuring new codespaces from konfig repo now reduces to merely 30 seconds), I'm going to close the issue.