機能フラグAPI
このAPIは、GitLabの開発で使われるFlipperベースの機能フラグを管理するためのものです。
どの方法も管理者の承認が必要です。
現在のところ、APIはブール値とパーセンテージオブタイムゲート値しかサポートしていないことに注意してください。
すべての機能を表示
永続化されたすべてのフィーチャとそのゲート値のリストを取得します。
GET /features
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/features"
回答例
[
{
"name": "experimental_feature",
"state": "off",
"gates": [
{
"key": "boolean",
"value": false
}
]
},
{
"name": "my_user_feature",
"state": "on",
"gates": [
{
"key": "percentage_of_actors",
"value": 34
}
]
},
{
"name": "new_library",
"state": "on",
"gates": [
{
"key": "boolean",
"value": true
}
]
}
]
機能の設定または作成
フィーチャのゲート値を設定します。 与えられた名前のフィーチャがまだ存在しない場合は、それが作成されます。 値はブール値か、時間のパーセンテージを示す整数値です。
POST /features/:name
属性 | タイプ | 必須 | 説明 |
---|---|---|---|
name
| 列 | はい | 作成または更新する機能の名前 |
value
| 整数/文字列 | はい |
true またはfalse で有効/無効を、整数で時間のパーセンテージを指定します。
|
key
| 列 | いいえ |
percentage_of_actors またはpercentage_of_time (デフォルト)
|
feature_group
| 列 | いいえ | A フィーチャーグループ名 |
user
| 列 | いいえ | GitLab ユーザー名 |
group
| 列 | いいえ | GitLabグループのパスは、例えば次のようになります。gitlab-org
|
project
| 列 | いいえ | プロジェクト・パスは、例えば次のようになります。gitlab-org/gitlab-foss
|
feature_group
、user
、group
、project
の機能を1回のAPIコールで有効または無効にできることに注意してください。
curl --data "value=30" --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/features/new_library"
回答例
{
"name": "new_library",
"state": "conditional",
"gates": [
{
"key": "boolean",
"value": false
},
{
"key": "percentage_of_time",
"value": 30
}
]
}
俳優のロールアウトのパーセンテージを設定
俳優の割合への展開。
POST https://gitlab.example.com/api/v4/features/my_user_feature?private_token=<your_access_token>
Content-Type: application/x-www-form-urlencoded
value=42&key=percentage_of_actors&
回答例
{
"name": "my_user_feature",
"state": "conditional",
"gates": [
{
"key": "boolean",
"value": false
},
{
"key": "percentage_of_actors",
"value": 42
}
]
}
my_user_feature
、俳優の42%
。
機能の削除
レスポンスは、ゲートが存在する場合と存在しない場合に等しくなります。
DELETE /features/:name