Skip to content

Cluster Token create mutation for GraphQl

Emily Ring requested to merge emilyring-token-graphql-create into master

What does this MR do?

Related to issue: gitlab-org/cluster-integration/gitlab-agent#6 (closed)

We recently created an Agent Model and Token Model. MR: !33228 (merged)

Now that models have been created, we need to make GraphQl calls to access/remove agents and tokens

Per another discussion, this feature will only be available for premium plans

This MR will:

  • Add GraphQl Clusters::AgentToken create mutation
  • Add GraphQl Clusters::AgentTokenType
  • Add Clusters::AgentToken::CreateService
  • Add Clusters::AgentTokenPolicy (for authorize :admin_cluster in AgentTokenType)
  • Add associated tests
  • Update associated GraphQl documents

Previous MRs:

Related MRs will:

Screenshots

mutation createAgent {
  createClusterAgent(input: { projectPath: <project-path>, name: <project-name> }) {
    clusterAgent {
      id 
      name
    }
    errors
  } 
}

mutation createToken {
  clusterAgentTokenCreate(input: { clusterAgentId: <cluster-agent-id> }) {
    secret
    token {
      createdAt
      id
    }
    errors
  }
}

create

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team
Edited by Emily Ring

Merge request reports