Π£ΡΠ»ΠΎΠ²Π½Π°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ: build-ΡΠ΅Π³ΠΈ ΠΈ ΡΡΡΡΠΈΠΊΡΡ ΠΈΠΌΡΠ½ ΡΠ°ΠΉΠ»ΠΎΠ²
Π£ΡΠ»ΠΎΠ²Π½Π°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π² Go ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π΅ ΡΠ΅ΡΠ΅Π· ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ, Π° ΡΠ΅ΡΠ΅Π· Π²ΡΠ±ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠ΅Π»ΠΈΠΊΠΎΠΌ β ΡΠ°ΠΉΠ» Π»ΠΈΠ±ΠΎ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ Π² ΡΠ±ΠΎΡΠΊΡ, Π»ΠΈΠ±ΠΎ Π½Π΅Ρ. Π‘ΠΏΠΎΡΠΎΠ±ΠΎΠ² Π΄Π²Π°. Π‘ΡΡΡΠΈΠΊΡΡ ΠΈΠΌΡΠ½: ΡΠ°ΠΉΠ» store_linux.go ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄ Linux, store_arm64.go β ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄ arm64, store_linux_amd64.go β ΠΏΠΎΠ΄ ΠΈΡ
ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠ΅; ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, Π±Π΅Π· Π²ΡΡΠΊΠΈΡ
Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ². ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° //go:build: ΡΡΡΠΎΠΊΠ° ΠΏΠ΅ΡΠ΅Π΄ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ° Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ β //go:build linux && !cgo ΠΈΠ»ΠΈ //go:build integration. Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ // +build ΡΠΎ ΡΡΠ°ΡΡΠΌ ΡΠΎΡΠΌΠ°ΡΠΎΠΌ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌ, ΠΈ gofmt ΡΠ°ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π½ΠΎΠ²ΡΠΉ ΡΡΠ΄ΠΎΠΌ. ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΡΠΈ: ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΎΠ·Π°Π²ΠΈΡΠΈΠΌΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΠΆΡΠ»ΡΡ
ΡΠ΅ΡΡΠΎΠ² Π·Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌ ΡΠ΅Π³ΠΎΠΌ (//go:build integration ΠΈ Π·Π°ΠΏΡΡΠΊ ΡΠ΅ΡΠ΅Π· -tags=integration), ΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΠ±ΠΎΡΠΊΠΈ. ΠΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ β ΡΠ΅Π³ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΊΠ»ΡΡΠ°ΡΡΡΡ Β«Π½Π°ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½ΡΒ»: Π³ΡΠ°Π½ΡΠ»ΡΡΠ½ΠΎΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π°Ρ.