Lignes directrices pour la soumission d’une application à Snowflake Marketplace¶
Cette rubrique décrit les critères de soumission d’une Snowflake Native App à Snowflake Marketplace.
Se préparer à soumettre une Snowflake Native App¶
Lorsque votre paquet d’application est prêt à être publié sur Snowflake Marketplace, vous devez le soumettre à Snowflake pour approbation.
Note
Le processus d’approbation requis pour publier une application sur Snowflake Marketplace est différent de l’analyse de sécurité automatisée qui est exécutée lorsque la propriété DISTRIBUTION
d’un paquet d’application est définie sur EXTERNAL
.
Avant de créer une annonce, vérifiez que vous comprenez les exigences appliquées et assurez-vous que votre paquet d’application respecte chaque exigence. Si un paquet d’application ne respecte pas ces exigences, votre demande pourrait être rejetée.
Si vous recevez une notification de rejet pour votre paquet d’application, apportez les modifications recommandées et soumettez à nouveau votre paquet d’application pour approbation.
Exigences appliquées¶
Les exigences suivantes sont vérifiées lorsque vous soumettez un paquet d’application pour approbation en vue d’une publication sur Snowflake Marketplace :
Tous les privilèges et toutes les références au niveau du compte dont l” Snowflake Native App a besoin doivent être répertoriés dans le fichier manifeste du paquet d’application.
Si une annonce inclut un privilège ou une référence au niveau du compte dans la section
security
du fichier manifeste et que le paquet d’application contient une application Streamlit, vous devez utiliser le Python Permission SDK pour créer une interface utilisateur permettant de demander des privilèges et des références au consommateur.Si un paquet d’application ne fournit pas d’application Streamlit comme interface utilisateur pour l’application, le fichier
readme
du paquet d’application doit contenir les informations suivantes :Une description de ce que fait l’application.
Les étapes que le consommateur doit suivre pour configurer l’application après son installation.
Les procédures stockées et les fonctions définies par l’utilisateur que l’application utilise.
Les privilèges requis par l’application.
Exemple SQL de commandes qui montrent aux consommateurs comment utiliser l’application.
Si le fichier
readme
comprend des instructions SQL ou des blocs de code, vous devez utiliser des verrous de code.Dans la mesure du possible, utilisez une seule application Streamlit de plusieurs pages au lieu de plusieurs applications Streamlit distinctes. Cela inclut les applications multi-utilisateurs Streamlit, etc.
Si l’application fournit des exemples de données, vous devez inclure des procédures sur la façon d’utiliser les exemples de données, y compris le code nécessaire pour créer la base de données, si nécessaire.
Bonnes pratiques pour la publication d’une Snowflake Native App¶
Outre les exigences relatives à la soumission d’un paquet d’application à Snowflake Marketplace, Snowflake recommande également les meilleures pratiques suivantes lors de la publication d’une Snowflake Native App :
Assurez-vous que tous les fichiers requis sont chargés dans la zone de préparation nommée pour la version de l’application que vous soumettez, y compris :
Le fichier
manifest.yml
.Le script d’installation.
Le fichier
readme.md
.Toutes les procédures stockées externes ou les fonctions définies par l’utilisateur requises par le paquet d’application.
Tous les fichiers Streamlit requis par le paquet d’application.
Tout code source externe, y compris Python, Java, etc.
Assurez-vous que la version de l’application que vous développez passe l’analyse de sécurité automatisée.
Testez la nouvelle version de votre paquet d’application en créant l’objet d’application localement à l’aide de la commande CREATE APPLICATION.
N’ajoutez pas de nouvelle version à votre paquet d’application ou ne définissez pas la propriété DISTRIBUTION sur EXTERNAL pendant que vous développez et testez une application. Ces actions déclenchent l’analyse de sécurité automatisée, ce qui retarde le cycle de développement.
Au lieu de cela, créez l’objet d’application en utilisant les fichiers sur une zone de préparation nommée.
Si votre application comprend une application Streamlit, testez l’application dans Snowsight pour vous assurer que l’application Streamlit fonctionne comme prévu.
Vérifiez que les interactions entre l’application Streamlit et les feuilles de calcul Snowflake sont transparentes et que le consommateur n’a pas à faire des allers-retours entre les deux de façon excessive.
Examinez toutes les parties d’une annonce avant de la soumettre pour approbation.
Assurez-vous qu’il n’y a pas de fautes de frappe ou d’autres erreurs de texte dans l’annonce, le fichier
readme
et l’application Streamlit.