Add a Nexus Artifact Source Using API
This topic describes how to create, read, update, and delete Nexus Artifact Source using Harness GraphQL APIs.
Before You Begin
- Read the Create an Application topic to get an overview of how Harness organizes Services.
- Read the Add a Service topic to understand the process to add a Service to an Application.
- Read Configuration as Code to see how you can quickly configure your Harness Service using your existing YAML in Git.
- Nexus Artifact Sources
- Add Artifact Servers
Step: Create a Nexus Artifact Source
Use this sample query to create a Nexus Artifact Source.
Request
You create a Nexus Artifact Source using the mutation createConnector
.
mutation CreateConnector($connector: CreateConnectorInput!) {
createConnector(input: $connector) {
clientMutationId
connector {
...on NexusConnector{
name
id
}
}
}
}
Query Variables
The Query Variables follow this syntax, with connectorType
identifying the Nexus Artifact Source to create.
To fetch the passwordSecretId
use:
{
"connector": {
"connectorType": "NEXUS",
"nexusConnector": {
"name":"NexusConnector",
"URL":"https://nexus.test.harness.io",
"version":"V2",
"passwordSecretId": "xxxxxxxYYzzz",
"userName": "harnesstest"
}
}
}
Step: Update a Nexus Artifact Source
Use this sample query to update a Nexus Artifact Source.
Request
You update a Nexus Artifact Source using the mutation updateConnector
.
mutation UpdateConnector($connector: UpdateConnectorInput!) {
updateConnector(input: $connector) {
clientMutationId
connector {
name
id
}
}
}
Query Variables
The Query Variables follow this syntax, with connectorType
identifying the Nexus Artifact Source to update. See Fetch the Connector ID to get the connector ID details.
{
"connector": {
"connectorType": "NEXUS",
"connectorId": "xxxxxyxxxaaaqqq",
"nexusConnector": {
"name":"NexusConnector",
"URL":"https://nexus.test.harness.io",
"version":"V2",
"passwordSecretId": "xxxxxxxYYzzz",
"userName": "harnesstest"
}
}
}
Fetch the Connector ID
Use the following query to fetch the ID
of a connector. A list of connectors is returned based on the set filters. You can select the ID
of the connector that you want to update.
query
{
connectors(filters: [{connectorType: {operator: EQUALS, values: NEXUS}}], limit: 20) {
nodes {
name
id
}
}
}
Step: Delete a Nexus Artifact Source
You delete a Nexus Artifact Source using the mutation deleteConnector
. Deleting a Nexus Artifact Source requires its ID
only.
mutation DeleteConnectorMutation($connector: DeleteConnectorInput!) {
deleteConnector(input: $connector) {
clientMutationId
}
}
Query Variables
Query Variables, with connectorId
identifies the Nexus Artifact Source to delete.
{
"connector": {
"connectorId": "xxxxxx"
}
}