12.2 Open API

    接口详情

    input

    1. Env string `query:"env"`

    output

    1. [{
    2. ID uint `json:"id"`
    3. AID uint `json:"aid"`
    4. Name string `json:"name"`
    5. Format string `json:"format"` // Yaml/Toml
    6. Env string `json:"env"` // 环境
    7. Zone string `json:"zone"` // 机房Zone
    8. CreatedAt time.Time `json:"created_time"`
    9. DeletedAt *time.Time `json:"deleted_at"`
    10. PublishedAt *time.Time `json:"published"` // 未发布/发布时间
    11. }]

    GET api/v1/confgo/config/detail

    input

    1. ID uint `json:"id"`

    output

    1. ID uint `json:"id"`
    2. AID uint `json:"aid"`
    3. Name string `json:"name"`
    4. Content string `json:"content"`
    5. Format string `json:"format"` // Yaml/Toml
    6. Env string `json:"env"` // 环境
    7. Zone string `json:"zone"` // 机房Zone
    8. CreatedAt time.Time `json:"created_time"`
    9. UpdatedAt time.Time `json:"update_time"`
    10. PublishedAt *time.Time `json:"published"` // 未发布/发布时间

    api/v1/confgo/config/diff

    input

    1. ID uint `query:"id" valid:"required"` // 配置ID
    2. HistoryID uint `query:"history_id" valid:"required"` // 版本ID

    output

    input

    1. ConfigurationID uint `json:"id" query:"id" validate:"required"`
    2. Env string `json:"env" query:"env" validate:"required"`

    output

    1. [{
    2. ConfigurationStatusID uint `json:"configuration_status_id"`
    3. Env string `json:"env"`
    4. IP string `json:"ip"`
    5. HostName string `json:"host_name"`
    6. DeviceID int `json:"device_id"`
    7. RegionCode string `json:"region_code"`
    8. RegionName string `json:"region_name"`
    9. ZoneCode string `json:"zone_code"`
    10. ZoneName string `json:"zone_name"`
    11. ConfigFilePath string `json:"config_file_path"`
    12. ConfigFileUsed uint `json:"config_file_used"` // 1 supervisor 2 systemd
    13. ConfigFileSynced uint `json:"config_file_synced"`
    14. ConfigFileTakeEffect uint `json:"config_file_take_effect"`
    15. SyncAt time.Time `json:"sync_at"`
    16. }]

    api/v1/confgo/config/history

    input

    1. ID uint `json:"id"` // 配置文件ID
    2. Size uint `json:"size"`
    3. Page uint `json:"page"`

    output

    1. {
    2. Current int `json:"current"`
    3. Total int `json:"total"`
    4. PageSize int `json:"pageSize"`
    5. } `json:"pagination"`
    6. List[{
    7. ID uint `json:"id"`
    8. UID uint `json:"uid"` // 发布人ID
    9. ChangeLog string `json:"change_log"`
    10. ConfigurationID uint `json:"configuration_id"`
    11. Version string `json:"version"` // 发布到Juno Proxy的版本号
    12. CreatedAt time.Time `json:"created_at"`
    13. }] `json:"list"`
    14. }

    POST api/v1/confgo/config/create

    input

    1. AppName string `json:"app_name"`
    2. Env string `json:"env"`
    3. Zone string `json:"zone"`
    4. FileName string `json:"file_name"` // 文件名(不带后缀)
    5. Format ConfigFormat `json:"format"` // 格式后缀名(比如: toml, yaml)

    input

    POST api/v1/confgo/config/publish

    input

    1. ID uint `json:"id"` // 配置ID
    2. Version *string `json:"version"` // 版本号

    api/v1/confgo/config/delete

    input

    1. ID uint `json:"id"`
    • 请求参数示例
    1. {
    2. http://10.117.22.35:50000/api/v1/confgo/config/diffVersion?ips=10.117.22.35&appName=jupiter-demo&env=live
    3. }
    • 返回值
    1. {
    2. "code": 0,
    3. "msg": "",
    4. "data": {
    5. "hasNew": false,
    6. "diffUrlList": [{
    7. "name": "single-rexxx:qgion-admin",
    8. "diffUrl": "http://jupiterxxxconsole.douyu.com/app?aid=1\u0026appName=jupiter-demo\u0026env=live\u0026tab=confgo\u0026publishVersion=\u0026serviceVersion=fa041303713cc4d198f6feb282f23a98"
    9. }]
    10. }
    11. }

    GET api/v1/resource/app_env_zone/list

    input

    output