J'utilise sans serveur pour déployer mon API sur AWS.
En sans serveur, il permet de déployer une seule fonction:
sls deploy -f <function name>
Mais cela ne permet pas de supprimer une seule fonction:
sls remove // will remove all functions.
Existe-t-il un moyen de supprimer une seule fonction qui n'aura pas d'impact sur d'autres fonctions?
@ justin.m.chase a suggéré:
Supprimez simplement la fonction dans serverless.yml, puis exécutez le déploiement complet
sls deploy
la fonction est supprimée (Lambda + API Gateway). Perfecto!
Je sais que cette question a plus d'un an et a été fermée, mais la bonne façon de supprimer une seule fonction est de la spécifier par son nom que vous aviez presque:
sls remove -f <function name>
Comme l'a dit Peter Pham, supprimez la fonction de serverless.yml et effectuez une opération complète:
sls deploy
Si vous essayez de supprimer la fonction manuellement dans AWS, cela provoque beaucoup de maux de tête.
Je sais que c'est un peu vieux, mais la douleur de déploiement sans serveur est toujours une chose.
J'ai récemment développé une cli qui permet de construire des microservices dans AWS, en tirant parti d'AWS sam cli (d'où le nom de la cli: Rocketsam ).
Le cli permet la mise en cache par fonction (plus de déploiement complet vers le microservice si un seul code de fonction a changé). Il a également des fonctionnalités supplémentaires telles que le fractionnement du fichier modèle par fonction, le partage de code entre les fonctions, la récupération des journaux et plus :)
https://www.npmjs.com/package/rocketsam
Actuellement, le cli prend en charge la création de fonctions dans python 3.6 uniquement, mais peut être facilement étendu à l'avenir en fonction de la demande.