Skip to content

Repo restructure, start with keyvault#5103

Closed
weidongxu-microsoft wants to merge 176 commits intomasterfrom
repo_restructure
Closed

Repo restructure, start with keyvault#5103
weidongxu-microsoft wants to merge 176 commits intomasterfrom
repo_restructure

Conversation

@weidongxu-microsoft
Copy link
Member

Restructure Java SDK repository according to https://azure.github.io/azure-sdk/policies_repostructure.html

Updated keyvault service.
E.g. from
$(azure-libraries-for-java-folder)/keyvault/resource-manager/v2016_10_01
to
$(azure-libraries-for-java-folder)/sdk/keyvault/azure-mgmt-keyvault/v2016_10_01

@mitchdenny
Copy link
Contributor

@weidongxu-microsoft thanks for picking up this work! We discussed previously about path length issues. We had a chat about this in our team room and we've been debating the pros and cons of forcing developers on Windows to turn on long path support which is imperfect and doing the work in the repo structure to make it a non-issue given a reasonable Git working directory location on disk.

Then I think that there is an open question about how we want to do PR and CI validation. We could continue to keep the management plane and the client builds completely separate, but there is an opportunity here (in this repo at least) to consolidate them together.

There are a few factors there, we wouldn't want the management plane builds to adversely slow down the client library builds and vice versa. The unified pipelines we are using in the Java repo can actually publish all the way to Maven Central now, although the number of pipelines we have is fairly narrowly scoped compared to the ARM API surface that you guys cover.

mitchdenny and others added 19 commits August 26, 2019 19:33
* Setup AI for unified pipelines.

* Added staging profile and updated artifact names.
* Setup unified pipelines for sdk/cognitiveservices

* Updated staging profiles and artifact names.
* Added storage to the aggregate reports

* Fixing SpotBug issues

* One last SpotBug fix

* Fixed invalid use in sample
* Added clearRange and remove the FileRangeWriteType
* Fixed bytebuffer issue.
* add more eng entries to CODEOWNERS with use the correct owners
* Basic plumbing for pipeline caching.

* Using new key format.

* Add caching to build and analyze phases.

* Narrowing scope of fingerprint.

* Removed caching from analyze step.

* Adding caching kill switch.
Commit directly to master to test a change (need to simulate a CI trigger).
* Roll back customizations to ci.yml for cosmos.

* Created a special stage template for cosmos.

* Tweaked template path.

* Added globals reference in tests job.
* Removed azure-core-http-netty from the published artifact list.

* Actually remove the artifact.
This PR includes the requirement of Javadoc annotation @codesnippet @code, check:

Use {@codesnippet ...} instead of '<code>', '<pre>', or '{@code ...}' if these tags span multiple lines. Inline code samples are fine as-is.
@codesnippet description should match naming pattern requirement below:

Package, class and method names should be concatenated by dot '.'. Ex., packageName.className.methodName
Methods arguments should be concatenated by dash '-'. Ex. string-string for methodName(String s, String s2)
Use '#' to concatenate 1) and 2), ex packageName.className.methodName#string-string.
Fixed and Suppress checkstyle errors :

A minor fix for HttpPipeLinePolicyCheck, which to find a correct package name.
Fixed all non-critical errors but suppress those critical errors so code owner can fix them when they are available.
Good Logging Practice
    1) ClientLogger in public API should all named 'logger', public API classes are those classes that are declared
       as public and that do not exist in an implementation package or subpackage.
    2) ClientLogger should be non-static instance logger
    3) Should not use any external logger class, only use ClientLogger. No slf4j, log4j, or other logging imports are allowed.
      'System.out' and 'System.err' is not allowed as well.
    4) All classes should use ClientLogger as logger only but except ClientLogger itself
* Remove Storage swagger files and reference azure-rest-api-specs

Also includes a few changes to Queues that were there before switching swagger
references (it may not have been regenerated in awhile?).

* Removing last swagger file from repo, fixing tests to comply with new swagger generation

* Added comment to get StorageErrorCode into the Swagger
@weshaggard
Copy link
Member

@weidongxu-microsoft what is the plan here? Do you intend to open up a new PR with these changes?

@weidongxu-microsoft
Copy link
Member Author

@weshaggard
Yes, opened #5378 on feature/ci-mgmt branch to continue the work.
feature branch would enable us to trigger CI very much alike that on master. However testing on CI configuration is still tricking so I might even start something on local mocked repo so I could do CI triggering freely.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Comments