Skip to content

Commit

Permalink
Merge pull request #1 from zcubbs/api_client
Browse files Browse the repository at this point in the history
Api client
  • Loading branch information
zcubbs committed Nov 9, 2023
2 parents 70bafaf + 7148d48 commit 162c114
Show file tree
Hide file tree
Showing 35 changed files with 1,059 additions and 51 deletions.
45 changes: 45 additions & 0 deletions examples/awxclient_example.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
package main

import (
"fmt"
"kwx/pkg/awxclient"
"log"
)

func main() {
// Initialize the AWX client
client := awxclient.NewClient("http://your-awx-instance.com", "your-token")

// 1. Create a new credential
newCredential := awxclient.Credential{
Name: "My New Credential",
Description: "SSH Key for Production Server",
Kind: "ssh",
}
createdCredential, err := client.CreateCredential(newCredential)
if err != nil {
log.Fatalf("Error creating new credential: %v", err)
}
fmt.Printf("Created new credential with ID: %d\n", createdCredential.ID)

// 2. Create a new project
newProject := awxclient.Project{
Name: "My New Project",
Description: "Repo containing deployment scripts",
SCMType: "git",
SCMURL: "https://github.com/your-repo.git",
}
createdProject, err := client.CreateProject(newProject)
if err != nil {
log.Fatalf("Error creating new project: %v", err)
}
fmt.Printf("Created new project with ID: %d\n", createdProject.ID)

// 3. Fetch details of an inventory group by ID
groupID := 123 // Replace with a group ID you're interested in
group, err := client.GetGroup(groupID)
if err != nil {
log.Fatalf("Error fetching group details: %v", err)
}
fmt.Printf("Group Details - Name: %s, InventoryID: %d\n", group.Name, group.InventoryID)
}
44 changes: 26 additions & 18 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,17 @@ module kwx
go 1.21

require (
github.com/go-resty/resty/v2 v2.10.0
github.com/gofrs/flock v0.8.1
github.com/gorilla/websocket v1.5.1
github.com/pkg/errors v0.9.1
github.com/spf13/cobra v1.7.0
github.com/spf13/viper v1.16.0
github.com/zcubbs/go-k8s v0.4.0
github.com/zcubbs/x v0.1.8
github.com/spf13/cobra v1.8.0
github.com/spf13/viper v1.17.0
github.com/stretchr/testify v1.8.4
github.com/zcubbs/go-k8s v0.8.8
github.com/zcubbs/x v0.1.14
gopkg.in/yaml.v2 v2.4.0
helm.sh/helm/v3 v3.13.0
helm.sh/helm/v3 v3.13.2
)

require (
Expand All @@ -29,10 +32,10 @@ require (
github.com/chai2010/gettext-go v1.0.2 // indirect
github.com/containerd/containerd v1.7.6 // indirect
github.com/cyphar/filepath-securejoin v0.2.4 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/docker/cli v24.0.6+incompatible // indirect
github.com/docker/distribution v2.8.2+incompatible // indirect
github.com/docker/docker v24.0.6+incompatible // indirect
github.com/docker/docker v24.0.7+incompatible // indirect
github.com/docker/docker-credential-helpers v0.8.0 // indirect
github.com/docker/go-connections v0.4.0 // indirect
github.com/docker/go-metrics v0.0.1 // indirect
Expand Down Expand Up @@ -95,22 +98,25 @@ require (
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
github.com/opencontainers/go-digest v1.0.0 // indirect
github.com/opencontainers/image-spec v1.1.0-rc5 // indirect
github.com/pelletier/go-toml/v2 v2.0.8 // indirect
github.com/pelletier/go-toml/v2 v2.1.0 // indirect
github.com/peterbourgon/diskv v2.0.1+incompatible // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/prometheus/client_golang v1.16.0 // indirect
github.com/prometheus/client_model v0.4.0 // indirect
github.com/prometheus/common v0.44.0 // indirect
github.com/prometheus/procfs v0.12.0 // indirect
github.com/rivo/uniseg v0.4.4 // indirect
github.com/rubenv/sql-migrate v1.5.2 // indirect
github.com/russross/blackfriday/v2 v2.1.0 // indirect
github.com/sagikazarmark/locafero v0.3.0 // indirect
github.com/sagikazarmark/slog-shim v0.1.0 // indirect
github.com/shopspring/decimal v1.3.1 // indirect
github.com/sirupsen/logrus v1.9.3 // indirect
github.com/spf13/afero v1.9.5 // indirect
github.com/sourcegraph/conc v0.3.0 // indirect
github.com/spf13/afero v1.10.0 // indirect
github.com/spf13/cast v1.5.1 // indirect
github.com/spf13/jwalterweatherman v1.1.0 // indirect
github.com/spf13/pflag v1.0.5 // indirect
github.com/subosito/gotenv v1.4.2 // indirect
github.com/subosito/gotenv v1.6.0 // indirect
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
github.com/xeipuuv/gojsonschema v1.2.0 // indirect
Expand All @@ -119,12 +125,14 @@ require (
go.opentelemetry.io/otel/metric v1.18.0 // indirect
go.opentelemetry.io/otel/trace v1.18.0 // indirect
go.starlark.net v0.0.0-20230921161717-a9587466d7a5 // indirect
golang.org/x/crypto v0.13.0 // indirect
golang.org/x/net v0.15.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
golang.org/x/crypto v0.14.0 // indirect
golang.org/x/exp v0.0.0-20230905200255-921286631fa9 // indirect
golang.org/x/net v0.17.0 // indirect
golang.org/x/oauth2 v0.12.0 // indirect
golang.org/x/sync v0.3.0 // indirect
golang.org/x/sys v0.12.0 // indirect
golang.org/x/term v0.12.0 // indirect
golang.org/x/sys v0.13.0 // indirect
golang.org/x/term v0.13.0 // indirect
golang.org/x/text v0.13.0 // indirect
golang.org/x/time v0.3.0 // indirect
google.golang.org/appengine v1.6.8 // indirect
Expand All @@ -134,12 +142,12 @@ require (
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/ini.v1 v1.67.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/api v0.28.2 // indirect
k8s.io/api v0.28.3 // indirect
k8s.io/apiextensions-apiserver v0.28.2 // indirect
k8s.io/apimachinery v0.28.2 // indirect
k8s.io/apimachinery v0.28.3 // indirect
k8s.io/apiserver v0.28.2 // indirect
k8s.io/cli-runtime v0.28.2 // indirect
k8s.io/client-go v0.28.2 // indirect
k8s.io/client-go v0.28.3 // indirect
k8s.io/component-base v0.28.2 // indirect
k8s.io/klog/v2 v2.100.1 // indirect
k8s.io/kube-openapi v0.0.0-20230918164632-68afd615200d // indirect
Expand Down
Loading

0 comments on commit 162c114

Please sign in to comment.