sonarqube.QualitygateUsergroupAssociation
Explore with Pulumi AI
Provides a Sonarqube Quality Gate Usergroup association resource. This can be used to associate a Quality Gate to an User or to a Group. The feature is available on SonarQube 9.2 or newer.
Example Usage
Example: create a quality gate user association
import * as pulumi from "@pulumi/pulumi";
import * as sonarqube from "@pulumi/sonarqube";
const mainQualitygate = new sonarqube.Qualitygate("mainQualitygate", {conditions: [{
metric: "new_coverage",
op: "LT",
threshold: "30",
}]});
const qaUser = new sonarqube.User("qaUser", {
loginName: "qa-user",
password: "secret-sauce37!",
});
const mainQualitygateUsergroupAssociation = new sonarqube.QualitygateUsergroupAssociation("mainQualitygateUsergroupAssociation", {
gatename: mainQualitygate.qualitygateId,
loginName: qaUser.userId,
});
import pulumi
import pulumi_sonarqube as sonarqube
main_qualitygate = sonarqube.Qualitygate("mainQualitygate", conditions=[{
"metric": "new_coverage",
"op": "LT",
"threshold": "30",
}])
qa_user = sonarqube.User("qaUser",
login_name="qa-user",
password="secret-sauce37!")
main_qualitygate_usergroup_association = sonarqube.QualitygateUsergroupAssociation("mainQualitygateUsergroupAssociation",
gatename=main_qualitygate.qualitygate_id,
login_name=qa_user.user_id)
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/sonarqube/sonarqube"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
mainQualitygate, err := sonarqube.NewQualitygate(ctx, "mainQualitygate", &sonarqube.QualitygateArgs{
Conditions: sonarqube.QualitygateConditionArray{
&sonarqube.QualitygateConditionArgs{
Metric: pulumi.String("new_coverage"),
Op: pulumi.String("LT"),
Threshold: pulumi.String("30"),
},
},
})
if err != nil {
return err
}
qaUser, err := sonarqube.NewUser(ctx, "qaUser", &sonarqube.UserArgs{
LoginName: pulumi.String("qa-user"),
Password: pulumi.String("secret-sauce37!"),
})
if err != nil {
return err
}
_, err = sonarqube.NewQualitygateUsergroupAssociation(ctx, "mainQualitygateUsergroupAssociation", &sonarqube.QualitygateUsergroupAssociationArgs{
Gatename: mainQualitygate.QualitygateId,
LoginName: qaUser.UserId,
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Sonarqube = Pulumi.Sonarqube;
return await Deployment.RunAsync(() =>
{
var mainQualitygate = new Sonarqube.Qualitygate("mainQualitygate", new()
{
Conditions = new[]
{
new Sonarqube.Inputs.QualitygateConditionArgs
{
Metric = "new_coverage",
Op = "LT",
Threshold = "30",
},
},
});
var qaUser = new Sonarqube.User("qaUser", new()
{
LoginName = "qa-user",
Password = "secret-sauce37!",
});
var mainQualitygateUsergroupAssociation = new Sonarqube.QualitygateUsergroupAssociation("mainQualitygateUsergroupAssociation", new()
{
Gatename = mainQualitygate.QualitygateId,
LoginName = qaUser.UserId,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.sonarqube.Qualitygate;
import com.pulumi.sonarqube.QualitygateArgs;
import com.pulumi.sonarqube.inputs.QualitygateConditionArgs;
import com.pulumi.sonarqube.User;
import com.pulumi.sonarqube.UserArgs;
import com.pulumi.sonarqube.QualitygateUsergroupAssociation;
import com.pulumi.sonarqube.QualitygateUsergroupAssociationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var mainQualitygate = new Qualitygate("mainQualitygate", QualitygateArgs.builder()
.conditions(QualitygateConditionArgs.builder()
.metric("new_coverage")
.op("LT")
.threshold("30")
.build())
.build());
var qaUser = new User("qaUser", UserArgs.builder()
.loginName("qa-user")
.password("secret-sauce37!")
.build());
var mainQualitygateUsergroupAssociation = new QualitygateUsergroupAssociation("mainQualitygateUsergroupAssociation", QualitygateUsergroupAssociationArgs.builder()
.gatename(mainQualitygate.qualitygateId())
.loginName(qaUser.userId())
.build());
}
}
resources:
mainQualitygate:
type: sonarqube:Qualitygate
properties:
conditions:
- metric: new_coverage
op: LT
threshold: '30'
qaUser:
type: sonarqube:User
properties:
loginName: qa-user
password: secret-sauce37!
mainQualitygateUsergroupAssociation:
type: sonarqube:QualitygateUsergroupAssociation
properties:
gatename: ${mainQualitygate.qualitygateId}
loginName: ${qaUser.userId}
Example: create a quality gate group association
import * as pulumi from "@pulumi/pulumi";
import * as sonarqube from "@pulumi/sonarqube";
const mainQualitygate = new sonarqube.Qualitygate("mainQualitygate", {conditions: [{
metric: "new_coverage",
op: "LT",
threshold: "30",
}]});
const qaTeam = new sonarqube.Group("qaTeam", {description: "Quality Assurence Team"});
const mainQualitygateUsergroupAssociation = new sonarqube.QualitygateUsergroupAssociation("mainQualitygateUsergroupAssociation", {
gatename: mainQualitygate.qualitygateId,
groupName: qaTeam.name,
});
import pulumi
import pulumi_sonarqube as sonarqube
main_qualitygate = sonarqube.Qualitygate("mainQualitygate", conditions=[{
"metric": "new_coverage",
"op": "LT",
"threshold": "30",
}])
qa_team = sonarqube.Group("qaTeam", description="Quality Assurence Team")
main_qualitygate_usergroup_association = sonarqube.QualitygateUsergroupAssociation("mainQualitygateUsergroupAssociation",
gatename=main_qualitygate.qualitygate_id,
group_name=qa_team.name)
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/sonarqube/sonarqube"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
mainQualitygate, err := sonarqube.NewQualitygate(ctx, "mainQualitygate", &sonarqube.QualitygateArgs{
Conditions: sonarqube.QualitygateConditionArray{
&sonarqube.QualitygateConditionArgs{
Metric: pulumi.String("new_coverage"),
Op: pulumi.String("LT"),
Threshold: pulumi.String("30"),
},
},
})
if err != nil {
return err
}
qaTeam, err := sonarqube.NewGroup(ctx, "qaTeam", &sonarqube.GroupArgs{
Description: pulumi.String("Quality Assurence Team"),
})
if err != nil {
return err
}
_, err = sonarqube.NewQualitygateUsergroupAssociation(ctx, "mainQualitygateUsergroupAssociation", &sonarqube.QualitygateUsergroupAssociationArgs{
Gatename: mainQualitygate.QualitygateId,
GroupName: qaTeam.Name,
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Sonarqube = Pulumi.Sonarqube;
return await Deployment.RunAsync(() =>
{
var mainQualitygate = new Sonarqube.Qualitygate("mainQualitygate", new()
{
Conditions = new[]
{
new Sonarqube.Inputs.QualitygateConditionArgs
{
Metric = "new_coverage",
Op = "LT",
Threshold = "30",
},
},
});
var qaTeam = new Sonarqube.Group("qaTeam", new()
{
Description = "Quality Assurence Team",
});
var mainQualitygateUsergroupAssociation = new Sonarqube.QualitygateUsergroupAssociation("mainQualitygateUsergroupAssociation", new()
{
Gatename = mainQualitygate.QualitygateId,
GroupName = qaTeam.Name,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.sonarqube.Qualitygate;
import com.pulumi.sonarqube.QualitygateArgs;
import com.pulumi.sonarqube.inputs.QualitygateConditionArgs;
import com.pulumi.sonarqube.Group;
import com.pulumi.sonarqube.GroupArgs;
import com.pulumi.sonarqube.QualitygateUsergroupAssociation;
import com.pulumi.sonarqube.QualitygateUsergroupAssociationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var mainQualitygate = new Qualitygate("mainQualitygate", QualitygateArgs.builder()
.conditions(QualitygateConditionArgs.builder()
.metric("new_coverage")
.op("LT")
.threshold("30")
.build())
.build());
var qaTeam = new Group("qaTeam", GroupArgs.builder()
.description("Quality Assurence Team")
.build());
var mainQualitygateUsergroupAssociation = new QualitygateUsergroupAssociation("mainQualitygateUsergroupAssociation", QualitygateUsergroupAssociationArgs.builder()
.gatename(mainQualitygate.qualitygateId())
.groupName(qaTeam.name())
.build());
}
}
resources:
mainQualitygate:
type: sonarqube:Qualitygate
properties:
conditions:
- metric: new_coverage
op: LT
threshold: '30'
qaTeam:
type: sonarqube:Group
properties:
description: Quality Assurence Team
mainQualitygateUsergroupAssociation:
type: sonarqube:QualitygateUsergroupAssociation
properties:
gatename: ${mainQualitygate.qualitygateId}
groupName: ${qaTeam.name}
Create QualitygateUsergroupAssociation Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new QualitygateUsergroupAssociation(name: string, args: QualitygateUsergroupAssociationArgs, opts?: CustomResourceOptions);
@overload
def QualitygateUsergroupAssociation(resource_name: str,
args: QualitygateUsergroupAssociationArgs,
opts: Optional[ResourceOptions] = None)
@overload
def QualitygateUsergroupAssociation(resource_name: str,
opts: Optional[ResourceOptions] = None,
gatename: Optional[str] = None,
group_name: Optional[str] = None,
login_name: Optional[str] = None,
qualitygate_usergroup_association_id: Optional[str] = None)
func NewQualitygateUsergroupAssociation(ctx *Context, name string, args QualitygateUsergroupAssociationArgs, opts ...ResourceOption) (*QualitygateUsergroupAssociation, error)
public QualitygateUsergroupAssociation(string name, QualitygateUsergroupAssociationArgs args, CustomResourceOptions? opts = null)
public QualitygateUsergroupAssociation(String name, QualitygateUsergroupAssociationArgs args)
public QualitygateUsergroupAssociation(String name, QualitygateUsergroupAssociationArgs args, CustomResourceOptions options)
type: sonarqube:QualitygateUsergroupAssociation
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args QualitygateUsergroupAssociationArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args QualitygateUsergroupAssociationArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args QualitygateUsergroupAssociationArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args QualitygateUsergroupAssociationArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args QualitygateUsergroupAssociationArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var qualitygateUsergroupAssociationResource = new Sonarqube.QualitygateUsergroupAssociation("qualitygateUsergroupAssociationResource", new()
{
Gatename = "string",
GroupName = "string",
LoginName = "string",
QualitygateUsergroupAssociationId = "string",
});
example, err := sonarqube.NewQualitygateUsergroupAssociation(ctx, "qualitygateUsergroupAssociationResource", &sonarqube.QualitygateUsergroupAssociationArgs{
Gatename: pulumi.String("string"),
GroupName: pulumi.String("string"),
LoginName: pulumi.String("string"),
QualitygateUsergroupAssociationId: pulumi.String("string"),
})
var qualitygateUsergroupAssociationResource = new QualitygateUsergroupAssociation("qualitygateUsergroupAssociationResource", QualitygateUsergroupAssociationArgs.builder()
.gatename("string")
.groupName("string")
.loginName("string")
.qualitygateUsergroupAssociationId("string")
.build());
qualitygate_usergroup_association_resource = sonarqube.QualitygateUsergroupAssociation("qualitygateUsergroupAssociationResource",
gatename="string",
group_name="string",
login_name="string",
qualitygate_usergroup_association_id="string")
const qualitygateUsergroupAssociationResource = new sonarqube.QualitygateUsergroupAssociation("qualitygateUsergroupAssociationResource", {
gatename: "string",
groupName: "string",
loginName: "string",
qualitygateUsergroupAssociationId: "string",
});
type: sonarqube:QualitygateUsergroupAssociation
properties:
gatename: string
groupName: string
loginName: string
qualitygateUsergroupAssociationId: string
QualitygateUsergroupAssociation Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The QualitygateUsergroupAssociation resource accepts the following input properties:
- Gatename string
- The name of the Quality Gate
- Group
Name string - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - Login
Name string - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - Qualitygate
Usergroup stringAssociation Id - The ID of this resource.
- Gatename string
- The name of the Quality Gate
- Group
Name string - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - Login
Name string - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - Qualitygate
Usergroup stringAssociation Id - The ID of this resource.
- gatename String
- The name of the Quality Gate
- group
Name String - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - login
Name String - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - qualitygate
Usergroup StringAssociation Id - The ID of this resource.
- gatename string
- The name of the Quality Gate
- group
Name string - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - login
Name string - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - qualitygate
Usergroup stringAssociation Id - The ID of this resource.
- gatename str
- The name of the Quality Gate
- group_
name str - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - login_
name str - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - qualitygate_
usergroup_ strassociation_ id - The ID of this resource.
- gatename String
- The name of the Quality Gate
- group
Name String - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - login
Name String - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - qualitygate
Usergroup StringAssociation Id - The ID of this resource.
Outputs
All input properties are implicitly available as output properties. Additionally, the QualitygateUsergroupAssociation resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing QualitygateUsergroupAssociation Resource
Get an existing QualitygateUsergroupAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: QualitygateUsergroupAssociationState, opts?: CustomResourceOptions): QualitygateUsergroupAssociation
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
gatename: Optional[str] = None,
group_name: Optional[str] = None,
login_name: Optional[str] = None,
qualitygate_usergroup_association_id: Optional[str] = None) -> QualitygateUsergroupAssociation
func GetQualitygateUsergroupAssociation(ctx *Context, name string, id IDInput, state *QualitygateUsergroupAssociationState, opts ...ResourceOption) (*QualitygateUsergroupAssociation, error)
public static QualitygateUsergroupAssociation Get(string name, Input<string> id, QualitygateUsergroupAssociationState? state, CustomResourceOptions? opts = null)
public static QualitygateUsergroupAssociation get(String name, Output<String> id, QualitygateUsergroupAssociationState state, CustomResourceOptions options)
resources: _: type: sonarqube:QualitygateUsergroupAssociation get: id: ${id}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Gatename string
- The name of the Quality Gate
- Group
Name string - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - Login
Name string - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - Qualitygate
Usergroup stringAssociation Id - The ID of this resource.
- Gatename string
- The name of the Quality Gate
- Group
Name string - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - Login
Name string - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - Qualitygate
Usergroup stringAssociation Id - The ID of this resource.
- gatename String
- The name of the Quality Gate
- group
Name String - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - login
Name String - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - qualitygate
Usergroup StringAssociation Id - The ID of this resource.
- gatename string
- The name of the Quality Gate
- group
Name string - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - login
Name string - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - qualitygate
Usergroup stringAssociation Id - The ID of this resource.
- gatename str
- The name of the Quality Gate
- group_
name str - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - login_
name str - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - qualitygate_
usergroup_ strassociation_ id - The ID of this resource.
- gatename String
- The name of the Quality Gate
- group
Name String - The name of the Group to associate. Either
group_name
orlogin_name
should be provided. - login
Name String - The name of the User to associate. Either
group_name
orlogin_name
should be provided. - qualitygate
Usergroup StringAssociation Id - The ID of this resource.
Package Details
- Repository
- sonarqube jdamata/terraform-provider-sonarqube
- License
- Notes
- This Pulumi package is based on the
sonarqube
Terraform Provider.