En finir avec les Makefiles en Go avec GoReleaser

Magazine
Marque
GNU/Linux Magazine
Numéro
265
Mois de parution
septembre 2023
Spécialité(s)


Résumé

Quand on travaille avec des langages compilés, construire ou téléverser des artefacts sont des tâches qui peuvent devenir répétitives. On peut automatiser ces tâches avec des outils qui ont fait leurs preuves comme make. Mais il existe un outil qui permet d’automatiser un grand nombre de ces tâches en très peu de temps quand on fait du Golang : GoReleaser. Dans cet article, nous allons expérimenter de manière incrémentale ses fonctionnalités.


Lorsque j’ai débuté mon apprentissage du Golang il y a quelques mois, j’ai rapidement voulu automatiser un certain nombre d’actions répétitives, notamment la compilation. Au cours de mon apprentissage d’autres langages compilés, j’avais déjà utilisé make et des fichiers Makefile pour réaliser ce genre d’actions.

prepare:
    go mod tidy
 
build: prepare
    CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o bin/godraft -ldflags "-X main.Version=$$VERSION" main.go
 
dockerbuild:
    docker build -t zwindler/godraft:$$TAG --build-arg VERSION=$$TAG . && docker build -t zwindler/godraft:latest --build-arg VERSION=$$TAG .
La suite est réservée aux abonnés. Il vous reste 96% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant