Documentation
¶
Index ¶
- Constants
- func FormatHuman(hint *v1.TazunaHint, target string) string
- func FormatJSON(hint *v1.TazunaHint) (string, error)
- func FormatYAML(hint *v1.TazunaHint) (string, error)
- func LoadHintFile(dir string) (*v1.TazunaHint, error)
- func MergeVarsWithHint(hint *v1.TazunaHint, resolvedVars map[string]any) (map[string]any, error)
- func ValidateHint(hint *v1.TazunaHint) error
- func ValidateVarsAgainstHint(hint *v1.TazunaHint, vars map[string]v1.HelmFileVar) error
Constants ¶
View Source
const HintFileName = "tazuna.hint.yaml"
Variables ¶
This section is empty.
Functions ¶
func FormatHuman ¶
func FormatHuman(hint *v1.TazunaHint, target string) string
FormatHuman はhintをhuman-readableな形式で出力します。
func FormatJSON ¶
func FormatJSON(hint *v1.TazunaHint) (string, error)
FormatJSON はhintをJSON形式で出力します。
func FormatYAML ¶
func FormatYAML(hint *v1.TazunaHint) (string, error)
FormatYAML はhintをYAML形式で出力します。
func LoadHintFile ¶
func LoadHintFile(dir string) (*v1.TazunaHint, error)
LoadHintFile はディレクトリからtazuna.hint.yamlを読み込みます。 ファイルが存在しない場合は (nil, nil) を返します(後方互換)。
func MergeVarsWithHint ¶
MergeVarsWithHint はhintのデフォルト値注入と必須チェックを行います。 resolvedVarsは既にConstructHelmfileVarsで解決済みのvar値です。
「提供済み」の判定は元のresolvedVarsを参照します。 ゼロ値注入後のresultを参照すると、ゼロ値が注入されたvarも「提供済み」と 判定されてしまうため、正確な条件付き必須チェックができません。
func ValidateHint ¶
func ValidateHint(hint *v1.TazunaHint) error
ValidateHint はhintファイルの妥当性を検証します。 スキーマレベルの検証を行い、以下を確認します:
- 各varの型が有効であること
- required:trueとdefaultの併用がないこと
- formatがstring型のvarにのみ指定されていること
- formatの値が既知であること
- required_with/required_withoutの参照先がvarsに存在すること
- required:trueとrequired_with/required_withoutの併用がないこと (required:trueは常に必須、required_with/required_withoutは条件付き必須であり矛盾するため)
- rulesのtypeが既知であること
- rulesのvarsが2件以上であること
- rulesの参照先がvarsに存在すること
func ValidateVarsAgainstHint ¶
func ValidateVarsAgainstHint(hint *v1.TazunaHint, vars map[string]v1.HelmFileVar) error
ValidateVarsAgainstHint はtazuna.yamlのvarsがhintの型定義と互換性があるか検証します。 hintに定義されていないvarはそのまま通します。
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.