Skip to content

lemirving/ASCII-Spinning-Donut

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ASCII Spinning Donut (Projeto DevOps)

Este projeto implementa a clássica animação do "Donut Giratório" (Rotating Donut) usando Python e Pygame. Ele serve como uma demonstração prática da aplicação de um ciclo de vida de software completo (DevOps), desde o versionamento até a entrega contínua.


Stack Tecnológica e Conceitos de DevOps Aplicados

Conceito Ferramenta/Recurso Descrição da Aplicação
Containerização Docker, Dockerfile O aplicativo é empacotado em uma imagem Docker (carlosevan/ascii-spinning-donut).
CI/CD Pipeline GitHub Actions Configuração de um fluxo de trabalho que automatiza o Build da imagem e o Push para o Container Registry a cada commit na main.
Versionamento Commits Semânticos Uso de prefixos (feat:, chore:, ci:, refactor:, docs:) para manter um histórico de commits limpo e significativo.
Otimização de Build Docker Cache O Pipeline utiliza o cache do Docker Registry para acelerar as construções futuras (cache-from e cache-to).
Monitoramento Dependabot Configurado para monitorar e propor Pull Requests (chore:) automáticos para atualizações de dependências do Python.

Como Rodar a Aplicação (Prova de Conceito)

Para rodar a aplicação, você só precisa ter o Docker Desktop instalado. O processo de build e push para o Container Registry já foi automatizado.

1. Puxar a Imagem

A imagem mais recente foi enviada pelo nosso Pipeline de CI/CD para o Docker Hub:

docker pull carlosevan/ascii-spinning-donut:latest

2. Para rodar pelo WSL, basta acessar o linux pelo terminal Powershell e executar o seguinte comando:

docker run -it --rm \
    --net=host \
    -e DISPLAY \
    -v /tmp/.X11-unix:/tmp/.X11-unix \
    -e PULSE_SERVER=unix:/run/user/$(id -u)/pulse/native \
    -v /run/user/$(id -u)/pulse/native:/run/user/$(id -u)/pulse/native \
    carlosevan/ascii-spinning-donut:latest

3. Para rodar pelo Linux, basta acessar o terminal e executar o seguinte comando:

docker run -it --rm \
    --net=host \
    -e DISPLAY \
    -v /tmp/.X11-unix:/tmp/.X11-unix \
    -v /dev/dri:/dev/dri \
    -e PULSE_SERVER=unix:/run/user/$(id -u)/pulse/native \
    -v /run/user/$(id -u)/pulse/native:/run/user/$(id -u)/pulse/native \
    carlosevan/ascii-spinning-donut:latest

About

Utilizamos esse projeto como entrega do Trabalho de Tópicos Avançados em Computação aplicando conceitos de devOps a este simples jogo implementado em python com a utilização da biblioteca pygame.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors