posit-dev / posit-dev/rsconnect-python
support following symlinks
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 37
- Forks
- 28
- Merge moyen
- 1 j 3 h
- PR mergées (30 j)
- 7
Description
In my case, the app.py is a symlink to a file in the parent directory (long story, but there is a good reason for this). When rsconnect deploys an app, does it follow local symlinks so that the content is deployed to the server?
The reason I have symlinks is because I have many apps in the same directory (named app_basic.py, app_recipes.py, etc.) and I want to deploy the apps individually, but I think rsconnect wants them to be named app.py. So I made a directory for each with symlinks from foo/app.py to the original file, like app_basic.py.
Why are they all in the same directory? Because they share common submodules, like utils.py, chat/init.py, and so on.
When constructing the list of files to bundle we currently rely on os.path.isfile so symlinks are not followed.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez dans rsconnect/bundle.py, au niveau de l'appel à os.path.isfile vers la ligne 962, où la liste des fichiers à intégrer au bundle est construite. Suivez la manière dont cette liste est utilisée lors du déploiement, puis vérifiez que le contenu cible d'un fichier d'application lié symboliquement est inclus dans le bundle sans modifier le comportement existant de sélection des fichiers.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- cli
- Type d'issue
- Fonctionnalité
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Activité
- À l'abandon
- Clarté
- Clairement spécifiée
- Accessibilité débutants
- 55/100