Desarrollo y Mantenimiento de Sistemas Informáticos

4º. 1er cuatrimestre. Itinerario de Sistemas de la Información. Grado en Ingeniería Informática. ULL


Organization DMSI org   Github Classroom DMSI class   Campus Virtual DMSI campus   Profesor Casiano   Chat Chat

GitHub Editor

Period in a repo

From any GitHub repo or pull request, developers can simply press the period (.) key to bring up the browser-based VS Code environment with the source code file ready for editing.

Substitute github by github.dev in a GitHub URL

That dot press to bring up the web-based editor takes you to https://github.dev/, so the same one-press . functionality can be duplicated just by changing a URL from “github.com” to “github.dev”.

Documentation

Esta documentación es sólo para usuarios GitHub Enterprise

Referencias

GitPod

Gitpod is an open source platform for automated and ready-to-code development environments that blends into your existing workflow. It enables developers to describe their dev environment as code and start instant and fresh development environments for each new task directly from your browser.

Aprendiendo GitPod

Configure Gitpod

Botón GitPod

Para tener el botón GitPod instala la correspondiente extensión en Chrome o Firefox

Open in VSCode

En el menú de arriba a la izquierda elige la opción “Open in VS Code”:

Tienes que instalar la extensión GitPod the VSCode y darle los permisos. A partir de ese momento puedes editar con tu VSCode local en el contenedor de GitPod.

See it running in my local machine, after the VSCode has been opened:

Observe the output in the terminal. We are running on the GitPod docker container

¡Ojo! tu VSCode local está compartiendo el GitPod Workspace. Cualquier modificación que hagas en el VSCode local se refleja en el GitPod Workspace en la nube y viceversa.

Snapshots

Whenever you want to share a reproducible example on StackOverflow or an issue report, providing real code that can be quickly tried, executed and explored is the best you can do. Online code playgrounds, such as CodePen or JSFiddle, are an excellent way to do that, as they are very accessible for both the creator and the readers. Unfortunately, they are not available for every programming platform, language and often don’t work for larger projects or examples.

Gitpod lets you create reproducible examples for any programming environment and any size of project.

No matter what state your Gitpod workspace is in, taking a Snapshot captures everything and provides you a link to share anywhere: on issues, forums (StackOverflow), emails and blogs. Anybody who clicks on a snapshot link instantly gets an exact copy of that workspace, including any uncommitted file changes and the UI layout.

See

Sustainable Node.js development with only a browser

See the article

Sustainable Node.js development with only a browser

Oferta para Estudiantes

Oferta Plan Personal (2021) Profesores

En esta URL https://gitpod.io/plans se puede solicitar un upgrade al plan “personal”  que permite acceder a repositorios privados si eres un miembro de una comunidad educativa. No he tenido que introducir tarjetas.

Importante: Cuando rellenes la solicitud ¡El campo VAT déjalo vacío!

Lo que pasa (Abril 2021) es que GitPod está siendo ofertado como parte del GitHub teachers’ toolbox. Por tanto, si tienes actualizado tu GitHub Toolbox, creo que tanto los profesores como los alumnos tienen acceso a repos privados y a la nube proveída por GitPod.

teacher-coupon

Está limitada a 100 horas de uso por mes:

En el ejemplo se ve los apuntes de PL (un repo público usando Jekyll) siendo editado con VSCode:

apuntes-pl-gitpod

todo funciona bien.

Con este plan es posible acceder a repos privados. En el repo en GitHub aparece un nuevo botón verde con etiqueta “GitPod”. Obsérvese que el repo es privado:

boton-gitpod-en-repo-privado

Cuando le damos al botón “GitPod” por primera vez es posible que nos salga un mensaje de error:

autorizar-gitpod-a-organizacion.png 8-horas-100-euros

Le damos los permisos adecuados:

gitpos-request-permissions

grant-access

y ya podemos editar nuestros repos privados.

Drawbacks according to Pattacini

Gitpod is fantastic but comes with some constraints that may affect yours and your students’ work:

Obviously, you’d need to learn how to deal with Docker files and do some preliminary tests on your side. Getting accustomed to Docker might take some time :hourglass_flowing_sand:

In a Gitpod workspace, the user has no sudo credentials. This is understandable and represents good practice, but sometimes it’d be convenient to install packages straight away from the console without the burden of adjusting the Dockerfile once more.

Pero en otro post posterior (Feb 25 2021) comenta:

Just wanted to tell you that Gipod has been growing up tremendously as well as awesomely and, among the latest advancements it provides, we have now root access

Gitpod is free only for public GitHub repositories. This is ok for public assignments but could be a hitch for private ones. An easy workaround could be to ask students to clone their private repositories only after the workspace is ready.

Esto se resuelve como he comentado

There’s the threshold of 100 hours/month per user. Quite reasonable, but much depends on your classroom payload. When you share a running workspace, you’ll share also your access to GitHub, which might not be desirable! This is a serious inconvenient during remote technical interviews, for example.

Finally, don’t expect to have quantum computers available from free Cloud IDE’s services. After all, there’s a trade-off and resources are limited (e.g. no GPU), even though Gitpod seems quite generous in this sense.

Docker Images

Si la imagen por defecto no se adapta a lo que quieres puedes configurarla

Véase Docker in Gitpod

Self Hosted

Gitpod, just as you know it from gitpod.io, can be deployed and operated on your own infrastructure. It supports different

You can find all configuration templates and installation scripts in the Gitpod repository:

https://github.com/gitpod-io/gitpod

If you already have a Kubernetes cluster, or don’t want/cannot use AWS or GCP, please follow the generic guide:

Referencias