rustploy-gui 0.1.21

Rustploy — desktop client (glacier-ui) for the Rustploy PaaS daemon
// Sub-aba Zip do provider: upload local com Dockerfile na raiz; corpo do `if @provider_tab == "zip"` de general.gvb.
component {
  text(class = u-label-cap, content = "ZIP DOCKERFILE")

  input(
    class = field__input,
    form_control = service_form_archive_path,
    :value = service_form_archive_path,
    on_change = field:service_form_archive_path,
    placeholder = "/caminho/para/app.zip",
  )

  text(
    class = u-muted,
    content = """
      O zip deve conter um Dockerfile na raiz. Depois do envio,
      o deploy normal usa os arquivos descompactados pelo
      daemon.
    """,
  )

  row(class = healthcheck__grid) {
    column(class = healthcheck__field) {
      text(class = u-label-cap, content = "PORT")

      input(
        class = field__input,
        form_control = service_form_general_port,
        :value = service_form_general_port,
        on_change = field:service_form_general_port,
        placeholder = 80,
      )
    }

    column(class = healthcheck__field) {
      text(class = u-label-cap, content = "STATUS")
      text(class = u-muted, content = "@service_action_message")
    }
  }

  row(class = env__add) {
    button(
      class = "btn btn--primary",
      on_click = archive_upload,
      disabled = @busy_archive_upload,
      text = "Enviar zip",
    )

    button(
      class = btn-secondary,
      on_click = general_save,
      disabled = @busy_general_save,
      text = "Salvar porta",
    )
  }
}