{% extends "base.html" %} {% load htmlattrs static converters %} {% block title %}Webapp Creation for application {{ webapp.name }}{% endblock %} {% block breadcrumb %} {% endblock %} {% block content %}
{########### IDLE ###########} {% if webapp.sandbox_state == webapp.IDLE %}
You do not have any active sandbox

In order to create and publish a new version of your application, you can either:

  • start a sandbox, connect to it via ssh, then install the application manually
  • create a docker image and push it to allgo (see the Docker pane)

Start a sandbox
{% if versions %}
From an existing version of your application
{% csrf_token %}
{% endif %}
From scratch
{% csrf_token %}
{########### RUNNING ###########} {% elif webapp.sandbox_state == webapp.RUNNING %}
Your sandbox is running

In order to install your application, you can connect in SSH using the command below or click to the Docker panel if you prefer to use this method or are using continuous development.

1. Connect via SSH
{% if not user.allgouser.sshkey %}

important: you must add your public SSH key to your account before using this command

{% endif %}
{{ ssh_command }}
2. Install the application

The entrypoint configured for your webapp is: {{ webapp.entrypoint }}. This is the command that is executed when a job is run.

3. Test your webapp

You can use the job creation form to run a job.

4. Close your sandbox

Once you are done, you can either:

  • commit your work, this will save the content of your sandbox and make it a new version of your app
  • rollback, this will throw away all changes done in the sandbox since it was started.


Commit panel
{% csrf_token %}

If you whish to drop your changes, your can perform a rollback. CAUTION: this will discard all the work made since the sandbox was started

{# rollback modal dialog #} {########### STARTING ###########} {% elif webapp.sandbox_state == webapp.STARTING %}

Waiting for the sandbox creation

Please wait, your sandbox is in preparation.

{########### STOPPING ###########} {% elif webapp.sandbox_state == webapp.STOPPING %}

Waiting for the sandbox termination

Please wait, your sandbox is stopping.

{########### START_ERROR ###########} {% elif webapp.sandbox_state == webapp.START_ERROR %}
Sandbox start error

Your sandbox failed to start

{% csrf_token %}
{% csrf_token %}
{########### STOP_ERROR ###########} {% elif webapp.sandbox_state == webapp.STOP_ERROR %}
Sandbox stop error

Your sandbox failed to stop

{# NOTE: we do not show an 'Abort' button because this action #} {# is not implemented (because i am not sure that it is #} {# a good idea to throw away the version being committed #}
{% csrf_token %}
{% endif %}

Need help? report to the documentation.

You can as well directly push your docker image.

docker login --username {{ user.get_username }} {{ request.get_host }}/{{ webapp.docker_name }}
docker build -t {{ webapp.docker_name }} .
docker push {{ request.get_host }}/{{ webapp.docker_name }}:<version>
{% endblock %} {% block messages %} {{ block.super }} {% include 'partials/_form_messages.html' %} {% endblock %} {% block javascript %} {{ block.super }} {% if webapp.sandbox_state == webapp.STARTING or webapp.sandbox_state == webapp.STOPPING %} {% endif %} {% endblock %}