Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lnds/tarea-1-fdo-2023-2
Tarea 1 para el curso fundamentos de DevOps 2023-2 (primavera)
https://github.com/lnds/tarea-1-fdo-2023-2
Last synced: 24 days ago
JSON representation
Tarea 1 para el curso fundamentos de DevOps 2023-2 (primavera)
- Host: GitHub
- URL: https://github.com/lnds/tarea-1-fdo-2023-2
- Owner: lnds
- Created: 2023-10-25T20:24:22.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-11-13T15:32:03.000Z (about 1 year ago)
- Last Synced: 2024-11-05T11:29:25.198Z (2 months ago)
- Language: HTML
- Size: 269 KB
- Stars: 0
- Watchers: 2
- Forks: 30
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# Tarea 1
## Preparación
1. Haz un fork de este repo en tu propia cuenta en GitHub.
2. Clonz el fork en ReplIt, usando el botón `Import from Github`, tal como se muestra en la imagen:![](replit-from-github.png)
## Paso 1
Crea una rama llamada `crear-libros`, y luego cámbiate a esta:
```
git checkout -b crear-libros
git switch crear-libros
```Modifica el archivo `main.py` en la línea 3 dejándola así:
```python
from flask import Flask, render_template, request, url_for, redirect```
Luego agrega la siguiente ruta al final del archivo `main.py`, antes de las línea con el comentario `# run the server`
```python
@app.route('/create/', methods=('GET', 'POST'))
def create():
return render_template('create.html')# run the server
```Agrega el cambio al área stage de git con el siguiente comando en la shell de Replit:
```
git add main.py
```# Paso 2
En la carpeta templates agrega el archivo `create.html` y agrega el siguiente código en este:
```html
{% extends 'base.html' %}{% block content %}
{% block title %} Add a New Book {% endblock %}
Title
Author
Number of pages
Review
Submit
{% endblock %}
```Agrega la carpeta templates al stage:
```
git add templates
```Ahora haz un commit de la siguiente forma:
```
git commit -m "feat: agrega el endpoint create"
```Luego de esto revia que los cambios se reflejan ejecutando el programa, y navegando a la url `/create` en el browser (webview) de ReplIt.
# Paso 3
Modifica la función `create` en el archivo `main.py` dejándola así:
```python
@app.route('/create/', methods=('GET', 'POST'))
def create():
if request.method == 'POST':
title = request.form['title']
author = request.form['author']
pages_num = int(request.form['pages_num'])
review = request.form['review']conn = get_db_connection()
cur = conn.cursor()
cur.execute('INSERT INTO books (title, author, pages_num, review)'
'VALUES (%s, %s, %s, %s)',
(title, author, pages_num, review))
conn.commit()
cur.close()
conn.close()
return redirect(url_for('index'))return render_template('create.html')
```Prueba que estos cambios funcionan agregándo nuevos libros.
Haz un commit con este cambio con el mensaje `"feat: implementa inserción de libros en la base de datos"`.
# Paso 4
Respalda tu rama en tu fork con este comando:
```
git push origin crear-libros
```Cambiate a la rama main e integra los cambios de la rama `crear-libros`:
```
git switch main
git rebase crear-libros
```# Paso 5
Ejecuta este comando:
```
git log --pretty=format:" - %h %an %as: %s"
```De la salida de ese comando selecciona las entradas que corresponden a los commits que has realizado hasta este momento.
Agrega esas líneas seleccionada en el archivo `CHANGELOG.md` debajo de la linea que dice `## [Unreleased]` (asegurate de dejar una linea en blanco antes y después de las lineas que hayas ingresado).
Haz un commit incluyendo el archivo `CHANGELOG.md` y luego haz un push a tu fork.
# Paso 6
Agrega un archivo que se llame `RESPUESTAS.md` y anota allí las siguientes preguntas con sus respuestas:
- ¿Si ejecutas el comand `git blame main.py` qué ocurre?
- Explica cómo funciona el comando log del paso 5
- ¿Cuántas veces modificó el archivo `README.md` el profesor? ¿Cómo determinaste ese número?
- Anota los nombres de los integrantes del grupo que realizó la tareaRecuerda hacer un commit para el archivo `RESPUESTAS.md` y su respectivo push.
# Entrega
Envía un pull request a este repositorio para entregar tu tarea.