mirror of
https://0xacab.org/sutty/sutty
synced 2024-11-26 08:06:23 +00:00
BREAKING CHANGE: deprecar tareas de makefile
This commit is contained in:
parent
416607df9c
commit
49e97ca7b0
1 changed files with 1 additions and 55 deletions
56
Makefile
56
Makefile
|
@ -1,51 +1,17 @@
|
||||||
SHELL := /bin/bash
|
SHELL := /bin/bash
|
||||||
.DEFAULT_GOAL := help
|
|
||||||
|
|
||||||
export
|
|
||||||
|
|
||||||
# XXX: El espacio antes del comentario cuenta como espacio
|
# XXX: El espacio antes del comentario cuenta como espacio
|
||||||
args ?=## Argumentos para Hain
|
args ?=## Argumentos para Hain
|
||||||
commit ?= origin/rails## Commit desde el que actualizar
|
|
||||||
env ?= staging## Entorno del nodo delegado
|
|
||||||
sutty ?= $(SUTTY)## Dirección local
|
|
||||||
delegate ?= $(DELEGATE)## Cambia el nodo delegado
|
delegate ?= $(DELEGATE)## Cambia el nodo delegado
|
||||||
hain ?= ENV_FILE=.env $(HAINISH)## Ubicación de Hainish
|
hain ?= ENV_FILE=.env $(HAINISH)## Ubicación de Hainish
|
||||||
|
|
||||||
# El nodo delegado tiene dos entornos, production y staging.
|
|
||||||
# Dependiendo del entorno que elijamos, se van a generar los assets y el
|
|
||||||
# contenedor y subirse a un servidor u otro. No utilizamos CI/CD (aún).
|
|
||||||
#
|
|
||||||
# Production es el entorno de panel.sutty.nl
|
|
||||||
ifeq ($(env),production)
|
|
||||||
container ?= panel
|
|
||||||
## TODO: Cambiar a otra cosa
|
|
||||||
branch ?= rails
|
|
||||||
public ?= public
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Staging es el entorno de panel.staging.sutty.nl
|
|
||||||
ifeq ($(env),staging)
|
|
||||||
container := staging
|
|
||||||
branch := staging
|
|
||||||
public := staging
|
|
||||||
endif
|
|
||||||
|
|
||||||
help: always ## Ayuda
|
|
||||||
@echo -e "Sutty\n" | sed -re "s/^.*/\x1B[38;5;197m&\x1B[0m/"
|
|
||||||
@echo -e "Servidor: https://panel.$(SUTTY_WITH_PORT)/\n"
|
|
||||||
@echo -e "Uso: make TAREA args=\"ARGUMENTOS\"\n"
|
|
||||||
@echo -e "Tareas:\n"
|
|
||||||
@grep -E "^[a-z\-]+:.*##" Makefile | sed -re "s/(.*):.*##(.*)/\1;\2/" | column -s ";" -t | sed -re "s/^([^ ]+) /\x1B[38;5;197m\1\x1B[0m/"
|
|
||||||
@echo -e "\nArgumentos:\n"
|
|
||||||
@grep -E "^[a-z\-]+ \?=.*##" Makefile | sed -re "s/(.*) \?=.*##(.*)/\1;\2/" | column -s ";" -t | sed -re "s/^([^ ]+) /\x1B[38;5;197m\1\x1B[0m/"
|
|
||||||
|
|
||||||
test: always ## Ejecutar los tests
|
test: always ## Ejecutar los tests
|
||||||
$(MAKE) rake args="test RAILS_ENV=test $(args)"
|
$(MAKE) rake args="test RAILS_ENV=test $(args)"
|
||||||
|
|
||||||
postgresql: ## Iniciar la base de datos
|
postgresql: ## Iniciar la base de datos
|
||||||
pgrep postgres >/dev/null || $(hain) postgresql
|
pgrep postgres >/dev/null || $(hain) postgresql
|
||||||
|
|
||||||
serve-js: node_modules ## Iniciar el servidor de desarrollo de Javascript
|
serve-js: ## Iniciar el servidor de desarrollo de Javascript
|
||||||
$(hain) 'bundle exec ./bin/webpack-dev-server'
|
$(hain) 'bundle exec ./bin/webpack-dev-server'
|
||||||
|
|
||||||
serve: postgresql Gemfile.lock ## Iniciar el servidor de desarrollo de Rails
|
serve: postgresql Gemfile.lock ## Iniciar el servidor de desarrollo de Rails
|
||||||
|
@ -83,26 +49,6 @@ audit: ## Encuentra dependencias con vulnerabilidades
|
||||||
brakeman: ## Busca posibles vulnerabilidades en Sutty
|
brakeman: ## Busca posibles vulnerabilidades en Sutty
|
||||||
$(MAKE) bundle args='exec brakeman'
|
$(MAKE) bundle args='exec brakeman'
|
||||||
|
|
||||||
yarn: ## Tareas de yarn
|
|
||||||
$(hain) 'yarn $(args)'
|
|
||||||
|
|
||||||
build: Gemfile.lock ## Generar la imagen Docker
|
|
||||||
time docker build --build-arg="BRANCH=$(branch)" --build-arg="RAILS_MASTER_KEY=`cat config/master.key`" -t sutty/$(container) .
|
|
||||||
docker tag sutty/$(container):latest sutty:keep
|
|
||||||
@echo -e "\a"
|
|
||||||
|
|
||||||
save: ## Subir la imagen Docker al nodo delegado
|
|
||||||
time docker save sutty/$(container):latest | ssh root@$(delegate) docker load
|
|
||||||
date +%F | xargs -I {} git tag -f $(container)-{}
|
|
||||||
@echo -e "\a"
|
|
||||||
|
|
||||||
ota: ## Actualizar Rails en el nodo delegado
|
|
||||||
git push
|
|
||||||
ssh $(delegate) git -C /srv/sutty/srv/http/panel.sutty.nl pull
|
|
||||||
ssh $(delegate) git -C /srv/sutty/srv/http/panel.sutty.nl lfs prune
|
|
||||||
ssh $(delegate) chown -R 1000:82 /srv/sutty/srv/http/panel.sutty.nl
|
|
||||||
ssh $(delegate) docker exec $(container) rails reload
|
|
||||||
|
|
||||||
# Correr un test en particular por ejemplo
|
# Correr un test en particular por ejemplo
|
||||||
# `make test/models/usuarie_test.rb`
|
# `make test/models/usuarie_test.rb`
|
||||||
tests := $(shell find test/ -name "*_test.rb")
|
tests := $(shell find test/ -name "*_test.rb")
|
||||||
|
|
Loading…
Reference in a new issue