cmd/jobmgr/config.go (22 lines of code) (raw):

// Copyright (c) 2019 Uber Technologies, Inc. // // 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. package main import ( "github.com/uber/peloton/pkg/auth" "github.com/uber/peloton/pkg/common/health" "github.com/uber/peloton/pkg/common/leader" "github.com/uber/peloton/pkg/common/logging" "github.com/uber/peloton/pkg/common/metrics" "github.com/uber/peloton/pkg/jobmgr" "github.com/uber/peloton/pkg/middleware/inbound" storage "github.com/uber/peloton/pkg/storage/config" ) // Config holds all config to run a peloton-jobmgr server. type Config struct { Metrics metrics.Config `yaml:"metrics"` Storage storage.Config `yaml:"storage"` Election leader.ElectionConfig `yaml:"election"` JobManager jobmgr.Config `yaml:"job_manager"` Health health.Config `yaml:"health"` SentryConfig logging.SentryConfig `yaml:"sentry"` Auth auth.Config `yaml:"auth"` RateLimit inbound.RateLimitConfig `yaml:"rate_limit"` // APILock defines which APIs are read/write APIs, // so when lockdown is requested, the correct APIs are locked. APILock inbound.APILockConfig `yaml:"api_lock"` }