• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

cdn/H26-Sep-2017-

cms/H26-Sep-2017-

common/H26-Sep-2017-

crm/H26-Sep-2017-

cs/H26-Sep-2017-

dm/H26-Sep-2017-

dns/H26-Sep-2017-

ecs/H26-Sep-2017-

ess/H26-Sep-2017-

location/H26-Sep-2017-

metadata/H26-Sep-2017-

mns/H26-Sep-2017-

mq/H26-Sep-2017-

nas/H26-Sep-2017-

opensearch/H26-Sep-2017-

oss/H26-Sep-2017-

push/H26-Sep-2017-

ram/H26-Sep-2017-

rds/H26-Sep-2017-

slb/H26-Sep-2017-

sls/H26-Sep-2017-

sms/H26-Sep-2017-

sts/H26-Sep-2017-

util/H26-Sep-2017-

.gitignoreH A D26-Sep-20176

.travis.ymlH A D26-Sep-2017152

README.mdH A D26-Sep-20178.7 KiB

circle.ymlH A D26-Sep-2017183

README.md

1# AliyunGo: Go SDK for Aliyun Services
2
3[![Build Status](https://travis-ci.org/denverdino/aliyungo.svg?branch=master)](https://travis-ci.org/denverdino/aliyungo) [![CircleCI](https://circleci.com/gh/denverdino/aliyungo.svg?style=svg)](https://circleci.com/gh/denverdino/aliyungo) [![Go Report Card](https://goreportcard.com/badge/github.com/denverdino/aliyungo)](https://goreportcard.com/report/github.com/denverdino/aliyungo)
4
5This is an unofficial Go SDK for Aliyun Services. You are welcome for contribution.
6
7
8## Package Structure
9
10*  ecs: [Elastic Compute Service](https://help.aliyun.com/document_detail/ecs/open-api/summary.html)
11*  oss: [Open Storage Service](https://help.aliyun.com/document_detail/oss/api-reference/abstract.html)
12*  slb: [Server Load Balancer](https://help.aliyun.com/document_detail/slb/api-reference/brief-introduction.html)
13*  dns: [DNS](https://help.aliyun.com/document_detail/dns/api-reference/summary.html)
14*  sls: [Logging Service](https://help.aliyun.com/document_detail/sls/api/overview.html)
15*  ram: [Resource Access Management](https://help.aliyun.com/document_detail/ram/ram-api-reference/intro/intro.html)
16*  rds: [Relational Database Service](https://help.aliyun.com/document_detail/26226.html)
17*  cms: [Cloud Monitor Service](https://help.aliyun.com/document_detail/28615.html)
18*  cs: [Container Service](https://help.aliyun.com/product/25972.html)
19*  sts: [Security Token Service](https://help.aliyun.com/document_detail/28756.html)
20*  dm: [Direct Mail](https://help.aliyun.com/document_detail/29414.html)
21*  sms: [Short Message Service](https://help.aliyun.com/product/44282.html)
22*  push: [Cloud Mobile Push](https://help.aliyun.com/document_detail/30049.html)
23*  opensearch: [OpenSearch](https://help.aliyun.com/document_detail/29118.html)
24*  mq: [Message Queue](https://help.aliyun.com/document_detail/29532.html)
25*  nas: [Network Attached Storage](https://help.aliyun.com/document_detail/27518.html)
26*  common: Common libary of Aliyun Go SDK
27*  util: Utility helpers
28
29
30
31## Quick Start
32
33```go
34package main
35
36import (
37	"fmt"
38
39	"github.com/denverdino/aliyungo/ecs"
40)
41
42const ACCESS_KEY_ID = "<YOUR_ID>"
43const ACCESS_KEY_SECRET = "<****>"
44
45func main() {
46	client := ecs.NewClient(ACCESS_KEY_ID, ACCESS_KEY_SECRET)
47	fmt.Print(client.DescribeRegions())
48}
49
50```
51
52## Documentation
53
54  *  ECS: [https://godoc.org/github.com/denverdino/aliyungo/ecs](https://godoc.org/github.com/denverdino/aliyungo/ecs) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/ecs?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/ecs)
55  *  OSS: [https://godoc.org/github.com/denverdino/aliyungo/oss](https://godoc.org/github.com/denverdino/aliyungo/oss) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/oss?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/oss)
56  *  SLB: [https://godoc.org/github.com/denverdino/aliyungo/slb](https://godoc.org/github.com/denverdino/aliyungo/slb) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/slb?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/slb)
57  *  DNS: [https://godoc.org/github.com/denverdino/aliyungo/dns](https://godoc.org/github.com/denverdino/aliyungo/dns) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/dns?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/dns)
58  *  SLS: [https://godoc.org/github.com/denverdino/aliyungo/sls](https://godoc.org/github.com/denverdino/aliyungo/sls) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/sls?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/sls)
59  *  RAM: [https://godoc.org/github.com/denverdino/aliyungo/ram](https://godoc.org/github.com/denverdino/aliyungo/ram) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/ram?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/ram)
60  *  RDS: [https://godoc.org/github.com/denverdino/aliyungo/rds](https://godoc.org/github.com/denverdino/aliyungo/rds) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/rds?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/rds)
61  *  CMS: [https://godoc.org/github.com/denverdino/aliyungo/cms](https://godoc.org/github.com/denverdino/aliyungo/cms) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/cms?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/cms)
62  *  CS: [https://godoc.org/github.com/denverdino/aliyungo/cs](https://godoc.org/github.com/denverdino/aliyungo/cs) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/cs?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/cs)
63  *  STS: [https://godoc.org/github.com/denverdino/aliyungo/sts](https://godoc.org/github.com/denverdino/aliyungo/sts) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/sts?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/sts)
64  *  DM: [https://godoc.org/github.com/denverdino/aliyungo/dm](https://godoc.org/github.com/denverdino/aliyungo/dm) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/dm?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/dm)
65  *  SMS: [https://godoc.org/github.com/denverdino/aliyungo/sms](https://godoc.org/github.com/denverdino/aliyungo/sms) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/sms?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/sms)
66  *  MQ: [https://godoc.org/github.com/denverdino/aliyungo/mq](https://godoc.org/github.com/denverdino/aliyungo/mq) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/mq?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/mq)
67  *  NAS: [https://godoc.org/github.com/denverdino/aliyungo/nas](https://godoc.org/github.com/denverdino/aliyungo/nas) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/nas?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/nas)
68  *  OPENSEARCH: [https://godoc.org/github.com/denverdino/aliyungo/opensearch](https://godoc.org/github.com/denverdino/aliyungo/opensearch) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/opensearch?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/opensearch)
69  *  PUSH: [https://godoc.org/github.com/denverdino/aliyungo/push](https://godoc.org/github.com/denverdino/aliyungo/push) [![GoDoc](https://godoc.org/github.com/denverdino/aliyungo/push?status.svg)](https://godoc.org/github.com/denverdino/aliyungo/push)
70
71## Build and Install
72
73go get:
74
75```sh
76go get github.com/denverdino/aliyungo
77```
78
79
80## Test ECS
81
82Modify "ecs/config_test.go"
83
84```sh
85	TestAccessKeyId     = "MY_ACCESS_KEY_ID"
86	TestAccessKeySecret = "MY_ACCESS_KEY_ID"
87	TestInstanceId      = "MY_INSTANCE_ID"
88	TestIAmRich         = false
89```
90
91*  TestAccessKeyId: the Access Key Id
92*  TestAccessKeySecret: the Access Key Secret.
93*  TestInstanceId: the existing instance id for testing. It will be stopped and restarted during testing.
94*  TestIAmRich(Optional): If it is set to true, it will perform tests to create virtual machines and disks under your account. And you will pay the bill. :-)
95
96Under "ecs" and run
97
98```sh
99go test
100```
101
102## Test OSS
103
104Modify "oss/config_test.go"
105
106```sh
107	TestAccessKeyId     = "MY_ACCESS_KEY_ID"
108	TestAccessKeySecret = "MY_ACCESS_KEY_ID"
109	TestRegion          = oss.Beijing
110	TestBucket          = "denverdino"
111```
112
113*  TestAccessKeyId: the Access Key Id
114*  TestAccessKeySecret: the Access Key Secret.
115*  TestRegion: the region of OSS for testing
116*  TestBucket: the bucket name for testing
117
118
119Under "oss" and run
120
121```sh
122go test
123```
124
125## Contributors
126
127  * Li Yi (denverdino@gmail.com)
128  * Boshi Lian (farmer1992@gmail.com)
129  * Yu Zhou (oscarrr110@gmail.com)
130  * Yufei Zhang
131  * linuxlikerqq
132  * Changhai Yan
133  * Jizhong Jiang (jiangjizhong@gmail.com)
134  * Kent Wang (pragkent@gmail.com)
135  * ringtail
136  * aiden0z (aiden0xz@gmail.com)
137  * jimmycmh
138  * menglingwei
139  * mingang.he (dustgle@gmail.com)
140  * Young Chen (chainone@gmail.com)
141  * johnzeng
142  * spacexnice (445436286@qq.com)
143  * xiaoheihero
144  * hmgle (dustgle@gmail.com)
145  * jzwlqx (jiangjizhong@gmail.com)
146  * Linhua Tan (toolchainX@gmail.com)
147  * Plutonist (p@vecsight.com)
148  * Bin Liu
149  * wangyue
150  * demonwy
151  * yarous224
152  * yufeizyf (xazyf9111@sina.cn)
153  * keontang (ikeontang@gmail.com)
154  * Cholerae Hu (me@cholerae.com)
155  * Zach Bergh (berghzach@gmail.com)
156  * Bingshen Wang
157  * xiaozhu36
158  * Russell (yufeiwu@gmail.com)
159  * zhuzhih2017
160  * cheyang
161  * Hobo Chen
162  * Shuwei Yin
163  * Xujin Zheng (xujinzheng@gmail.com)
164
165
166## License
167This project is licensed under the Apache License, Version 2.0. See [LICENSE](https://github.com/denverdino/aliyungo/blob/master/LICENSE.txt) for the full license text.
168
169
170## Related projects
171
172  * Aliyun ECS driver for Docker Machine: [Pull request](https://github.com/docker/machine/pull/1182)
173
174  * Aliyun OSS driver for Docker Registry V2: [Pull request](https://github.com/docker/distribution/pull/514)
175
176
177## References
178
179The GO API design of OSS refer the implementation from [https://github.com/AdRoll/goamz](https://github.com/AdRoll)
180