/
githubmirror
/
ignition
Обзор
Документация
Войти
/
githubmirror
/
ignition
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
internal/providers/upcloud/upcloud.go
54 строки
2 KB
Steven Presti
*: update to v3_7_experimental spec
11 фев 2026, 23:55
11 фев 2026, 23:55
3252aa5
Код
Авторство
О чём код?
// Copyright 2025 UpCloud // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // The UpCloud provider fetches a remote configuration from the UpCloud // user_data metadata service URL. // https://developers.upcloud.com/1.3/8-servers/#metadata-service package upcloud import ( "net/url" "github.com/coreos/ignition/v2/config/v3_7_experimental/types" "github.com/coreos/ignition/v2/internal/platform" "github.com/coreos/ignition/v2/internal/providers/util" "github.com/coreos/ignition/v2/internal/resource" "github.com/coreos/vcontext/report" ) var ( userdataURL = url.URL{ Scheme: "http", Host: "169.254.169.254", Path: "metadata/v1/user_data", } ) func init() { platform.Register(platform.Provider{ Name: "upcloud", Fetch: fetchConfig, }) } func fetchConfig(f *resource.Fetcher) (types.Config, report.Report, error) { data, err := f.FetchToBuffer(userdataURL, resource.FetchOptions{}) if err != nil && err != resource.ErrNotFound { return types.Config{}, report.Report{}, err } return util.ParseConfig(f.Logger, data) }