jira

package
v0.1.20 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 5, 2023 License: MIT Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ResourceNotFoundError = &resourceNotFoundError{} // Constant to use with errors.Is and errors.As
)

Functions

func GetJiraResourceID

func GetJiraResourceID(client *jira.Client, urlStr string) (*int, error)

GetJiraResourceID Fetches the ID of a JIRA resource

func HashString added in v0.1.20

func HashString(s string) int

String hashes a string to a unique hashcode.

crc32 returns a uint32, but for our use we need and non negative integer. Here we cast to an integer and invert it if the result is negative.

func HashStrings added in v0.1.20

func HashStrings(strings []string) string

Strings hashes a list of strings to a unique hashcode.

func Provider

func Provider() *schema.Provider

Provider returns a terraform.ResourceProvider

Types

type Config

type Config struct {
	// contains filtered or unexported fields
}

type FilterPermissionRequest added in v0.1.5

type FilterPermissionRequest struct {
	Type          string `json:"type"`
	ProjectID     string `json:"projectId"`
	Group         string `json:"groupname"`
	ProjectRoleID string `json:"projectRoleId"`
}

type FilterPermissionResult added in v0.1.5

type FilterPermissionResult struct {
	Type          string            `json:"type"`
	ID            int               `json:"id"`
	Project       ProjectPermission `json:"project"`
	Group         GroupPermission   `json:"group"`
	ProjectRoleID RolePermission    `json:"role"`
}

type FilterRequest added in v0.1.4

type FilterRequest struct {
	Name             string                   `json:"name"`
	Description      string                   `json:"description"`
	Jql              string                   `json:"jql"`
	Favourite        bool                     `json:"favourite"`
	SharePermissions []FilterPermissionResult `json:"sharePermissions"`
}

FilterRequest represents a Filter in Jira

type Group added in v0.1.2

type Group struct {
	Name string `json:"name,omitempty" structs:"name,omitempty"`
}

Group The struct sent to the JIRA instance to create a new GroupMembership

type GroupPermission added in v0.1.5

type GroupPermission struct {
	Name string `json:"name"`
}

type GroupRequest

type GroupRequest struct {
	Name string `json:"name,omitempty" structs:"name,omitempty"`
}

GroupRequest The struct sent to the JIRA instance to create a new Group

type Groups added in v0.1.2

type Groups struct {
	Items []Group `json:"items,omitempty" structs:"items,omitempty"`
}

Groups List of groups the user belongs to

type IDResponse

type IDResponse struct {
	ID int `json:"id,omitempty" structs:"id,omitempty"`
}

IDResponse The struct sent from the JIRA instance after creating a new Project

type IssueTypeRequest

type IssueTypeRequest struct {
	Description string `json:"description,omitempty" structs:"description,omitempty"`
	Name        string `json:"name,omitempty" structs:"name,omitempty"`
	Type        string `json:"type,omitempty" structs:"type,omitempty"`
	AvatarID    int    `json:"avatarId,omitempty" structs:"avatarId,omitempty"`
}

IssueTypeRequest The struct sent to the JIRA instance to create a new Issue Type JIRA API docs: https://docs.atlassian.com/software/jira/docs/api/REST/7.6.1/#api/2/issuetype-createIssueType

type Project added in v0.1.17

type Project struct {
	Expand          string                  `json:"expand,omitempty" structs:"expand,omitempty"`
	Self            string                  `json:"self,omitempty" structs:"self,omitempty"`
	ID              string                  `json:"id,omitempty" structs:"id,omitempty"`
	Key             string                  `json:"key,omitempty" structs:"key,omitempty"`
	Description     string                  `json:"description,omitempty" structs:"description,omitempty"`
	Lead            jira.User               `json:"lead,omitempty" structs:"lead,omitempty"`
	Components      []jira.ProjectComponent `json:"components,omitempty" structs:"components,omitempty"`
	IssueTypes      []jira.IssueType        `json:"issueTypes,omitempty" structs:"issueTypes,omitempty"`
	URL             string                  `json:"url,omitempty" structs:"url,omitempty"`
	Email           string                  `json:"email,omitempty" structs:"email,omitempty"`
	AssigneeType    string                  `json:"assigneeType,omitempty" structs:"assigneeType,omitempty"`
	Versions        []jira.Version          `json:"versions,omitempty" structs:"versions,omitempty"`
	Name            string                  `json:"name,omitempty" structs:"name,omitempty"`
	Roles           map[string]string       `json:"roles,omitempty" structs:"roles,omitempty"`
	AvatarUrls      jira.AvatarUrls         `json:"avatarUrls,omitempty" structs:"avatarUrls,omitempty"`
	ProjectCategory ProjectCategory         `json:"projectCategory,omitempty" structs:"projectCategory,omitempty"`
	ProjectTypeKey  string                  `json:"projectTypeKey,omitempty" structs:"projectTypeKey,omitempty"`
}

Project represents a Jira Project.

type ProjectCategory added in v0.1.4

type ProjectCategory struct {
	Self        string `json:"self,omitempty"`
	Name        string `json:"name,omitempty"`
	Description string `json:"description,omitempty"`
	ID          string `json:"id,omitempty"`
}

ProjectCategory represents a JIRA ProjectCategory

type ProjectMembership added in v0.1.3

type ProjectMembership struct {
	ID   int    `json:"id,omitempty"`
	Name string `json:"name"`
	Type string `json:"type"`
}

ProjectMembership represents a JIRA ProjectMembership

type ProjectMembershipRequest added in v0.1.3

type ProjectMembershipRequest struct {
	ID    int      `json:"id,omitempty"`
	User  []string `json:"user,omitempty"`
	Group []string `json:"group,omitempty"`
}

ProjectMembershipRequest represents a JIRA ProjectMembership

type ProjectPermission added in v0.1.5

type ProjectPermission struct {
	ID string `json:"id"`
}

type ProjectRequest

type ProjectRequest struct {
	Key                 string `json:"key,omitempty" structs:"key,omitempty"`
	Name                string `json:"name,omitempty" structs:"name,omitempty"`
	ProjectTypeKey      string `json:"projectTypeKey,omitempty" structs:"projectTypeKey,omitempty"`
	ProjectTemplateKey  string `json:"projectTemplateKey,omitempty" structs:"projectTemplateKey,omitempty"`
	Description         string `json:"description,omitempty" structs:"description,omitempty"`
	Lead                string `json:"lead,omitempty" structs:"lead,omitempty"`
	LeadAccountID       string `json:"leadAccountId,omitempty" structs:"leadAccountId,omitempty"`
	URL                 string `json:"url,omitempty" structs:"url,omitempty"`
	AssigneeType        string `json:"assigneeType,omitempty" structs:"assigneeType,omitempty"`
	AvatarID            int    `json:"avatar_id,omitempty" structs:"avatar_id,omitempty"`
	IssueSecurityScheme int    `json:"issueSecurityScheme,omitempty" structs:"issueSecurityScheme,omitempty"`
	PermissionScheme    int    `json:"permissionScheme,omitempty" structs:"permissionScheme,omitempty"`
	NotificationScheme  int    `json:"notificationScheme,omitempty" structs:"notificationScheme,omitempty"`
	CategoryID          string `json:"categoryId,omitempty" structs:"categoryId,omitempty"`
}

ProjectRequest The struct sent to the JIRA instance to create a new Project

type ProjectRole added in v0.1.3

type ProjectRole struct {
	Actors []ProjectMembership `json:"actors"`
}

ProjectRole represents the actors of a Role within a Project

type Role added in v0.1.3

type Role struct {
	ID          int    `json:"id,omitempty"`
	Name        string `json:"name"`
	Description string `json:"description"`
}

Role represents a JIRA Role

type RolePermission added in v0.1.5

type RolePermission struct {
	ID int `json:"id"`
}

type SharedConfigurationProjectResponse added in v0.1.8

type SharedConfigurationProjectResponse struct {
	ProjectID int `json:"projectId,omitempty"`
}

type UserGroups added in v0.1.2

type UserGroups struct {
	Groups Groups `json:"groups,omitempty" structs:"groups,omitempty"`
}

UserGroups Wrapper for the groups of a user

type Webhook added in v0.1.2

type Webhook struct {
	Self        string        `json:"self,omitempty" structs:"self,omitempty"`
	Name        string        `json:"name,omitempty" structs:"name,omitempty"`
	URL         string        `json:"url,omitempty" structs:"url,omitempty"`
	Events      []string      `json:"events,omitempty" structs:"events,omitempty"`
	Filters     WebhookFilter `json:"filters"`
	ExcludeBody bool          `json:"excludeBody,omitempty" structs:"excludeBody,omitempty"`
}

Webhook represents a JIRA Webhook

type WebhookFilter added in v0.1.2

type WebhookFilter struct {
	JQL string `json:"issue-related-events-section,omitempty"`
}

WebhookFilter represents the JQL Filter for Webhook Events

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL