PTVS icon indicating copy to clipboard operation
PTVS copied to clipboard

Failed to create "tiangolo/full-stack-fastapi-postgresql" template in Cookiecutter.

Open ttSpace opened this issue 1 year ago • 3 comments

Describe the bug

image

Steps to Reproduce

  1. Launch VS
  2. Click "View->Cookiecutter Explorer"
  3. Select "tiangolo/full-stack-fastapi-postgresql" to click "Next"
  4. Wait for load successfully and then click "Create and Open Folder"

Expected behavior

It should create successfully.

Additional context and screenshots

An error occurred while creating the template.

image

Logs

Output for General in the Output panel


----- Cloning template 'tiangolo/full-stack-fastapi-postgresql' -----
Cloning into 'full-stack-fastapi-postgresql'...
----- Successfully cloned template 'tiangolo/full-stack-fastapi-postgresql' to 'C:\Users\vting\.cookiecutters\full-stack-fastapi-postgresql' -----
----- Loading template 'tiangolo/full-stack-fastapi-postgresql' -----
{"cookiecutter": {"project_name": "Base Project", "project_slug": "{{ cookiecutter.project_name|lower|replace(' ', '-') }}", "domain_main": "{{cookiecutter.project_slug}}.com", "domain_staging": "stag.{{cookiecutter.domain_main}}", "docker_swarm_stack_name_main": "{{cookiecutter.domain_main|replace('.', '-')}}", "docker_swarm_stack_name_staging": "{{cookiecutter.domain_staging|replace('.', '-')}}", "secret_key": "changethis", "first_superuser": "admin@{{cookiecutter.domain_main}}", "first_superuser_password": "changethis", "backend_cors_origins": "[\"http://localhost\", \"http://localhost:4200\", \"http://localhost:3000\", \"http://localhost:8080\", \"https://localhost\", \"https://localhost:4200\", \"https://localhost:3000\", \"https://localhost:8080\", \"http://dev.{{cookiecutter.domain_main}}\", \"https://{{cookiecutter.domain_staging}}\", \"https://{{cookiecutter.domain_main}}\", \"http://local.dockertoolbox.tiangolo.com\", \"http://localhost.tiangolo.com\"]", "smtp_port": "587", "smtp_host": "", "smtp_user": "", "smtp_password": "", "smtp_emails_from_email": "info@{{cookiecutter.domain_main}}", "postgres_password": "changethis", "pgadmin_default_user": "{{cookiecutter.first_superuser}}", "pgadmin_default_user_password": "{{cookiecutter.first_superuser_password}}", "traefik_constraint_tag": "{{cookiecutter.domain_main}}", "traefik_constraint_tag_staging": "{{cookiecutter.domain_staging}}", "traefik_public_constraint_tag": "traefik-public", "flower_auth": "admin:{{cookiecutter.first_superuser_password}}", "sentry_dsn": "", "docker_image_prefix": "", "docker_image_backend": "{{cookiecutter.docker_image_prefix}}backend", "docker_image_celeryworker": "{{cookiecutter.docker_image_prefix}}celeryworker", "docker_image_frontend": "{{cookiecutter.docker_image_prefix}}frontend", "_copy_without_render": ["frontend/src/**/*.html", "frontend/src/**/*.vue", "frontend/node_modules/*", "backend/app/app/email-templates/**"]}}
----- Successfully loaded template 'tiangolo/full-stack-fastapi-postgresql' -----

----- Creating files using template 'tiangolo/full-stack-fastapi-postgresql' -----
DEBUG main.py: context_file is C:\Users\vting\.cookiecutters\full-stack-fastapi-postgresql\cookiecutter.json
DEBUG generate.py: Context generated is {'cookiecutter': OrderedDict([('project_name', 'Base Project'), ('project_slug', "{{ cookiecutter.project_name|lower|replace(' ', '-') }}"), ('domain_main', '{{cookiecutter.project_slug}}.com'), ('domain_staging', 'stag.{{cookiecutter.domain_main}}'), ('docker_swarm_stack_name_main', "{{cookiecutter.domain_main|replace('.', '-')}}"), ('docker_swarm_stack_name_staging', "{{cookiecutter.domain_staging|replace('.', '-')}}"), ('secret_key', 'changethis'), ('first_superuser', 'admin@{{cookiecutter.domain_main}}'), ('first_superuser_password', 'changethis'), ('backend_cors_origins', '["http://localhost", "http://localhost:4200", "http://localhost:3000", "http://localhost:8080", "https://localhost", "https://localhost:4200", "https://localhost:3000", "https://localhost:8080", "http://dev.{{cookiecutter.domain_main}}", "https://{{cookiecutter.domain_staging}}", "https://{{cookiecutter.domain_main}}", "http://local.dockertoolbox.tiangolo.com", "http://localhost.tiangolo.com"]'), ('smtp_port', '587'), ('smtp_host', ''), ('smtp_user', ''), ('smtp_password', ''), ('smtp_emails_from_email', 'info@{{cookiecutter.domain_main}}'), ('postgres_password', 'changethis'), ('pgadmin_default_user', '{{cookiecutter.first_superuser}}'), ('pgadmin_default_user_password', '{{cookiecutter.first_superuser_password}}'), ('traefik_constraint_tag', '{{cookiecutter.domain_main}}'), ('traefik_constraint_tag_staging', '{{cookiecutter.domain_staging}}'), ('traefik_public_constraint_tag', 'traefik-public'), ('flower_auth', 'admin:{{cookiecutter.first_superuser_password}}'), ('sentry_dsn', ''), ('docker_image_prefix', ''), ('docker_image_backend', '{{cookiecutter.docker_image_prefix}}backend'), ('docker_image_celeryworker', '{{cookiecutter.docker_image_prefix}}celeryworker'), ('docker_image_frontend', '{{cookiecutter.docker_image_prefix}}frontend'), ('_copy_without_render', ['frontend/src/**/*.html', 'frontend/src/**/*.vue', 'frontend/node_modules/*', 'backend/app/app/email-templates/**'])])}
DEBUG utils.py: Making sure path exists: C:\Users\vting/.cookiecutter_replay/
DEBUG find.py: Searching C:\Users\vting\.cookiecutters\full-stack-fastapi-postgresql for the project template.
Traceback (most recent call last):
  File "c:\program files\microsoft visual studio\2022\preview\common7\ide\extensions\microsoft\cookiecutter\cookiecutter_run.py", line 46, in <module>
    sys.exit(int(main() or 0))
  File "c:\program files\microsoft visual studio\2022\preview\common7\ide\extensions\microsoft\cookiecutter\cookiecutter_run.py", line 37, in main
    cookiecutter(
  File "C:\Users\vting\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\Local\Microsoft\CookiecutterTools\env\lib\site-packages\cookiecutter\main.py", line 140, in cookiecutter
    return generate_files(
  File "C:\Users\vting\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\Local\Microsoft\CookiecutterTools\env\lib\site-packages\cookiecutter\generate.py", line 253, in generate_files
    template_dir = find_template(repo_dir)
  File "C:\Users\vting\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\Local\Microsoft\CookiecutterTools\env\lib\site-packages\cookiecutter\find.py", line 42, in find_template
    raise NonTemplatedInputDirException
cookiecutter.exceptions.NonTemplatedInputDirException
C:\Users\vting\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\Local\Microsoft\CookiecutterTools\env\scripts\python.exe returned an exit code of 1.
----- Failed to create files using template 'tiangolo/full-stack-fastapi-postgresql' -----

ttSpace avatar Nov 20 '23 06:11 ttSpace

From reading the logs DEBUG utils.py: Making sure path exists: C:\Users\vting/.cookiecutter_replay/, looks like it's for a directory that doesn't exist?

StellaHuang95 avatar Nov 29 '23 23:11 StellaHuang95

The directory exists.

image

ttSpace avatar Dec 01 '23 01:12 ttSpace

I'm experiencing the same issue. Has a solution been identified?

weidlu avatar Dec 17 '23 13:12 weidlu