Skip to content

Commit

Permalink
Update docs for v17.8.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
gitlab-terraform-provider-bot committed Jan 16, 2025
1 parent c1921fc commit 2f662cd
Show file tree
Hide file tree
Showing 5 changed files with 149 additions and 2 deletions.
25 changes: 24 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,26 @@
## 17.8.0 (2025-01-16)

This release was tested against GitLab 17.8, 17.7, and 17.6 for both CE and EE

### BREAKING CHANGES (1 change)

> Note: While we normally attempt to avoid breaking changes until major releases, this change aligns the `gitlab_project_issues` resource to the upstream API. That means that
> if we held off on implementing it, our users could pass in multiple values to several attributes, and the API would ignore all but the first of them. Weighing the breaking change
> against the bad user experience and potential confusion in user `plan` operations, we determined it was better to accept the small breaking change now than hold off another 4 months for 18.0.
- datasource/gitlab_project_issues: [Update several attributes to support a maximum of 1 item in their list to align to the GitLab API](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/commit/7e4311674bac77d512098077cf8ed2e7958b26dc) by @gitlab-dependency-update-bot ([merge request](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2255))

### FEATURE (1 change)

- **New Resource** resource/gitlab_value_stream_analytics: [Adds support managing value stream stages](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/commit/72033f78d1acff93a08a537e0812c68c326c3efe) by @calee1 ([merge request](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2234))

### IMPROVEMENTS (3 changes)

- resource/gitlab_group: [Add 'owner' support for project creation level](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/commit/910c0ce8275c0f34ec5733c4f3608b1041be44bb) by @mness ([merge request](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2253))
- resource/gitlab_group_hook: [Add a validator to prevent spaces in the URL](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/commit/527fbba6454ef4188a26cffa73e314be61dd219f) by @PatrickRice ([merge request](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2252))
- resource/gitlab_project_hook: [Add name and description to gitlab_project_hook resource](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/commit/5d24124412b3f55a9bb707292fc9226a43fe8ea9) by @heidi.berry ([merge request](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2258))
- datasource/gitlab_project_membership: [Support user_ids attribute](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/commit/45a477ee8f2e20fc2adb9a3fce9dd980021dfd4e) by @timofurrer ([merge request](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2257))

## 17.7.1 (2025-01-10)

This release was tested against GitLab 17.7, 17.6, and 17.5 for both CE and EE
Expand All @@ -13,7 +36,7 @@ This release was tested against GitLab 17.7, 17.6, and 17.5 for both CE and EE

### FEATURES (1 change)

- resource/gitlab_instance_service_account: [Allows managing instance-level service accounts](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/commit/0da40eceb4272d3fb856139198da777d08960711) by @ipsavitsky234 ([merge request](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2220))
- **New Resource** resource/gitlab_instance_service_account: [Allows managing instance-level service accounts](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/commit/0da40eceb4272d3fb856139198da777d08960711) by @ipsavitsky234 ([merge request](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2220))

### IMPROVEMENTS (2 changes)

Expand Down
1 change: 1 addition & 0 deletions docs/data-sources/project_membership.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ data "gitlab_project_membership" "example" {
- `inherited` (Boolean) Return all project members including members through ancestor groups
- `project_id` (Number) The ID of the project.
- `query` (String) A query string to search for members
- `user_ids` (Set of Number) List of user ids to filter members by

### Read-Only

Expand Down
2 changes: 1 addition & 1 deletion docs/resources/group.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ resource "gitlab_group" "example-five" {
- `parent_id` (Number) Id of the parent group (creates a nested group).
- `permanently_remove_on_delete` (Boolean) Whether the group should be permanently removed during a `delete` operation. This only works with subgroups. Must be configured via an `apply` before the `destroy` is run.
- `prevent_forking_outside_group` (Boolean) Defaults to false. When enabled, users can not fork projects from this group to external namespaces.
- `project_creation_level` (String) Determine if developers can create projects in the group. Valid values are: `noone`, `maintainer`, `developer`
- `project_creation_level` (String) Determine if developers can create projects in the group. Valid values are: `noone`, `owner`, `maintainer`, `developer`
- `push_rules` (Block List, Max: 1) Push rules for the group. (see [below for nested schema](#nestedblock--push_rules))
- `request_access_enabled` (Boolean) Allow users to request member access.
- `require_two_factor_authentication` (Boolean) Require all users in this group to setup Two-factor authentication.
Expand Down
4 changes: 4 additions & 0 deletions docs/resources/project_hook.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ The `gitlab_project_hook` resource allows to manage the lifecycle of a project h
resource "gitlab_project_hook" "example" {
project = "example/hooked"
url = "https://example.com/hook/example"
name = "example"
description = "Example hook"
merge_requests_events = true
}
Expand Down Expand Up @@ -57,10 +59,12 @@ resource "gitlab_project_hook" "custom_headers" {
- `custom_headers` (Attributes List) Custom headers for the project webhook. (see [below for nested schema](#nestedatt--custom_headers))
- `custom_webhook_template` (String) Custom webhook template.
- `deployment_events` (Boolean) Invoke the hook for deployment events.
- `description` (String) Description of the webhook.
- `enable_ssl_verification` (Boolean) Enable SSL verification when invoking the hook.
- `issues_events` (Boolean) Invoke the hook for issues events.
- `job_events` (Boolean) Invoke the hook for job events.
- `merge_requests_events` (Boolean) Invoke the hook for merge requests events.
- `name` (String) Name of the project webhook.
- `note_events` (Boolean) Invoke the hook for note events.
- `pipeline_events` (Boolean) Invoke the hook for pipeline events.
- `push_events` (Boolean) Invoke the hook for push events.
Expand Down
119 changes: 119 additions & 0 deletions docs/resources/value_stream_analytics.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "gitlab_value_stream_analytics Resource - terraform-provider-gitlab"
subcategory: ""
description: |-
The gitlab_value_stream_analytics resource allows to manage the lifecycle of value stream analytics.
-> This resource requires a GitLab Enterprise instance with a Premium license to create custom value stream analytics.
Upstream API: GitLab GraphQL API docs https://docs.gitlab.com/ee/api/graphql/reference/#mutationvaluestreamcreate
---

# gitlab_value_stream_analytics (Resource)

The `gitlab_value_stream_analytics` resource allows to manage the lifecycle of value stream analytics.

-> This resource requires a GitLab Enterprise instance with a Premium license to create custom value stream analytics.

**Upstream API**: [GitLab GraphQL API docs](https://docs.gitlab.com/ee/api/graphql/reference/#mutationvaluestreamcreate)

## Example Usage

```terraform
resource "gitlab_value_stream_analytics" "project" {
name = "TEST"
project_full_path = "test/project"
stages = [
{
name = "Issue"
custom = false
hidden = false
},
{
name = "Issue Labels"
custom = true
hidden = false
start_event_identifier = "ISSUE_LABEL_ADDED"
start_event_label_id = "gid://gitlab/ProjectLabel/0"
end_event_identifier = "ISSUE_LABEL_REMOVED"
end_event_label_id = "gid://gitlab/ProjectLabel/1"
}
]
}
resource "gitlab_value_stream_analytics" "group" {
name = "TEST"
group_full_path = "test/group"
stages = [
{
name = "Issue"
custom = false
hidden = false
},
{
name = "Issue Labels"
custom = true
hidden = false
start_event_identifier = "ISSUE_LABEL_ADDED"
start_event_label_id = "gid://gitlab/GroupLabel/0"
end_event_identifier = "ISSUE_LABEL_REMOVED"
end_event_label_id = "gid://gitlab/GroupLabel/1"
}
]
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `name` (String) The name of the value stream
- `stages` (Attributes Set) Stages of the value stream (see [below for nested schema](#nestedatt--stages))

### Optional

- `group_full_path` (String) Full path of the group the value stream is created in. **One of `group_full_path` OR `project_full_path` is required.**
- `project_full_path` (String) Full path of the project the value stream is created in. **One of `group_full_path` OR `project_full_path` is required.**

### Read-Only

- `id` (String) The Terraform ID of the value stream in the format of `group:<group_full_path>:<id>` or `project:<project_full_path>:<id>`.

<a id="nestedatt--stages"></a>
### Nested Schema for `stages`

Required:

- `name` (String) The name of the value stream stage.

Optional:

- `custom` (Boolean) Boolean whether the stage is customized. If false, it assigns a built-in default stage by name.
- `end_event_identifier` (String) End event identifier. Valid values are: `CODE_STAGE_START`, `ISSUE_CLOSED`, `ISSUE_CREATED`, `ISSUE_DEPLOYED_TO_PRODUCTION`, `ISSUE_FIRST_ADDED_TO_BOARD`, `ISSUE_FIRST_ADDED_TO_ITERATION`, `ISSUE_FIRST_ASSIGNED_AT`, `ISSUE_FIRST_ASSOCIATED_WITH_MILESTONE`, `ISSUE_FIRST_MENTIONED_IN_COMMIT`, `ISSUE_LABEL_ADDED`, `ISSUE_LABEL_REMOVED`, `ISSUE_LAST_EDITED`, `ISSUE_STAGE_END`, `MERGE_REQUEST_CLOSED`, `MERGE_REQUEST_CREATED`, `MERGE_REQUEST_FIRST_ASSIGNED_AT`, `MERGE_REQUEST_FIRST_COMMIT_AT`, `MERGE_REQUEST_FIRST_DEPLOYTED_TO_PRODUCTION`, `MERGE_REQUEST_LABEL_ADDED`, `MERGE_REQUEST_LABEL_REMOVED`, `MERGE_REQUEST_LAST_BUILD_FINISHED`, `MERGE_REQUEST_LAST_BUILD_STARTED`, `MERGE_REQUEST_LAST_EDITED`, `MERGE_REQUEST_MERGED`, `MERGE_REQUEST_REVIEWER_FIRST_ASSIGNED`, `MERGE_REQUEST_PLAN_STAGE_START`
- `end_event_label_id` (String) Label ID associated with the end event identifier. In the format of `gid://gitlab/GroupLabel/<id>` or `gid://gitlab/ProjectLabel/<id>`
- `hidden` (Boolean) Boolean whether the stage is hidden, GitLab provided default stages are hidden by default.
- `start_event_identifier` (String) Start event identifier. Valid values are: `CODE_STAGE_START`, `ISSUE_CLOSED`, `ISSUE_CREATED`, `ISSUE_DEPLOYED_TO_PRODUCTION`, `ISSUE_FIRST_ADDED_TO_BOARD`, `ISSUE_FIRST_ADDED_TO_ITERATION`, `ISSUE_FIRST_ASSIGNED_AT`, `ISSUE_FIRST_ASSOCIATED_WITH_MILESTONE`, `ISSUE_FIRST_MENTIONED_IN_COMMIT`, `ISSUE_LABEL_ADDED`, `ISSUE_LABEL_REMOVED`, `ISSUE_LAST_EDITED`, `ISSUE_STAGE_END`, `MERGE_REQUEST_CLOSED`, `MERGE_REQUEST_CREATED`, `MERGE_REQUEST_FIRST_ASSIGNED_AT`, `MERGE_REQUEST_FIRST_COMMIT_AT`, `MERGE_REQUEST_FIRST_DEPLOYTED_TO_PRODUCTION`, `MERGE_REQUEST_LABEL_ADDED`, `MERGE_REQUEST_LABEL_REMOVED`, `MERGE_REQUEST_LAST_BUILD_FINISHED`, `MERGE_REQUEST_LAST_BUILD_STARTED`, `MERGE_REQUEST_LAST_EDITED`, `MERGE_REQUEST_MERGED`, `MERGE_REQUEST_REVIEWER_FIRST_ASSIGNED`, `MERGE_REQUEST_PLAN_STAGE_START`
- `start_event_label_id` (String) Label ID associated with the start event identifier. In the format of `gid://gitlab/GroupLabel/<id>` or `gid://gitlab/ProjectLabel/<id>`

Read-Only:

- `id` (String) The ID of the value stream stage.

## Import

Starting in Terraform v1.5.0 you can use an [import block](https://developer.hashicorp.com/terraform/language/import) to import `gitlab_value_stream_analytics`. For example:
```terraform
import {
to = gitlab_value_stream_analytics.example
id = "see CLI command below for ID"
}
```

Import using the CLI is supported using the following syntax:

```shell
# Gitlab value stream analytics can be imported with a key composed of `<full_path_type>:<full_path>:<value_stream_id>`, e.g.
terraform import gitlab_value_stream_analytics.group "group:people/engineers:42"

terraform import gitlab_value_stream_analytics.project "project:projects/sample:43"
```

0 comments on commit 2f662cd

Please sign in to comment.