Как применить политику без тега, никакая работа не запустится - PullRequest
0 голосов
/ 26 января 2019

Мы используем конвейер gitlab для вращения инфраструктуры, такой как VM / служебная шина и другие ресурсы, через terraform в облаке Azure.Много раз разработчики забывают пометить, с какой целью они раскручивают ресурс.Из-за отсутствия этой информации мы не можем найти ресурсы и их назначение.

Есть ли какой-нибудь способ в конвейере gitlab через переменную или каким-либо другим способом без конвейера тегов не получится?Как принудительное использование тега при вращении любой инфраструктуры через конвейер gitlab.Я ищу любую конфигурацию или политику применения в gitlab

1 Ответ

0 голосов
/ 27 января 2019

вы можете использовать политику Azure для этого.Использовать тег:

{
   "properties": {
      "displayName": "Enforce tag and its value",
      "policyType": "BuiltIn",
      "description": "Enforces a required tag and its value.",
      "parameters": {
         "tagName": {
            "type": "String",
            "metadata": {
               "description": "Name of the tag, such as costCenter"
            }
         },
         "tagValue": {
            "type": "String",
            "metadata": {
               "description": "Value of the tag, such as headquarter"
            }
         }
      },
      "policyRule": {
         "if": {
            "not": {
               "field": "[concat('tags[', parameters('tagName'), ']')]",
               "equals": "[parameters('tagValue')]"
            }
         },
         "then": {
            "effect": "deny"
         }
      }
   },
   "id": "/providers/Microsoft.Authorization/policyDefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62",
   "type": "Microsoft.Authorization/policyDefinitions",
   "name": "1e30110a-5ceb-460c-a204-c1c3969c6d62"
}

Ссылки:

  1. https://docs.microsoft.com/en-us/azure/governance/policy/samples/enforce-tag-value
  2. https://docs.microsoft.com/en-us/azure/governance/policy/samples/enforce-tag-on-resource-groups
...