github-samples / github-samples/pets-workshop

full-day workshop: Make the generated devcontainer startup portable and non-blocking

Abierto
#263 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

priority: P0
Lenguaje dominante
Python
Estrellas
80
Forks
161
Merge medio
31 min
PR fusionados (30 d)
1

Descripción

Problem

Step 0 allows a repository name chosen by the learner or workshop leader, but content/full-day/3-codespaces.md hard-codes this startup command:

"postStartCommand": "chmod +x /workspaces/pets-workshop/app/scripts/start-app.sh && /workspaces/pets-workshop/app/scripts/start-app.sh"

It fails when the generated repository is not named pets-workshop. In addition, start-app.sh deliberately waits for both application processes and does not exit, so using it directly as a lifecycle command can leave the Codespaces startup task running indefinitely.

Suggested change

Use the dev container workspace variable or a workspace-relative command, and launch the long-running application through a non-blocking mechanism appropriate for dev containers.

Acceptance criteria

  • The command works for any repository name allowed by Step 0.
  • The dev container lifecycle command completes after starting the services.
  • Flask and Astro logs remain accessible to the learner.
  • Both services restart predictably after a Codespace stop/start.
  • Service cleanup does not leave duplicate processes.

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comienza con content/full-day/3-codespaces.md y app/scripts/start-app.sh; inspecciona cómo se genera postStartCommand y cómo el script gestiona ambos servicios. Haz pruebas con un nombre de repositorio distinto de pets-workshop y deteniendo e iniciando un Codespace, verificando la finalización del ciclo de vida, los logs visibles de Flask y Astro, reinicios predecibles y la ausencia de procesos duplicados.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
flask, python, shell
Área
developer-experience, devops
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Activo
Claridad
Bastante claro
Aptitud para principiantes
55/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.