Aller au contenu

Publier votre application

Publier met votre application en ligne à sa propre adresse, pour que d’autres personnes puissent l’utiliser sans l’App Builder. Ce qui part en ligne est une copie construite de votre projet, une version : votre projet continue d’évoluer dans l’App Builder comme d’habitude, et l’application publiée ne change que lorsque vous décidez de la mettre à jour.

Le bouton Publish se trouve dans la barre d’en-tête de l’éditeur. Son libellé vous dit où en est l’application : pas encore publiée, en cours de publication, ou publiée. Il ouvre les Settings de l’application sur Publish app. Les mêmes réglages s’ouvrent depuis Project Settings, en bas de la barre d’outils, et réunissent tout ce qui touche à la publication : Publish app, Access & sharing, et Supabase. Une entrée qui ne peut pas encore agir est grisée, et s’ouvre quand même : sa page montre ce qu’elle propose, inactif, sous ce qu’elle attend. Access & sharing attend la première publication, Supabase une application en ligne reliée à un projet Supabase.

Votre application reçoit sa propre adresse, sur le domaine qu’ALIGN réserve aux applications publiées. Vous proposez son nom, ALIGN vérifie pendant la saisie s’il est libre, et vous montre l’adresse complète avant la publication.

Chaque application vit à sa propre adresse, jamais dans un dossier d’une adresse partagée. Deux applications ne partagent jamais les sessions de leurs visiteurs, et votre application ne peut rien lire de ce qui appartient à ALIGN ou à une autre application.

AccèsQui y accède
PublicToute personne qui a le lien, sans compte ALIGN.
OrganizationChaque membre de votre organisation, lecteurs compris.
GroupsLes membres des groupes que vous choisissez.
PrivateVous et les administrateurs de votre organisation.

Une première publication démarre en Private : choisissez un accès plus large avant de publier si l’application s’adresse à plus de monde.

Pour tout accès autre que Public, les visiteurs se connectent avec leur compte ALIGN sur l’adresse de l’application : une personne connectée et autorisée entre directement, une personne qui ne l’est pas lit que l’application n’est pas disponible pour son compte. Un visiteur reste connecté à l’application pendant une heure ; ensuite, ALIGN le vérifie à nouveau, sans rien lui demander tant qu’il est connecté à ALIGN et toujours autorisé. Vous pouvez changer l’accès à tout moment dans Access & sharing : choisissez le niveau, puis Save access. Le changement prend effet en moins d’une minute, sans nouveau build.

L’accès décide qui peut ouvrir l’application. Ce que les visiteurs peuvent y faire dépend de votre application : une application connectée à une base de données Supabase garde sa propre connexion et ses propres règles, et les deux se combinent. Un outil interne peut être réservé à votre organisation et demander quand même à ses utilisateurs de se connecter à sa base de données.

La partager avec des personnes extérieures à ALIGN

Section intitulée « La partager avec des personnes extérieures à ALIGN »

Une application qui n’est pas publique peut quand même être ouverte par une personne sans compte ALIGN, grâce à un lien de partage. Dans Access & sharing, Share with people outside ALIGN en crée un : donnez-lui un nom et une durée de vie, ou saisissez des adresses e-mail, et chaque personne reçoit son propre lien. Un lien ouvre cette application, et seulement elle, jusqu’à son expiration ou jusqu’à ce que vous le révoquiez avec Revoke ; la révocation prend effet en moins d’une minute. Les e-mails partent d’ALIGN : leur nombre est donc limité chaque jour, pour votre organisation, pour chaque membre et pour chaque destinataire. Au-delà, copiez le lien et envoyez-le vous-même.

Quiconque détient un lien, ou son QR code, peut ouvrir l’application : transmettez-le comme une clé, jamais sur une page publique, et donnez-lui une durée de vie courte pour tout ce qui est sensible. Une application publique n’a besoin d’aucun lien : la page propose le QR code de son adresse, et les liens de partage restent affichés, inactifs, jusqu’à ce que vous choisissiez un autre accès.

Un lien expiré reste affiché, marqué comme expiré, pendant 30 jours, puis il est supprimé, avec l’adresse à laquelle il a été envoyé. Quand un membre quitte votre organisation, les liens qu’il a créés n’ouvrent plus les applications de votre organisation : il garde l’adresse, pas l’accès.

Si votre application connecte ses utilisateurs avec Supabase, Supabase ne les renvoie qu’aux adresses listées dans les Redirect URLs de votre projet Supabase. Quand un projet Supabase est lié à votre application, Supabase indique si l’adresse publiée figure dans cette liste, et Add to Supabase l’y ajoute pour vous. Rien ne change dans votre projet Supabase avant votre clic, et votre compte Supabase doit être propriétaire ou administrateur du projet.

Une fois dans les Redirect URLs de votre projet, l’adresse reste à votre organisation, même après la dépublication : aucune autre organisation ne pourra jamais la prendre. ALIGN ne la retire pas de votre projet Supabase : retirez-la vous-même quand vous n’en avez plus besoin.

Publier construit votre application sur les serveurs d’ALIGN, puis met le résultat en ligne. La première publication prend une minute ou deux. Vous pouvez attendre dans les réglages, ou les fermer et revenir : le build continue sans vous.

Chaque build utilise le budget de crédits de votre organisation, pour le temps qu’il dure. Un build qui échoue coûte aussi son temps, et ne touche jamais la version déjà en ligne.

Avant toute mise en ligne, ALIGN vérifie le résultat du build. Un build qui contient un secret, comme une clé privée ou une clé de base de données qui contourne ses règles de sécurité, est refusé, et Publish app nomme le fichier. Seules les clés publiques ont leur place dans une application publiée : la clé anon ou publishable de Supabase convient, une clé secret (sb_secret_…, ou l’ancienne clé service role) jamais.

Votre application publiée ne suit pas vos modifications d’elle-même. Quand vos changements sont prêts, Publish update construit l’état actuel de votre projet et bascule l’application sur la nouvelle version. Les visiteurs qui chargent l’application à ce moment ne sont pas coupés : la version précédente reste disponible quelques minutes, le temps qu’ils terminent, et leur visite suivante ouvre la nouvelle.

Publish app liste les dernières versions de votre application. Restore remet l’une d’elles en ligne instantanément, sans build et sans coût. Les versions les plus récentes sont conservées ; les plus anciennes sont supprimées à mesure que de nouvelles arrivent.

Votre application publiée puise dans les mêmes allocations que le reste de votre organisation :

  • le trafic qu’elle sert compte dans le trafic mensuel de votre organisation, affiché sur la page Usage à côté de vos cartes publiées. Quand le trafic du cycle de facturation est épuisé, les applications publiées sont suspendues et reviennent d’elles-mêmes quand du trafic est de nouveau disponible : au cycle suivant, avec une offre supérieure, ou avec du trafic supplémentaire dans Plans & Capacity. Une application suspendue affiche une page neutre « temporarily unavailable » ;
  • ses versions conservées comptent dans le stockage de votre organisation, à côté du Datastore. Sur la page Usage, elles s’ajoutent au stockage du membre qui a publié l’application. Quand le stockage est plein, un nouveau build est refusé avant de commencer, et Publish app vous renvoie vers Plans & Capacity.

Si l’abonnement de votre organisation est suspendu, ses applications publiées passent hors ligne jusqu’à ce qu’il soit régularisé.

Unpublish met l’application hors ligne, supprime toutes ses versions et libère le stockage qu’elles occupaient. L’adresse reste réservée à cette application pendant un certain temps : la republier vous redonne donc la même. Supprimer le projet, ou l’organisation, met aussi son application publiée hors ligne, tout comme mettre le projet à la corbeille : le restaurer ne republie pas l’application, vous la publiez quand vous êtes prêt.

  • Votre propre domaine. Les applications sont publiées sur le domaine d’ALIGN pour l’instant.