Giter Club home page Giter Club logo

terraform-provider-azuredevops's People

Contributors

awkwardindustries avatar c123r avatar charleszipp avatar christianbumann avatar cicorias avatar dshaevel avatar eliises avatar exocom avatar fhammerl avatar keithjrome avatar kevinhartman avatar lachlan-white avatar logachev avatar mattdot avatar michaelperel avatar microsoftopensource avatar midacts avatar mikaelkrief avatar mikehopcroft avatar mindlessroman avatar msftgits avatar mtarng avatar nathanielrose avatar rguthriemsft avatar seqdan avatar technicallywilliams avatar tiwood avatar tmeckel avatar tsuyoshiushio avatar xuzhang3 avatar

Watchers

 avatar

terraform-provider-azuredevops's Issues

azuredevops_group create may fail due to AAD replication issues/delay

We should add a retry function to the azuredevops_group resource.

Request

:authority: vssps.dev.azure.com
:method: POST
:path: /xxx/_apis/Graph/Groups
:scheme: https
x-tfs-fedauthredirect: Suppress
x-tfs-session: 39c99ad2-ce33-40a7-8771-6b77990c6cba
user-agent: go/go1.13.6 (darwin amd64) azure-devops-go-api/0.0.0
authorization: Basic xxx
accept: application/json;api-version=5.1-preview.1
content-type: application/json;charset=utf-8
content-length: 51
accept-encoding: gzip

{"originId":"edbb7079-7cdb-4f63-89b7-a599e827dcc5"}

Response/Returned error:

:status: 400
cache-control: no-cache
pragma: no-cache
content-length: 204
content-type: application/json; charset=utf-8; api-version=5.1-preview.1
expires: -1
<snip>

{"count":180,"value":"VS860016: Could not find subject 'edbb7079-7cdb-4f63-89b7-a599e827dcc5' in the backing domain. This value came from the parameter 'originId'. Please check your input and try again."}

Blocked-by

blocked by microsoft/azure-devops-go-api#48

Implement azuredevops_project_features a resource provider to manage project features

Description

Add a resource provider to manage project features.

image

New or Affected Resource(s)

  • azuredevops_project_features

Potential Terraform Configuration

# Copy-paste your Terraform configurations here - for large Terraform configs,
# please use a service like Dropbox and share a link to the ZIP file. For
# security, you can also encrypt the files using our GPG public key.
resource "azuredevops_project_features" "my-project-features" {
       project_id = "a61b60e3-fcbd-429f-ad21-7ba1358c5057"
       features = {
            Test = disabled
            Artifacts = enabled
            Board = enabled
       }
}

Azure DevOps REST API

Disable Test Plans

https://dev.azure.com/{organization}/_apis/FeatureManagement/FeatureStates/host/project/{project-id}/ms.vss-test-web.test

{
    "featureId": "ms.vss-test-web.test",
    "scope": {
        "settingScope": "project",
        "userScoped": false
    },
    "state": 0
}

Query feature status

https://dev.azure.com/{organization}/_apis/FeatureManagement/FeatureStatesQuery/host/project/{project-id}

{
    "featureIds": ["ms.vss-work.agile", "ms.vss-code.version-control", "ms.vss-build.pipelines", "ms.vss-test-web.test", "ms.feed.feed"],
    "featureStates": {},
    "scopeValues": {
        "project": "f6ad111f-42cb-4e2d-b22a-cd0bd6f5aebd"
    }
}

References

Group data source schema issues

The schema is currently invalid:

func dataGroup() *schema.Resource {
	return &schema.Resource{
		Read: dataSourceGroupRead,
		Schema: map[string]*schema.Schema{
			"name": {
				Type:         schema.TypeString,
				ForceNew:     true,
				Required:     true,
				ValidateFunc: validation.NoZeroValues,
			},
			"project_id": {
				Type:         schema.TypeString,
				ForceNew:     true,
				Required:     true,
				ValidateFunc: validation.NoZeroValues,
			},
			"descriptor": {
				Type:     schema.TypeString,
				Computed: true,
			},
		},
	}
}

ForceNew should be removed
project_id should be optional (for getting org-wide groups)

Data Source: Service Connections

Description

Create a data source to query Azure DevOps about existing service connections inside a project.

New or Affected Resource(s)

  • azuredevops_serviceconnections

Potential Terraform Configuration

# Copy-paste your Terraform configurations here - for large Terraform configs,
# please use a service like Dropbox and share a link to the ZIP file. For
# security, you can also encrypt the files using our GPG public key.

data azuredevops_serviceconnections "project-service-connections" {
       project_id = '09df9024-1f15-46fe-92b4-631bf6b93de2'
       types =  [ azurerm, docker ] # optional, if empty return all available service connections
}

References

N/A

Resource: Service Connection for Azure ARM

Description

Create a new resource to create service endpoint of type azurerm

New or Affected Resource(s)

  • azuredevops_serviceendpoint_azurearm

Potential Terraform Configuration

# Copy-paste your Terraform configurations here - for large Terraform configs,
# please use a service like Dropbox and share a link to the ZIP file. For
# security, you can also encrypt the files using our GPG public key.

References

N/A

Implement azuredevops_sonarqube_serviceconnection

Community Note

  • Please vote on this issue by adding a ๐Ÿ‘ reaction to the original issue to help the community and maintainers prioritize this request
  • Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
  • If you are interested in working on this issue or have submitted a pull request, please leave a comment

Description

New or Affected Resource(s)

  • azuredevops_sonarqube_serviceconnection

Potential Terraform Configuration

# Copy-paste your Terraform configurations here - for large Terraform configs,
# please use a service like Dropbox and share a link to the ZIP file. For
# security, you can also encrypt the files using our GPG public key.

REST Api JSON samples

Create service connection

{
    "administratorsGroup": null,
    "authorization": {
        "scheme": "UsernamePassword",
        "parameters": {
            "username": "sadfggsdfgsdfgsdfgsdfg"
        }
    },
    "createdBy": null,
    "data": {},
    "description": "My Description",
    "groupScopeId": null,
    "name": "SonarQube - Test",
    "operationStatus": null,
    "readersGroup": null,
    "serviceEndpointProjectReferences": [{
        "description": "My Description",
        "name": "SonarQube - Test",
        "projectReference": {
            "id": "f6ad111f-42cb-4e2d-b22a-cd0bd6f5aebd",
            "name": "Test1"
        }
    }],
    "type": "sonarqube",
    "url": "https://sonarq.test.com",
    "isShared": false,
    "owner": "library"
}

Authorize for all pipelines

{
    "resource": {
        "id": "1cf33095-ac71-47ea-b84d-8d8845cab692",
        "type": "endpoint",
        "name": ""
    },
    "pipelines": [],
    "allPipelines": {
        "authorized": true,
        "authorizedBy": null,
        "authorizedOn": null
    }
}

References

  • #0000

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.