Agenda Prerequisite Add Frontend Request Add Promise Provide URL Verification It should not be expected for standard user to access services in ipv6. Rapid.Space and generaly SlapOS infrastructures contain an IPv4 frontend used to access an IPv6 backend transparently. Most software release request an ipv4 frontend automatically for users to access the service. If the Theia you are using have been provided on Rapid.Space, you are accessing an IPv6 service through an ipv4 frontend. This tutorial explains how to request an IPv4 frontend automatically in the context of html5as-base. Here is the commit introducing this functionality to html5as Software release: commit diff Prerequisite Extend Monitor Stack Request frontend In instance_html5as.cfg.in, add a frontend request section [html5as-frontend]. This section use slapos.cookbook:requestoptional recipe, a recipe dedicated to request new instances automatically. parameters are given with keys starting with config-. So here config-url is the url parameter of the request and our backend address. As the frontend provides https access with valid certificates config-https-only is forced to be true to make sure http is not used. # Request a CDN entry to master [html5as-frontend] # Extend slap-connnection to get the credentials for the request <= slap-connection # Recipe used to make requests recipe = slapos.cookbook:requestoptional name = HTM5AS frontend # Specify the software url of the frontend software release software-url = http://git.erp5.org/gitweb/slapos.git/blob_plain/HEAD:/software/apache-frontend/software.cfg # It is not a dedicated instance but an instance allocated on a shared instance slave = true config-url = ${html5as:access_url} config-https-only = true # The parameter expected to be received from the request are listed here. return = domain secure_access Add Promise In order to make sure the frontend url is working, a new promise is supposed to be added. This promise use the module check_url_available to check the url and make sure it doesn't raise an http error. Add the new section in instance_html5as.cfg.in # Add a promise to make sure the cdn is properly configured [html5as-frontend-promise] <= monitor-promise-base module = check_url_available name = html5as-http-frontend.py url = ${html5as-frontend:connection-secure_access} config-url = ${:url} config-check-secure = 1 Return frontend url For end user to access the service via a frontend. We return the url in the publish-connection-information section in instance_html5as.cfg.in. [publish-connection-information] recipe = slapos.cookbook:publish # By extending monitor publish, all the section deploying monitoring will # be deployed. The parameters needed for accessing monitoring will be published <= monitor-publish server_url = ${html5as:access_url} title = Title ${slap-parameter:title}! # Add dependency to the promise so that frontend sections are processed # and there is no need to declare the new part in buildout:parts server-cdn-url = ${html5as-frontend-promise:url} Update md5sums Refer How To Move to md5sum automatic update to update md5sum: $ cd ~/srv/project/slapos/software/html5as-base $ ../../update-hash Validation Run Request Script until it return server-cdn-url Access server-cdn-url in your browser Wait for server-cdn-url You can check the output of the request script from time to time until the server-cdn-url returned (it may take a few minute): $ cd ~/srv/project/slapos/software/html5as-base/ $ . ../../request-html5as-base.sh Access server-cdn-url Access the server-cdn-url from your browser. The Converse application is displayed.