Update utilisation du makefile authored by Arthur Dewarumez's avatar Arthur Dewarumez
......@@ -3,12 +3,12 @@ Il existe plusieurs Makefile pour compiler Canopsis. Un Makefile par sous-projet
# Utilisation du makefile
## utilisation de base
- init: initialise le projet en téléchargeant les dépendances
- init: initialise le projet en téléchargeant les dépendances. Seulement disponible dans le Makefile à la racine du projet.
- build: compile le projet
- test: éxecute les tests
- release: compile tous les sous-projets et regroupe les binaires dans une archive. N'est disponibles que sur le Makefile généraliste.
- release: compile tous les sous-projets et regroupe les binaires dans une archive. Seulement disponible dans le Makefile à la racine du projet.
- clean: supprime les binaires générés lors d'une compilation
- full_clean: appel la target clean, supprime les répertoires *vendor* et vide le cache du gestionnaire de dépendance go.
- full_clean: appel la target clean, supprime les répertoires *vendor* et vide le cache du gestionnaire de dépendance go. Seulement disponible dans le Makefile à la racine du projet.
- docker_build: construit les images docker
## Utilisation avancée
......@@ -34,28 +34,23 @@ include ../../Makefile.var
BINARY:=put a name here
init:
@echo "Initialising ${PROJECT} project"
@${DEP_MANAGER} install
clean:
@echo "Cleaning ${PROJECT} project"
-@rm -r ${BINARY}
build:
@echo "Building ${PROJECT} project"
@env GOOS=$(OS) GOARCH=$(ARCH) CGO_ENABLED=$(CGO) go build -o ${OUTPUT_DIR}/${BINARY} ${LDFLAGS}
full_clean: clean
@echo "Purging ${PROJECT} project"
-@rm -r ${VENDOR_DIR}
@${DEP_MANAGER} cache-clear
@env GOOS=$(OS) GOARCH=$(ARCH) CGO_ENABLED=$(CGO) go build -o ${OUTPUT_DIR}${BINARY} ${LDFLAGS}
docker_build:
@echo "Building ${PROJECT} project docker image"
@docker build . --build-arg BINARY_NAME=${BINARY} --build-arg PROJECT_NAME=${PROJECT} -t ${IMAGE_NAME}:${TAG}
ifndef CLEAN_UP
-@rm -r ${ROOT_DIR}${VENDOR_DIR}
@cd ${ROOT_DIR} && ${DEP_MANAGER} install
endif
@cd ${ROOT_DIR} && docker build . --build-arg BINARY_NAME=${BINARY} --build-arg PROJECT_NAME=${PROJECT} -t canopsis/${IMAGE_NAME}:${TAG} -f cmd/${PROJECT}/Dockerfile
test: build
test:
@echo "Testing ${PROJECT} project"
@go test ${GO_TEST_PARAM}
```
\ No newline at end of file