Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
252 commits
Select commit Hold shift + click to select a range
0e1e21f
Merge branch 'master' of https://github.com/Azure/azure-sdk-for-python
Jul 22, 2019
8ce6193
Merge branch 'master' of https://github.com/Azure/azure-sdk-for-python
Jul 24, 2019
3aa8e66
Merge branch 'master' of https://github.com/Azure/azure-sdk-for-python
Jul 24, 2019
c8bf0cb
Merge branch 'master' of https://github.com/Azure/azure-sdk-for-python
Jul 24, 2019
4eebd15
Generated from 368b5914a375e09ef413285c932b72038a8af7e4 (#48)
openapi-sdkautomation[bot] Aug 1, 2019
19f19cb
Trace identity (#6455)
SuyogSoti Jul 25, 2019
9bcde47
Update root README.md
kaerm Jul 25, 2019
1d9c134
Update CODEOWNERS
kurtzeborn Jul 25, 2019
b4d521b
more code owners
kurtzeborn Jul 25, 2019
913c1e9
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
5c0b47f
Smoke test for Python (#6412)
JonathanCrd Jul 25, 2019
846a8ad
Paging v2 (#6420)
lmazuel Jul 25, 2019
2a9fbf5
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
4a29492
Enable SDK Automation pull requests (#6498)
Jul 26, 2019
fd6b7ce
[AutoPR] devtestlabs/resource-manager (#6414)
AutorestCI Jul 26, 2019
d0b807a
[azure-core] Small fixes for aiohttp (#6490)
annatisch Jul 26, 2019
df002bf
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
a825826
Import aiohttp only when necessary (#6496)
chlowell Jul 29, 2019
43f5dfc
document async transport requirement (#6541)
chlowell Jul 30, 2019
23a0c79
[AutoPR] alertsmanagement/resource-manager (#5697)
AutorestCI Jul 30, 2019
f47afb8
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
47c4a2a
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
f8e53a6
we dont need thread locks (#6551)
SuyogSoti Jul 30, 2019
de663f2
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
2baaaba
[AutoPR hanaonazure/resource-manager] Removing monitoring hana instan…
AutorestCI Jul 31, 2019
6484ddd
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
32bb582
azure-core history 1.0.0b2 (#6562)
lmazuel Jul 31, 2019
26c6d78
Make private Cosmos modules private [WIP] (#6329)
bryevdv Jul 31, 2019
a108a21
Accept extension of JSON content-type (#6583)
lmazuel Jul 31, 2019
b24fafe
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
0fcf105
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
7297ae4
Generated from 368b5914a375e09ef413285c932b72038a8af7e4 (#48)
openapi-sdkautomation[bot] Aug 1, 2019
cfb54de
Merge branch 'sdkAutomation/azure-mgmt-sql' of https://github.com/Azu…
Aug 2, 2019
6258db5
Trace identity (#6455)
SuyogSoti Jul 25, 2019
fb4ac59
Update root README.md
kaerm Jul 25, 2019
cadac8f
Update CODEOWNERS
kurtzeborn Jul 25, 2019
8ef5283
more code owners
kurtzeborn Jul 25, 2019
16e7790
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
23e57c8
Smoke test for Python (#6412)
JonathanCrd Jul 25, 2019
a354b63
Paging v2 (#6420)
lmazuel Jul 25, 2019
50c9a1a
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
971ccb5
Enable SDK Automation pull requests (#6498)
Jul 26, 2019
ee6b512
[AutoPR] devtestlabs/resource-manager (#6414)
AutorestCI Jul 26, 2019
76b8713
[azure-core] Small fixes for aiohttp (#6490)
annatisch Jul 26, 2019
359fb95
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
61f0fcd
Import aiohttp only when necessary (#6496)
chlowell Jul 29, 2019
7d7f828
document async transport requirement (#6541)
chlowell Jul 30, 2019
b133e80
[AutoPR] alertsmanagement/resource-manager (#5697)
AutorestCI Jul 30, 2019
acbf669
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
c91215f
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
985bf36
we dont need thread locks (#6551)
SuyogSoti Jul 30, 2019
6606648
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
019a82e
[AutoPR hanaonazure/resource-manager] Removing monitoring hana instan…
AutorestCI Jul 31, 2019
00faa90
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
f796dde
azure-core history 1.0.0b2 (#6562)
lmazuel Jul 31, 2019
2223d45
Make private Cosmos modules private [WIP] (#6329)
bryevdv Jul 31, 2019
b1953ad
Accept extension of JSON content-type (#6583)
lmazuel Jul 31, 2019
e21940b
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
7a55156
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
15b8cdb
Generated from 368b5914a375e09ef413285c932b72038a8af7e4 (#48)
openapi-sdkautomation[bot] Aug 1, 2019
3e7e7c5
Update CODEOWNERS
kurtzeborn Jul 25, 2019
d26a1ba
more code owners
kurtzeborn Jul 25, 2019
f2841dd
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
88c1b32
Paging v2 (#6420)
lmazuel Jul 25, 2019
abc8188
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
a4a31e4
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
5d3eb4e
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
c3156d9
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
c1f3297
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
259ace3
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
4dc1d26
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
fac5cc3
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
5182ecc
Merge branch 'sdkAutomation/azure-mgmt-sql' of https://github.com/Azu…
Aug 5, 2019
ed10b3d
Trace identity (#6455)
SuyogSoti Jul 25, 2019
2726996
Update root README.md
kaerm Jul 25, 2019
9117be1
Update CODEOWNERS
kurtzeborn Jul 25, 2019
4dec5e7
more code owners
kurtzeborn Jul 25, 2019
9267c70
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
dbccc2e
Smoke test for Python (#6412)
JonathanCrd Jul 25, 2019
5dfbea8
Paging v2 (#6420)
lmazuel Jul 25, 2019
4c4b583
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
8fff8ba
Enable SDK Automation pull requests (#6498)
Jul 26, 2019
e7c9a32
[AutoPR] devtestlabs/resource-manager (#6414)
AutorestCI Jul 26, 2019
307b92e
[azure-core] Small fixes for aiohttp (#6490)
annatisch Jul 26, 2019
a36f0aa
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
6350bf0
Import aiohttp only when necessary (#6496)
chlowell Jul 29, 2019
19880fb
document async transport requirement (#6541)
chlowell Jul 30, 2019
8d4adff
[AutoPR] alertsmanagement/resource-manager (#5697)
AutorestCI Jul 30, 2019
7d73573
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
479a6d1
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
35356f6
we dont need thread locks (#6551)
SuyogSoti Jul 30, 2019
1b24b83
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
0438bd3
[AutoPR hanaonazure/resource-manager] Removing monitoring hana instan…
AutorestCI Jul 31, 2019
43c9b44
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
f4cfff2
azure-core history 1.0.0b2 (#6562)
lmazuel Jul 31, 2019
6649ad7
Make private Cosmos modules private [WIP] (#6329)
bryevdv Jul 31, 2019
f43130c
Accept extension of JSON content-type (#6583)
lmazuel Jul 31, 2019
d72657c
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
9ab788c
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
7894cfa
Generated from 368b5914a375e09ef413285c932b72038a8af7e4 (#48)
openapi-sdkautomation[bot] Aug 1, 2019
ae08b85
Update CODEOWNERS
kurtzeborn Jul 25, 2019
8b3893d
more code owners
kurtzeborn Jul 25, 2019
95f7bd3
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
87a7385
Paging v2 (#6420)
lmazuel Jul 25, 2019
5bee585
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
1324998
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
45d854d
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
5377233
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
54e5484
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
3a35da7
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
dbe9cd0
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
5d91db3
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
f7a7c21
Update CODEOWNERS
kurtzeborn Jul 25, 2019
11016cd
more code owners
kurtzeborn Jul 25, 2019
55dce19
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
3a25ebd
Paging v2 (#6420)
lmazuel Jul 25, 2019
f02017e
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
984b619
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
54fb94f
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
0b1240b
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
770a0c1
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
28a8eaf
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
ccacffe
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
b0cc66a
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
76cf58e
Update CODEOWNERS
kurtzeborn Jul 25, 2019
ffaec4f
more code owners
kurtzeborn Jul 25, 2019
73a4ece
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
95c7e07
Paging v2 (#6420)
lmazuel Jul 25, 2019
6b94363
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
e182032
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
f5c4001
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
51e1037
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
9a79b2d
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
ae0fb51
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
9e5fe35
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
9837ef7
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
a4128da
Merge branch 'sdkAutomation/azure-mgmt-sql' of https://github.com/Azu…
Aug 6, 2019
f967363
Trace identity (#6455)
SuyogSoti Jul 25, 2019
1d7bf36
Update root README.md
kaerm Jul 25, 2019
527cfb9
Update CODEOWNERS
kurtzeborn Jul 25, 2019
64d44c9
more code owners
kurtzeborn Jul 25, 2019
88a8ea0
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
2a26551
Smoke test for Python (#6412)
JonathanCrd Jul 25, 2019
cd75eb0
Paging v2 (#6420)
lmazuel Jul 25, 2019
7a25e05
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
b737528
Enable SDK Automation pull requests (#6498)
Jul 26, 2019
fb05560
[AutoPR] devtestlabs/resource-manager (#6414)
AutorestCI Jul 26, 2019
06312e4
[azure-core] Small fixes for aiohttp (#6490)
annatisch Jul 26, 2019
2beee04
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
42eb70d
Import aiohttp only when necessary (#6496)
chlowell Jul 29, 2019
b725551
document async transport requirement (#6541)
chlowell Jul 30, 2019
760e059
[AutoPR] alertsmanagement/resource-manager (#5697)
AutorestCI Jul 30, 2019
c9d328d
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
1f91c27
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
5b79f27
we dont need thread locks (#6551)
SuyogSoti Jul 30, 2019
8a7d2ac
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
77662a3
[AutoPR hanaonazure/resource-manager] Removing monitoring hana instan…
AutorestCI Jul 31, 2019
d498597
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
a2a2b66
azure-core history 1.0.0b2 (#6562)
lmazuel Jul 31, 2019
d19d169
Make private Cosmos modules private [WIP] (#6329)
bryevdv Jul 31, 2019
6125bc5
Accept extension of JSON content-type (#6583)
lmazuel Jul 31, 2019
c7f8a60
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
3cc51d7
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
8057ef7
Generated from 368b5914a375e09ef413285c932b72038a8af7e4 (#48)
openapi-sdkautomation[bot] Aug 1, 2019
ba3fa3a
Update CODEOWNERS
kurtzeborn Jul 25, 2019
9a5ce71
more code owners
kurtzeborn Jul 25, 2019
b1f3c7d
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
47bac65
Paging v2 (#6420)
lmazuel Jul 25, 2019
235c9c0
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
76cf0c3
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
146bcd1
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
6ca718f
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
1255e65
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
7090e92
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
77c4504
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
3463ad0
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
a347365
Update CODEOWNERS
kurtzeborn Jul 25, 2019
1dfb447
more code owners
kurtzeborn Jul 25, 2019
5244ff2
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
8ab31e1
Paging v2 (#6420)
lmazuel Jul 25, 2019
b9284a7
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
1e743bd
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
3b62776
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
ebe0944
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
c8b76a8
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
d590e0d
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
5f9cea3
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
23b298c
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
760ecf9
Update CODEOWNERS
kurtzeborn Jul 25, 2019
cfd5c56
more code owners
kurtzeborn Jul 25, 2019
8795821
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
fe24724
Paging v2 (#6420)
lmazuel Jul 25, 2019
67f6ffd
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
c75c8ff
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
ecc4a9c
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
04878ff
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
484cb94
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
823851c
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
303ea8c
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
3ddaf08
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
6e4d25e
Update CODEOWNERS
kurtzeborn Jul 25, 2019
26b5821
more code owners
kurtzeborn Jul 25, 2019
53a0988
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
dff604a
Paging v2 (#6420)
lmazuel Jul 25, 2019
687f95b
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
b9f5a93
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
7c6732d
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
f9ec0a5
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
6e82b5b
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
183fb56
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
4ee6fb8
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
6bde13f
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
5625662
Update CODEOWNERS
kurtzeborn Jul 25, 2019
36ef81d
more code owners
kurtzeborn Jul 25, 2019
eb9a2dd
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
e7c60ea
Paging v2 (#6420)
lmazuel Jul 25, 2019
444809a
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
58e947c
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
d4a87ef
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
6d60faa
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
6fada20
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
7ff58cd
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
eed97d6
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
3295928
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
f7e3704
Update CODEOWNERS
kurtzeborn Jul 25, 2019
deee46a
more code owners
kurtzeborn Jul 25, 2019
e702ae3
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
ddcbf91
Paging v2 (#6420)
lmazuel Jul 25, 2019
4a5149b
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
91830e6
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
a0f4fcb
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
5929f2e
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
a0c3fb5
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
30b8199
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
bd58dd1
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
ef2dd75
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
1a6b9de
Update CODEOWNERS
kurtzeborn Jul 25, 2019
9d7777a
more code owners
kurtzeborn Jul 25, 2019
95bd3e6
add policy and decorators for secrets (#6453)
SuyogSoti Jul 25, 2019
00d06bd
Paging v2 (#6420)
lmazuel Jul 25, 2019
e843467
get rid of should only propagate (#6497)
SuyogSoti Jul 25, 2019
d26f590
decorator only trace very top level function (#6530)
SuyogSoti Jul 29, 2019
854808a
Synchronous username/password auth (#6416)
chlowell Jul 30, 2019
24bd7e1
Synchronous interactive browser authentication (#6466)
chlowell Jul 30, 2019
6b1b911
KV aiohttp by default (#6563)
lmazuel Jul 31, 2019
ae794b7
KV moved paging return type to ItemPaged (#6558)
lmazuel Jul 31, 2019
84d46d7
Remove docdb mgmt package from master (#6585)
lmazuel Jul 31, 2019
cf098df
Revert "Remove docdb mgmt package from master (#6585)" (#6593)
lmazuel Jul 31, 2019
2a29e99
Merge branch 'sdkAutomation/azure-mgmt-sql' of https://github.com/Azu…
Aug 6, 2019
7ac2b36
Generated from 23f4c95562b46fa4d5639c5320769bc149818363 (#74)
openapi-sdkautomation[bot] Aug 15, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Smoke test for Python (#6412)
* Smoke Test Sample for Track 2 libraries

Smoke Test for Indentity, Key Vault Secrets, Storage Blobs, Event Hubs and Cosmos DB

* simpleQuery method added

* Method's names updated

* Create README.md

* Update README.md

* Commented lines deleted

* README.md moved to correct folder

* Create requirements.txt

* Update README.md

* Update README.md

* Imports changed

* Use of literals instead of append

* Database Name variable to class level.

* Use of Pythonic with statements

* Update requirements.txt

* Revert "Update requirements.txt"

This reverts commit 4b79c6a.

* Revert "Use of Pythonic with statements"

This reverts commit 81adc4c.

* Revert "Revert "Use of Pythonic with statements""

This reverts commit 27b2a2d.

* requiriments.txt encoded as a txt file

* requirements.txt as text file

* Misspelling in "Key concepts"

* Update .docsettings.yml to match the tittle of Smoke Test

* Went trought Suyog comments

* Revert "Went trought Suyog comments"

This reverts commit 35c6223.

* Gone trought Suyog comments

* use of snake case in file names
  • Loading branch information
JonathanCrd authored and SDK Automation committed Aug 6, 2019
commit dbccc2e26149734ecadfcee1d2eb702e0a7cf93a
2 changes: 1 addition & 1 deletion .docsettings.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ omitted_paths:
language: python
root_check_enabled: True
required_readme_sections:
- "Azure .+ client library for Python"
- ^Azure (.+ client library for Python|Smoke Test for Python)
- ^Getting started$
- ^Key concepts$
- ^Examples$
Expand Down
13 changes: 13 additions & 0 deletions samples/smoketest/Program.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
from key_vault_secrets import KeyVault
from storage_blob import StorageBlob
from event_hubs import EventHub
from cosmos_db import CosmosDB

print("==========================================")
print(" AZURE TRACK 2 SDKs SMOKE TEST")
print("==========================================")

KeyVault().Run()
StorageBlob().Run()
EventHub().Run()
CosmosDB().Run()
116 changes: 116 additions & 0 deletions samples/smoketest/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
# Azure Smoke Test for Python
This sample code is a smoke test to ensure that Azure Preview for Python work while loaded into the same process by performing 2 or more actions with them.

Libraries tested:
* keyvault-secrets
* identity
* storage-blob
* event-hubs
* cosmos

## Getting started
### Setup Azure resources
For this sample, it is necessary to create/have the following resources in the [Azure Portal](https://portal.azure.com/):
* **App registration**: Register a new app or use an existing one.
* Under _Certificates & secrets_ create a new **client secret** and store the value in a safe place.
* **Key Vaults**: Create a new Key Vault resource or use an existing one.
* Under _Access policies_, add the app registrated in the previous step.
* **Storage acounts**: Create a container in a new or existing storage account. The container in this sample is named "mycontainer", if you want to use other name you can change the value in `BlobStorage.ts` file:
`const containerName = "mycontainer";`
* **Event Hubs**: Create an event hub inside a new or existing Event Hubs Namespace. The container in this sample is named "myeventhub", if you want to use other name you can change the value in `EventHubsTest.ts` file: `let eventHubName = "myeventhub";`
* **Azure Cosmos DB**: Create a new account or use an existing one.

### Azure credentials
The following environment variables are needed:
* From **App Registration**, in the _Overview_ section:
* AZURE_TENANT_ID: The directory tentant ID.
* AZURE_CLIENT_ID: The application ID.
* AZURE_CLIENT_SECRET: The client secret stored previusly when creating the _client secret_.

* From **Key Vault**, in the _Overview_ section:
* AZURE_PROJECT_URL: The DNS Name

* From **Event Hubs**, in _Shared access policies_ section:
* EVENT_HUBS_CONNECTION_STRING: Connection string from a policy

* From **Storage Account**, in the _Access Keys_ section:
* STORAGE_CONNECTION_STRING : A connection strings.

* From **Azure Cosmos DB**, in the _Keys_ section, select the _Read-Write Keys_ tab:
* COSMOS_ENDPOINT: URI.
* COSMOS_KEY: Primary or secondary key.

```
//Bash code to create the environment variables
export AZURE_CLIENT_ID=""
export AZURE_CLIENT_SECRET=""
export AZURE_TENANT_ID=""
export EVENT_HUBS_CONNECTION_STRING=""
export AZURE_PROJECT_URL=""
export STORAGE_CONNECTION_STRING=""
export COSMOS_ENDPOINT=""
export COSMOS_KEY=""
```

### Running the console app
[Python](https://www.python.org/downloads/) version 3.7.4 was used to run this sample.

In the \SmokeTest\ directory, run Program.py
```
python .\Program.py
```

## Key concepts


## Examples
All the classes in this sample has a `Run()` method as entry point, and do not depend on each other.

It is possible to run them individually:
```python
from KeyVaultSecrets import KeyVault

KeyVault().Run()
```

They can be included in other projects by moving the class in it:
```python
from KeyVaultSecrets import KeyVault

...

def myTests():
console.log("Smoke Test imported from other project")
KeyVault().Run()

myTests()
otherFunction()
...
```

The classes can be used as base code and be changed to satisfied specific needs. For example, the method `EventHub().SendAndReceiveEvents()` can be change to only send events from an array given from a parameter:
```python
def SendAndReceiveEvents(self, partitionID, events):
producer = self.client.create_producer(partition_id=partitionID)
producer.send(events)
producer.close()
```

**Note:** The methods in the classes are not necessary independent on each other, and the order matters. For example, in order to run `BlobStorage().DeleteBlob();`, the method `BlobStorage().UploadBLob();` must be run before, since in the other way it will fail because there is not going to be a blob to delete.

## Troubleshooting

### Authentication
Be sure to set the environment variables and credentials required before running the sample.

## Next steps
Check the [Azure SDK for Python Repository](https://github.com/Azure/azure-sdk-for-python/tree/master/sdk) for more samples inside the sdk folder.

## Contributing
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

If you'd like to contribute to this library, please read the contributing guide to learn more about how to build and test the code.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.
84 changes: 84 additions & 0 deletions samples/smoketest/cosmos_db.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
import os
from azure.cosmos import CosmosClient
from azure.cosmos.partition_key import PartitionKey


class CosmosDB:
def __init__(self):
URL = os.environ["COSMOS_ENDPOINT"]
KEY = os.environ["COSMOS_KEY"]
self.client = CosmosClient(URL, {"masterKey": KEY})
self.dbName = "pySolarSystem"

def CreateDatabase(self):
print("Creating '{0}' database...".format(self.dbName))
return self.client.create_database(self.dbName)

def CreateContainer(self, db):
collectionName = "Planets"
print("Creating '{0}' collection...".format(collectionName))
partition_key = PartitionKey(path="/id", kind="Hash")
return db.create_container(id="Planets", partition_key=partition_key)

def CreateDocuments(self, container):
# Cosmos will look for an 'id' field in the items, if the 'id' is not specify Cosmos is going to assing a random key.
planets = [
{
"id": "Earth",
"HasRings": False,
"Radius": 3959,
"Moons": [{"Name": "Moon"}],
},
{
"id": "Mars",
"HasRings": False,
"Radius": 2106,
"Moons": [{"Name": "Phobos"}, {"Name": "Deimos"}],
},
]

print("Inserting items in the collection...")
for planet in planets:
container.create_item(planet)
print("\t'{0}' created".format(planet["id"]))
print("\tdone")

def SimpleQuery(self, container):
print("Quering the container...")
items = list(
container.query_items(
query="SELECT c.id FROM c", enable_cross_partition_query=True
)
)
print("\tdone: {0}".format(items))

def DeleteDatabase(self):
print("Cleaning up the resource...")
self.client.delete_database(self.dbName)
print("\tdone")

def Run(self):
print()
print("------------------------")
print("Cosmos DB")
print("------------------------")
print("1) Create a Database")
print("2) Create a Container in the database")
print("3) Insert Documents (items) into the Container")
print("4) Delete Database (Clean up the resource)")
print()

# Ensure that the database does not exists
try:
self.DeleteDatabase()
except:
pass

try:
db = self.CreateDatabase()
container = self.CreateContainer(db=db)
self.CreateDocuments(container=container)
self.SimpleQuery(container=container)
finally:
# if something goes wrong, the resource should be cleaned anyway
self.DeleteDatabase()
66 changes: 66 additions & 0 deletions samples/smoketest/event_hubs.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
import os
from datetime import datetime
from azure.eventhub import EventHubClient, EventData, EventPosition


class EventHub:
def __init__(self):
# This test requires a previusly created Event Hub.
# In this example the name is "myeventhub", but it could be change below
connectionString = os.environ["EVENT_HUBS_CONNECTION_STRING"]
eventHubName = "myeventhub"
self.client = EventHubClient.from_connection_string(
connectionString, eventHubName
)

def GetPartitionIds(self):
print("Getting partitions id...")
partition_ids = self.client.get_partition_ids()
print("\tdone")
return partition_ids

def SendAndReceiveEvents(self, partitionID):
with self.client.create_consumer(
consumer_group="$default",
partition_id=partitionID,
event_position=EventPosition(datetime.utcnow()),
) as consumer:

print("Sending events...")
with self.client.create_producer(partition_id=partitionID) as producer:
event_list = [
EventData(b"Test Event 1 in Python"),
EventData(b"Test Event 2 in Python"),
EventData(b"Test Event 3 in Python"),
]
producer.send(event_list)
print("\tdone")

print("Receiving events...")
received = consumer.receive(max_batch_size=len(event_list), timeout=2)
for event_data in received:
print("\tEvent Received: " + event_data.body_as_str())

print("\tdone")

if len(received) != len(event_list):
raise Exception(
"Error, expecting {0} events, but {1} were received.".format(
str(len(event_list)), str(len(received))
)
)

def Run(self):
print()
print("------------------------")
print("Event Hubs")
print("------------------------")
print("1) Get partition ID")
print("2) Send Events")
print("3) Consume Events")
print()

partitionID = self.GetPartitionIds()
# In this sample the same partition id is going to be used for the producer and consumer,
# It is the first one, but it could be any (is not relevant as long as it is the same in both producer and consumer)
self.SendAndReceiveEvents(partitionID[0])
46 changes: 46 additions & 0 deletions samples/smoketest/key_vault_secrets.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
import os
from azure.identity import DefaultAzureCredential
from azure.keyvault.secrets import SecretClient


class KeyVault:
def __init__(self):
# DefaultAzureCredential() expects the following environment variables:
# * AZURE_CLIENT_ID
# * AZURE_CLIENT_SECRET
# * AZURE_TENANT_ID
credential = DefaultAzureCredential()
self.secret_client = SecretClient(
vault_url=os.environ["AZURE_PROJECT_URL"], credential=credential
)

def SetSecret(self):
print("Setting a secret...")
self.secret_client.set_secret("secret-name", "secret-value")
print("\tdone")

def GetSecret(self):
print("Getting a secret...")
secret = self.secret_client.get_secret("secret-name")
print("\tdone: " + secret.name)

def DeleteSecret(self):
print("Deleting a secret...")
deleted_secret = self.secret_client.delete_secret("secret-name")
print("\tdone: " + deleted_secret.name)

def Run(self):
print()
print("------------------------")
print("Key Vault - Secrets\nIdentity - Credential")
print("------------------------")
print("1) Set a secret")
print("2) Get that secret")
print("3) Delete that secret (Clean up the resource)")
print()

try:
self.SetSecret()
self.GetSecret()
finally:
self.DeleteSecret()
8 changes: 8 additions & 0 deletions samples/smoketest/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
azure-common==1.1.23
azure-core==1.0.0b1
azure-cosmos==4.0.0b1
azure-eventhub==5.0.0b1
azure-identity==1.0.0b1
azure-keyvault-secrets==4.0.0b1
azure-storage-blob==12.0.0b1
azure-storage-common==2.0.0
Loading