mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-23 15:08:16 +02:00
CI : chemins cmd/jean -> cmd/ajean oublies dans les workflows
Le renommage des dossiers avait ete repercute dans release.yml mais pas dans ci.yml, qui compilait encore ./cmd/jean : les deux jobs echouaient. Une occurrence trainait aussi dans mac-build.yml (cmd/jean/icon.ico), que le remplacement precedent n'avait attrapee que pour icon.png. Un cas n'etait pas qu'un commentaire : tools/assemble-ui utilisait "internal/jean/ui" comme chemin par defaut. La directive go:generate passe le dossier en argument, donc la generation fonctionnait, mais l'invocation directe documentee dans son propre en-tete (go run ./tools/assemble-ui) aurait echoue. Le reste etait des commentaires designant les anciens chemins, corriges pour que le depot ne mente plus sur sa propre structure. Job ci rejoue en entier en local : gofmt, vet, build, tests et les quatre cross-compilations de release.
This commit is contained in:
1 parent
75929e7b60
commit
2b20158e7c
10 files changed
+17
-17
No files matched your search
@@ -24,7 +24,7 @@ jobs:
|
|||||||
# par Cocoa (CGO) → les cibles macOS se compilent sur un runner Apple
|
# par Cocoa (CGO) → les cibles macOS se compilent sur un runner Apple
|
||||||
# (job « macos » ci-dessous, comme dans release.yml).
|
# (job « macos » ci-dessous, comme dans release.yml).
|
||||||
for t in linux/amd64 linux/arm64 windows/amd64 windows/arm64; do
|
for t in linux/amd64 linux/arm64 windows/amd64 windows/arm64; do
|
||||||
GOOS=${t%/*} GOARCH=${t#*/} CGO_ENABLED=0 go build -o /dev/null ./cmd/jean
|
GOOS=${t%/*} GOARCH=${t#*/} CGO_ENABLED=0 go build -o /dev/null ./cmd/ajean
|
||||||
done
|
done
|
||||||
|
|
||||||
macos:
|
macos:
|
||||||
@@ -41,7 +41,7 @@ jobs:
|
|||||||
- run: go test ./...
|
- run: go test ./...
|
||||||
- name: build macOS (CGO, arm64 + amd64)
|
- name: build macOS (CGO, arm64 + amd64)
|
||||||
run: |
|
run: |
|
||||||
CGO_ENABLED=1 GOOS=darwin GOARCH=arm64 go build -o /dev/null ./cmd/jean
|
CGO_ENABLED=1 GOOS=darwin GOARCH=arm64 go build -o /dev/null ./cmd/ajean
|
||||||
CGO_ENABLED=1 GOOS=darwin GOARCH=amd64 \
|
CGO_ENABLED=1 GOOS=darwin GOARCH=amd64 \
|
||||||
CGO_CFLAGS="-arch x86_64" CGO_LDFLAGS="-arch x86_64" \
|
CGO_CFLAGS="-arch x86_64" CGO_LDFLAGS="-arch x86_64" \
|
||||||
go build -o /dev/null ./cmd/jean
|
go build -o /dev/null ./cmd/ajean
|
||||||
@@ -19,7 +19,7 @@ jobs:
|
|||||||
CGO_ENABLED=1 GOOS=darwin GOARCH=arm64 \
|
CGO_ENABLED=1 GOOS=darwin GOARCH=arm64 \
|
||||||
go build -trimpath -ldflags="-s -w" -o dist/ajean-darwin-arm64 ./cmd/ajean
|
go build -trimpath -ldflags="-s -w" -o dist/ajean-darwin-arm64 ./cmd/ajean
|
||||||
mkdir -p /tmp/jean.iconset
|
mkdir -p /tmp/jean.iconset
|
||||||
sips -s format png 'cmd/jean/icon.ico' --out /tmp/icon.png >/dev/null 2>&1 || true
|
sips -s format png 'cmd/ajean/icon.ico' --out /tmp/icon.png >/dev/null 2>&1 || true
|
||||||
for s in 16 32 128 256 512; do
|
for s in 16 32 128 256 512; do
|
||||||
sips -z $s $s /tmp/icon.png --out "/tmp/jean.iconset/icon_${s}x${s}.png" >/dev/null 2>&1 || true
|
sips -z $s $s /tmp/icon.png --out "/tmp/jean.iconset/icon_${s}x${s}.png" >/dev/null 2>&1 || true
|
||||||
done
|
done
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
// Point d'entrée du binaire ajean. Tout le code vit dans internal/jean ; ce
|
// Point d'entrée du binaire ajean. Tout le code vit dans internal/ajean ; ce
|
||||||
// dossier ne porte que le main() et les ressources Windows (.syso, icône,
|
// dossier ne porte que le main() et les ressources Windows (.syso, icône,
|
||||||
// versioninfo) qui doivent résider dans le dossier du package main.
|
// versioninfo) qui doivent résider dans le dossier du package main.
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// Jean — cœur du binaire (package jean, appelé par cmd/jean). Les fichiers sont préfixés par domaine
|
// Jean — cœur du binaire (package jean, appelé par cmd/ajean). Les fichiers sont préfixés par domaine
|
||||||
// (Go n'autorise pas de sous-dossiers dans un même package) :
|
// (Go n'autorise pas de sous-dossiers dans un même package) :
|
||||||
//
|
//
|
||||||
// main.go point d'entrée : dispatch des sous-commandes, chemins (JeanHome…)
|
// main.go point d'entrée : dispatch des sous-commandes, chemins (JeanHome…)
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ package ajean
|
|||||||
// au noir en laissant les icônes système en bleu.
|
// au noir en laissant les icônes système en bleu.
|
||||||
//
|
//
|
||||||
// Aucun asset binaire à committer : tout est dessiné ici, et l'icône du .exe est
|
// Aucun asset binaire à committer : tout est dessiné ici, et l'icône du .exe est
|
||||||
// produite par `go generate ./cmd/jean` (voir tools/gen-icon).
|
// produite par `go generate ./cmd/ajean` (voir tools/gen-icon).
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
|
|||||||
@@ -335,7 +335,7 @@ func portBusy(port int) bool {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// binaryVersion lit la version dans les ressources du fichier (VS_VERSIONINFO,
|
// binaryVersion lit la version dans les ressources du fichier (VS_VERSIONINFO,
|
||||||
// posées par goversioninfo, cf cmd/jean/versioninfo.json), comme le fait
|
// posées par goversioninfo, cf cmd/ajean/versioninfo.json), comme le fait
|
||||||
// l'onglet « Détails » des propriétés Windows.
|
// l'onglet « Détails » des propriétés Windows.
|
||||||
//
|
//
|
||||||
// ⚠️ NE PAS remplacer par un `ajean version` exécuté : le binaire est compilé en
|
// ⚠️ NE PAS remplacer par un `ajean version` exécuté : le binaire est compilé en
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<!doctype html>
|
<!doctype html>
|
||||||
<!-- GÉNÉRÉ depuis ui/src/ par tools/assemble-ui (go generate ./internal/jean) — NE PAS ÉDITER index.html DIRECTEMENT -->
|
<!-- GÉNÉRÉ depuis ui/src/ par tools/assemble-ui (go generate ./internal/ajean) — NE PAS ÉDITER index.html DIRECTEMENT -->
|
||||||
<html lang="fr"><head>
|
<html lang="fr"><head>
|
||||||
<meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover">
|
<meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover">
|
||||||
<!-- PWA standalone : "Ajouter à l'écran d'accueil" sur iPhone → app plein écran
|
<!-- PWA standalone : "Ajouter à l'écran d'accueil" sur iPhone → app plein écran
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<!doctype html>
|
<!doctype html>
|
||||||
<!-- GÉNÉRÉ depuis ui/src/ par tools/assemble-ui (go generate ./internal/jean) — NE PAS ÉDITER index.html DIRECTEMENT -->
|
<!-- GÉNÉRÉ depuis ui/src/ par tools/assemble-ui (go generate ./internal/ajean) — NE PAS ÉDITER index.html DIRECTEMENT -->
|
||||||
<html lang="fr"><head>
|
<html lang="fr"><head>
|
||||||
<meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover">
|
<meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover">
|
||||||
<!-- PWA standalone : "Ajouter à l'écran d'accueil" sur iPhone → app plein écran
|
<!-- PWA standalone : "Ajouter à l'écran d'accueil" sur iPhone → app plein écran
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
// assemble-ui reconstruit internal/jean/ui/index.html à partir des sources
|
// assemble-ui reconstruit internal/ajean/ui/index.html à partir des sources
|
||||||
// internal/jean/ui/src/ (remplace l'ancien ui/assemble.ps1 — multiplateforme).
|
// internal/ajean/ui/src/ (remplace l'ancien ui/assemble.ps1 — multiplateforme).
|
||||||
//
|
//
|
||||||
// index.html est un fichier GÉNÉRÉ mais committé : go:embed (web_server.go) et
|
// index.html est un fichier GÉNÉRÉ mais committé : go:embed (web_server.go) et
|
||||||
// ajean-app/build-server-ui.ps1 le lisent tel quel. Pour modifier l'UI : éditer
|
// ajean-app/build-server-ui.ps1 le lisent tel quel. Pour modifier l'UI : éditer
|
||||||
// ui/src/ (index.tmpl.html, styles.css, js/NN-*.js concaténés dans l'ordre
|
// ui/src/ (index.tmpl.html, styles.css, js/NN-*.js concaténés dans l'ordre
|
||||||
// alphabétique, tout en scope global) puis relancer :
|
// alphabétique, tout en scope global) puis relancer :
|
||||||
//
|
//
|
||||||
// go generate ./internal/jean (ou : go run ./tools/assemble-ui)
|
// go generate ./internal/ajean (ou : go run ./tools/assemble-ui)
|
||||||
//
|
//
|
||||||
// Les marqueurs @@CSS@@ / @@JS@@ du template sont remplacés avec LEUR fin de
|
// Les marqueurs @@CSS@@ / @@JS@@ du template sont remplacés avec LEUR fin de
|
||||||
// ligne (LF ou CRLF) ; chaque source apporte ses propres fins de ligne.
|
// ligne (LF ou CRLF) ; chaque source apporte ses propres fins de ligne.
|
||||||
@@ -22,7 +22,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
uiDir := "internal/jean/ui"
|
uiDir := "internal/ajean/ui"
|
||||||
if len(os.Args) > 1 {
|
if len(os.Args) > 1 {
|
||||||
uiDir = os.Args[1]
|
uiDir = os.Args[1]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
// gen-icon écrit cmd/jean/icon.ico à partir de l'icône de marque dessinée dans
|
// gen-icon écrit cmd/ajean/icon.ico à partir de l'icône de marque dessinée dans
|
||||||
// internal/jean (sys_brand_icon.go), pour que l'icône du .exe soit toujours la
|
// internal/ajean (sys_brand_icon.go), pour que l'icône du .exe soit toujours la
|
||||||
// même que le favicon de l'UI et que celle de la zone de notification.
|
// même que le favicon de l'UI et que celle de la zone de notification.
|
||||||
//
|
//
|
||||||
// Lancé par `go generate ./cmd/jean`, AVANT goversioninfo qui embarque le .ico
|
// Lancé par `go generate ./cmd/ajean`, AVANT goversioninfo qui embarque le .ico
|
||||||
// dans les ressources Windows.
|
// dans les ressources Windows.
|
||||||
package main
|
package main
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user