-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTaskfile.yml
More file actions
90 lines (81 loc) · 2.75 KB
/
Taskfile.yml
File metadata and controls
90 lines (81 loc) · 2.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
version: 3
# Taskfile principal - Tâches globales et inclusions
# Charge automatiquement les variables depuis le fichier .env s'il existe
dotenv: [ '.env', '.env.example' ]
includes:
docker: ./taskfiles/docker/Taskfile.yml
utils: ./taskfiles/utils/Taskfile.yml
env: ./taskfiles/env/Taskfile.yml
nodejs: ./taskfiles/nodejs/Taskfile.yml
download: ./taskfiles/download/Taskfile.yml
lint: ./taskfiles/lint/Taskfile.yml
vars:
# Variables avec valeurs par défaut depuis .env ou valeurs de fallback
PROJECT_NAME: '{{.PROJECT_NAME | default "flutter"}}'
ENVIRONMENT: '{{.ENVIRONMENT | default "development"}}'
# Variables Flutter et Node.js depuis .env.example
FLUTTER_VERSION: '{{.FLUTTER_VERSION | default "3.35.5"}}'
NODE_VERSION: '{{.NODE_VERSION | default "20"}}'
tasks:
default:
desc: "Affiche l'aide et les tâches disponibles"
silent: true
cmds:
- echo "🛠️ Collection de Taskfiles pour le développement"
- echo ""
- echo "Tâches globales disponibles :"
- task --list
- echo ""
lint:all:
desc: "Exécute tous les linters disponibles"
cmds:
- task: lint:yml
vars:
IGNORE_DIR: "taskfiles,apps"
- task: lint:md
vars:
IGNORE_DIR: "taskfiles,apps"
- task: lint:action
- task: lint:docker
vars:
DOCKERCOMPOSEFILE: "docker-compose.yml"
info:
desc: "Affiche les informations du projet avec les variables d'environnement"
silent: true
cmds:
- |
export PROJECT_VERSION=$(jq -r .version package.json)
echo "🛠️ {{.PROJECT_NAME}} v$PROJECT_VERSION - Collection de Taskfiles"
echo "Environnement: {{.ENVIRONMENT}}"
echo "Flutter version: {{.FLUTTER_VERSION}}"
echo "Node.js version: {{.NODE_VERSION}}"
help:
desc: "Affiche l'aide détaillée"
aliases: [ h ]
silent: true
cmds:
- task: default
create:apps:
desc: "Construit l'image Docker pour l'environnement de développement Flutter"
silent: true
cmds:
- |
echo "🏗️ Construction de l'image Docker avec Flutter {{.FLUTTER_VERSION}}..."
docker build \
--build-arg FLUTTER_VERSION={{.FLUTTER_VERSION}} \
-t flutter-dev:latest \
-t flutter-dev:{{.FLUTTER_VERSION}} \
.
echo "✅ Image Docker construite avec succès!"
new:apps:
desc: "Crée une nouvelle application Flutter dans le répertoire apps"
silent: true
cmds:
- |
echo "🚀 Création d'une nouvelle application Flutter avec la version {{.FLUTTER_VERSION}}..."
docker run --rm -it \
-v $PWD:/app \
-e FLUTTER_VERSION={{.FLUTTER_VERSION}} \
flutter-dev:{{.FLUTTER_VERSION}} \
flutter create apps
echo "✅ Application Flutter créée dans le répertoire apps!"