Skip to content

overlane channel preset

Set the channel preset a project promotes through

Updated View as MarkdownOpen in ChatGPTOpen in Claude

Gives the project the channels of a preset, each with its display name, image tag, deploy environment and shared or own database. The nightly-weekly-monthly preset collects every merge, then deploys the night’s build to the test environment, a week’s to the middle one and a month’s to the last. An agent token for the team can set it, as can a person who manages the project’s policy.

Usage

overlane channel preset preset [--dry-run]

Arguments

Argument Required Description
preset yes The preset: nightly-weekly-monthly

Flags

Flag Type Required Default Description
--dry-run boolean no Print the requests and file changes this command would make, then stop. Needs no credentials.

Examples

overlane channel preset nightly-weekly-monthly
overlane channel preset nightly-weekly-monthly --dry-run

Behavior

  • Effect: write (changes local or hosted state).
  • Needs credentials: yes. Uses the network: yes.
  • Supports --dry-run: yes. Accepts --force: no.
  • Machine-readable description: overlane schema channel preset.

Result

With --json (the default when stdout is not a terminal) the command prints this JSON Schema’s shape on stdout.

{
  "anyOf": [
    {
      "type": "object",
      "properties": {
        "tenantId": {
          "type": "string"
        },
        "projectId": {
          "type": "string"
        },
        "preset": {
          "type": "object",
          "properties": {
            "preset": {
              "type": "string",
              "enum": [
                "nightly-weekly-monthly"
              ]
            },
            "channels": {
              "minItems": 2,
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "channel": {
                    "type": "string",
                    "enum": [
                      "internal",
                      "nightly",
                      "beta",
                      "stable",
                      "lts"
                    ]
                  },
                  "displayName": {
                    "type": "string",
                    "pattern": "^[a-z][a-z0-9-]{0,30}$"
                  },
                  "imageTag": {
                    "anyOf": [
                      {
                        "type": "string",
                        "pattern": "^[A-Za-z0-9_][A-Za-z0-9_.-]{0,127}$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "environment": {
                    "anyOf": [
                      {
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9-]{0,40}$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "data": {
                    "type": "string",
                    "enum": [
                      "shared",
                      "isolated"
                    ]
                  },
                  "from": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "internal",
                          "nightly",
                          "beta",
                          "stable",
                          "lts"
                        ]
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "cadence": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "kind": {
                            "type": "string",
                            "const": "every_merge"
                          }
                        },
                        "required": [
                          "kind"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "object",
                        "properties": {
                          "kind": {
                            "type": "string",
                            "const": "manual"
                          }
                        },
                        "required": [
                          "kind"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "object",
                        "properties": {
                          "kind": {
                            "type": "string",
                            "const": "schedule"
                          },
                          "weekdays": {
                            "minItems": 1,
                            "type": "array",
                            "items": {
                              "type": "integer",
                              "minimum": 0,
                              "maximum": 6
                            }
                          },
                          "time": {
                            "type": "string",
                            "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$"
                          },
                          "monthDays": {
                            "minItems": 1,
                            "type": "array",
                            "items": {
                              "type": "integer",
                              "minimum": 1,
                              "maximum": 28
                            }
                          },
                          "timeZone": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 64
                          }
                        },
                        "required": [
                          "kind",
                          "weekdays",
                          "time",
                          "timeZone"
                        ],
                        "additionalProperties": false
                      }
                    ]
                  },
                  "gates": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "verify_green",
                        "live_smoke_green",
                        "no_rollback",
                        "min_age",
                        "error_rate_not_worse",
                        "compatibility_green",
                        "features_ready",
                        "no_open_blocker",
                        "expand_only_migrations",
                        "release_notes"
                      ]
                    }
                  },
                  "soakHours": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  }
                },
                "required": [
                  "channel",
                  "displayName",
                  "imageTag",
                  "environment",
                  "data",
                  "from",
                  "cadence",
                  "gates",
                  "soakHours"
                ],
                "additionalProperties": false
              }
            }
          },
          "required": [
            "preset",
            "channels"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "tenantId",
        "projectId",
        "preset"
      ],
      "additionalProperties": {}
    },
    {
      "type": "object",
      "properties": {
        "dryRun": {
          "type": "boolean",
          "const": true
        },
        "service": {
          "type": "string"
        },
        "requests": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "method": {
                "type": "string"
              },
              "path": {
                "type": "string"
              },
              "body": {},
              "note": {
                "type": "string"
              }
            },
            "required": [
              "method",
              "path"
            ],
            "additionalProperties": false
          }
        },
        "commands": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "writes": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "path": {
                "type": "string"
              },
              "action": {
                "type": "string",
                "enum": [
                  "write",
                  "append",
                  "delete"
                ]
              },
              "description": {
                "type": "string"
              }
            },
            "required": [
              "path",
              "action",
              "description"
            ],
            "additionalProperties": false
          }
        },
        "notes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "dryRun",
        "requests",
        "commands",
        "writes",
        "notes"
      ],
      "additionalProperties": false
    }
  ]
}

See exit codes for the status the process returns.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close

Overlane Agent

Ask about the docs. Answers are quoted from the pages, with links. This panel cannot change anything.

    Questions are answered in your browser from the docs index. Nothing you type here is stored or sent anywhere.