Giter Club home page Giter Club logo

terraform-provider-azuredevops's Issues

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)

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

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

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

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

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.