All Projects → target → go-arty

target / go-arty

Licence: other
Go client library for Artifactory and Xray

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to go-arty

devops-101-workshop
Serves as documentation, starter code, and companion guide for a DevOps 101 workshop using the JFrog platform.
Stars: ✭ 36 (+38.46%)
Mutual labels:  artifactory, xray
python-artifactory
Typed interactions with the Jfrog Artifactory REST API
Stars: ✭ 34 (+30.77%)
Mutual labels:  artifactory
AE-CNN
ICVGIP' 18 Oral Paper - Classification of thoracic diseases on ChestX-Ray14 dataset
Stars: ✭ 33 (+26.92%)
Mutual labels:  xray
artifact-resolver
Standalone jar executable client Maven 2 artifact resolver based on Eclipse Aether.
Stars: ✭ 13 (-50%)
Mutual labels:  artifactory
Xray Core
Xray, Penetrates Everything. Also the best v2ray-core, with XTLS support. Fully compatible configuration.
Stars: ✭ 6,908 (+26469.23%)
Mutual labels:  xray
ebook-continuous-delivery-with-kubernetes-and-jenkins
Continuous Delivery for Java Apps: Build a CD Pipeline Step by Step Using Kubernetes, Docker, Vagrant, Jenkins, Spring, Maven and Artifactory
Stars: ✭ 39 (+50%)
Mutual labels:  artifactory
geoip
🌚 🌍 🌝 GeoIP 规则文件加强版,同时支持定制 V2Ray dat 格式路由规则文件 geoip.dat 和 MaxMind mmdb 格式文件 Country.mmdb。Enhanced edition of GeoIP files for V2Ray, Xray-core, Trojan-Go, Clash and Leaf, with replaced CN IPv4 CIDR available from ipip.net, appended CIDR lists and more.
Stars: ✭ 524 (+1915.38%)
Mutual labels:  xray
TProxy
透明代理的旁路由虚拟网关
Stars: ✭ 39 (+50%)
Mutual labels:  xray
go-artifactory
Go library for artifactory REST API
Stars: ✭ 21 (-19.23%)
Mutual labels:  artifactory
terraform-provider-artifactory
Terraform provider for managing Artifactory
Stars: ✭ 17 (-34.62%)
Mutual labels:  artifactory
Covid Chestxray Dataset
We are building an open database of COVID-19 cases with chest X-ray or CT images.
Stars: ✭ 2,759 (+10511.54%)
Mutual labels:  xray
Multi V2ray
v2ray/xray多用户管理部署程序
Stars: ✭ 5,382 (+20600%)
Mutual labels:  xray
kubernetes example
5-Step Kubernetes CI/CD Process using Artifactory & Helm
Stars: ✭ 35 (+34.62%)
Mutual labels:  artifactory
V2ray Rules Dat
🦄 🎃 👻 V2Ray 路由规则文件加强版,可代替 V2Ray 官方 geoip.dat 和 geosite.dat,兼容 Shadowsocks-windows、Xray-core、Trojan-Go 和 leaf。Enhanced edition of V2Ray rules dat files, compatible with Xray-core, Shadowsocks-windows, Trojan-Go and leaf.
Stars: ✭ 6,550 (+25092.31%)
Mutual labels:  xray
okd-lab
Controlled Environment for OKD4 experiments
Stars: ✭ 24 (-7.69%)
Mutual labels:  artifactory
Xray-yes
Xray安装脚本 / Xray install script (VLESS TCP XTLS)
Stars: ✭ 72 (+176.92%)
Mutual labels:  xray
artifactory
Ansible role to install Artifactory, the Maven repository manager by JFrog.
Stars: ✭ 21 (-19.23%)
Mutual labels:  artifactory
lung-segmentation
Lung segmentation for chest X-Ray images
Stars: ✭ 74 (+184.62%)
Mutual labels:  xray
Proxysu
Xray,V2ray,Trojan,NaiveProxy, Trojan-Go, ShadowsocksR(SSR),Shadowsocks-libev及相关插件,MTProto+TLS 一键安装工具,windows下用(一键科学上网)
Stars: ✭ 3,309 (+12626.92%)
Mutual labels:  xray
artifactory-secrets-plugin
HashiCorp Vault Artifactory Secrets Plugin
Stars: ✭ 17 (-34.62%)
Mutual labels:  artifactory

go-arty

GoDoc Go Report Card codecov

go-arty is a Go client library for accessing the Artifactory and Xray API.

Artifactory

Usage

With Go Modules

import "github.com/target/go-arty/v2/artifactory"

Without Go Modules

import "github.com/target/go-arty/artifactory"

Construct a new Artifactory client, then use the various services on the client to access different parts of the Artifactory API. For example:

client, _ := artifactory.NewClient("artifactory.company.com", nil)

// list all users from the artifactory server
users, _, err := client.Users.GetAllSecurity()

Authentication

The artifactory package allows you to pass basic auth or an API Key.

Example using basic auth:

client, _ := artifactory.NewClient("artifactory.company.com", nil)

client.Authentication.SetBasicAuth("username", "password")

Example using API Key:

client, _ := artifactory.NewClient("artifactory.company.com", nil)

client.Authentication.SetTokenAuth("token")

Xray

Usage

With Go Modules

import "github.com/target/go-arty/v2/xray"

Without Go Modules

import "github.com/target/go-arty/xray"

Construct a new Xray client, then use the various services on the client to access different parts of the Xray API. For example:

client, _ := xray.NewClient("artifactory.company.com", nil)

// list all users from the xray server
users, _, err := client.Users.GetAll()

Authentication

The xray package allows you to pass basic auth or a token.

NOTE: To get the token for Xray, you have to hit an API endpoint that returns the token. See the docs for more info.

Example using basic auth:

client, _ := xray.NewClient("xray.company.com", nil)

client.Authentication.SetBasicAuth("username", "password")

Example using token:

client, _ := xray.NewClient("xray.company.com", nil)

client.Authentication.SetTokenAuth("token")

Creating/Updating Resources

All structs in this library use pointer values for all non-repeated fields. This allows distinguishing between unset fields and those set to a zero-value. Helper functions have been provided to easily create these pointers for string, bool, and int values. For example:

// create a new user named "admin"
user := &artifactory.SecurityUser{
	Name:     artifactory.String("admin"),
	Email:    artifactory.String("[email protected]"),
	Password: artifactory.String("secretPassword"),
	Admin:    artifactory.Bool(true),
}

client.Users.CreateSecurity(user)

Users who have worked with protocol buffers should find this pattern familiar.

Versioning

In general, go-arty follows semantic versioning as closely as we can for tagging releases of the package. For self-contained libraries, the application of semantic versioning is relatively straightforward and generally understood. But because go-arty is a client library for the Artifactory API and the Xray API, which both change behavior frequently, we've adopted the following versioning policy:

  • We increment the major version with any incompatible change to either package (artifactory or xray) in this library, including changes to the exported Go API surface or behavior of the API.
  • We increment the minor version with any backwards-compatible changes to functionality.
  • We increment the patch version with any backwards-compatible bug fixes.

Road map

This library was initially developed for internal applications at Target, so API methods will likely be added in the order that they are required.

Contributing

We always welcome new PRs! See Contributing for further instructions.

Bugs and Feature Requests

Found something that doesn't seem right or have a feature request? Please open a new issue.

Copyright and License

license

Copyright (c) 2018 Target Brands, Inc.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].