Commit Graph

57 Commits

Author SHA1 Message Date
Daniel Jurek
02bb09aac1
Add support for Ubuntu 22 to Get-BinarySzies.ps1 (#4511) 2023-04-03 14:47:38 -07:00
Daniel Jurek
50589d65b5
Always release to vcpkg when doing Daily Release (#4334)
* Always release to vcpkg when doing Daily Release

* Add ability to skip live tests via variable

* Use 1ES agents instead of Azure Pipelines
2023-03-06 11:47:15 -08:00
Praven Kuttappan
7da07d5072
Generate API review for C++ using new parser (#4302) 2023-02-21 17:35:41 -05:00
Konrad Jamrozik
971d20be3e
Where applicable, update Windows pools used to azsdk-pool-mms-win-2022-general and rename vmImage to the windows-20xx format (#4360) 2023-02-16 19:02:10 -08:00
George Arama
3762c59552
Test proxy start (#4295)
* lll

* sss

* oipio

* vcvc

* enable test proxy start at test suite start for KV and storage , example created for attestation, we cannot find the base definitions for the test suites,

* Contrib

* clangs

* clangs

* test logs

* pipeline

* more clangs

* pipeline

* clang

* try try again

* try try again

* try again

* try again

* again

* update paths , moved to macro , call macro in target code

* core

* capitalization
2023-02-07 10:52:20 -08:00
George Arama
cad042256b
proper regex for win 2022 (#4339) 2023-02-03 14:46:35 -08:00
Daniel Jurek
8891d30f4e
Use Azure Pipelines and workaround for WSL installation (#4215)
* Use Azure Pipelines and workaround for WSL installation
2023-01-03 10:35:01 -08:00
Azure SDK Bot
fa6ebb26b7
Migrate from win2019 to win2022 (#4157) 2022-12-22 10:12:28 -08:00
George Arama
ef4d41267f
Test proxy (#4118)
* start

* recording

* playback

* refactor, playback and record

* recordings for kv

* klklk

* open telemetry, identity

* attest

* all tests recorded except storage

* STORAGE RECORDINGDS

* some cleanup

* ignore result

* testproxy remade

* fiiine , do something with the result , goooosh

* install test proxy

* clang

* clang

* certs maybe

* cmake generate fix,

* start test proxy script

* start test proxy on env

* clang, move TP after build

* reregen

* certs

* sda

* dss

* allow insecure connections

* put back

* debug

* iuy

* try again

* ewew

* chmod

* try again

* update sanitizer

* output testproxy log

* sjhgasjgdajh

* folder

* worxy

* fix tests and log file

* format files

* clang format

* clang

* sa

* sa

* cleanup

* cspell

* oops

* remove redundant method

* tests

* put back original

* restore to 933486385a

* recordings

* remove storage values

* storage recordings

* disable non functioning tests

* remove core install of test proxy

* _LIVEONLY_ tests

* clang install when needed

* logs on condition

* skip tests

* revert cpp to original version

* quick test

* right that one

* one skip

* identity pushed

* maybe

* override

* clang

* clang

* attestetion

* keyvault

* reenable 20+ tests

* 5 tests left , lease related

* a bit of cleanup

* try now

* snitizers

* some fixes

* capitalization

* clang , cover, peakA

* WEIRD NAME THING ON WINDOWS

* storage recordings

* one more livee

* createappenddelete_liveonly

* CreateWithTags_LIVEONLY_

* try capitalization

* another onw

* maybe now

* all liveonly

* try restore before test

* typo

* condition

* clang and cc

* azure core ci

* qwqwq

* dsasdas

* cleanup1

* typo

* spaces

* cleanup2

* cleanup 3

* remove start proxy

* cleanup +1

* Update cmake-modules/TestProxyPrep.cmake

Co-authored-by: Rick Winter <rick.winter@microsoft.com>

* Update eng/scripts/Start-TestProxy.ps1

Co-authored-by: Rick Winter <rick.winter@microsoft.com>

* Update eng/scripts/Stop-TestProxy.ps1

Co-authored-by: Rick Winter <rick.winter@microsoft.com>

* PR comments

* clangs

* Update sdk/core/azure-core-test/src/test_proxy_policy.cpp

* build

Co-authored-by: Rick Winter <rick.winter@microsoft.com>
2022-12-13 10:58:19 -08:00
Larry Osterman
bb95a22e3f
Added the ability to select OpenSSL 1.1.1n if desired. (#4045)
* Added ability to switch to OpenSSL 1.1.1n

* Fixed OpenSSL compilation challenges - the CRL stuff works now

* Added instructions on using OpenSSL 1.1.1 to README

* Added vcpkg args to handle openssl variants
2022-10-28 15:57:51 -07:00
Larry Osterman
53c9da1552
Pull all Websockets changes to main except for WebSockets itself. (#3954)
* Pulled WebSocket fixes into main except for WebSockets functionality


Co-authored-by: Rick Winter <rick.winter@microsoft.com>
Co-authored-by: Daniel Jurek <djurek@microsoft.com>
Co-authored-by: George Arama <50641385+gearama@users.noreply.github.com>
Co-authored-by: Ahson Khan <ahson_ahmedk@yahoo.com>
Co-authored-by: Ben Broderick Phillips <bebroder@microsoft.com>
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2022-10-04 14:58:56 -07:00
Larry Osterman
f8c41df5a2
Simpler get-binarysizes check for OSX (#3901)
* Simpler get-binarysizes check for OSX

* Missed wildcard
2022-08-24 15:22:05 -07:00
Larry Osterman
634df137e3
Fixed #3899 - Handle new OSX version correctly; reformatted platform-matrix JSON files (#3900) 2022-08-24 21:22:53 +00:00
Anton Kolesnyk
ee36dd3abb
OpenTelemetry ApiView fix (#3784) 2022-06-30 21:19:11 +00:00
Ben Broderick Phillips
1715a288d3
Add auto apiview review creation (#3763)
* Add create api auto review step

* Continue on api view upload failure

* Add comment explaining ast generation in api view script
2022-06-28 15:54:51 -04:00
Anton Kolesnyk
82c77b0251
ApiView command line generation script (#3711)
* ApiView command line generation script

* Strongly typed parameters

Co-authored-by: Ben Broderick Phillips <ben@benbp.net>

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
Co-authored-by: Ben Broderick Phillips <ben@benbp.net>
2022-06-16 12:45:39 -07:00
Victor Vazquez
f4bbfaa7da
[EngSys] Get Vcpkg automatically (#3614)
* get vcpkg automatically
2022-06-07 18:45:50 -07:00
Daniel Jurek
04cd29039b
Vcpkg Binary Cache Cleanup (#3482)
* Expiration time, eliminate AzureRm warning, condition on Set-VcpkgWriteModeCache

* Attempt uninstalling AzureRM and installing Az.Storage

* Import PSModule-Helpers.ps1

* Unsintall-AzureRm if the function exists

* Get-Command

* Uninstall-Module Azure.Storage

* Log

* quotes

* Get-Command some more

* Format list

* Alias fun

* Naming

* show PSModulePath

* Attempt to handle module double backslash

* do not observe

* do not observe for real

* Spelling

* Empty commit to re-trigger CI with a full matrix
2022-04-04 13:12:16 -07:00
Daniel Jurek
a91d151e79
Vcpkg Beta Automation (for real) (#3497)
* Script that automates updating vcpkg betas

* Wire up to pipeline

* Spelling, commentary

* Clone into repo name

* Remove-Item requires the path to exist, even if -Force is specified

* Bootstrap vcpkg

* Arguments to Test-ShouldReleaseToVcpkg.ps1

* More commit

* Escape quotes

* Quote git commit

* Set strict mode

* Use tags

* Actually tag

* Run git commands

* Invoke-Expression

* Onboard releasing package to vcpkg before attempting to isntall from overaly

* temporarily disable matrix generation (30s tasks sometimes runs for 20+ minutes)

* Test-ShouldReleaseToVcpkg.ps1

* Test-Path

* Test vcpkg build, also ensure we push

* Just the tags... low probabiltiy of success given that '--' if frequently treated as a separator

* Add ability to skip link verification for tighter inner loop

* Push tag separately

* Unnecessary condition and conjunction

* Base repo owner: Azure

* Specify remote name

* Tighten inner loop

* git remote -v

* workingDirectory

* Go back to two tags and a regular push

* Saving some progress

* Use original push method

* BaseRepoOwner

* Cleanup, put changes in the default branch (vcpkg does not look at refs outside of the default branch)

* Use default branch

* Revert changes used to tighten up devops inner loop

* Revert an unrelated change

* Revert unrelated changes

* Revert unrelated changes

* Add spelling
2022-04-01 06:30:03 -07:00
Daniel Jurek
ca8b843954
Revert "Vcpkg Beta Automation (#3430)" (#3495)
This reverts commit 60f0dfdcea.
2022-03-31 13:14:19 -07:00
Daniel Jurek
60f0dfdcea
Vcpkg Beta Automation (#3430)
* Script that automates updating vcpkg betas

* Wire up to pipeline

* Spelling, commentary

* Clone into repo name

* Remove-Item requires the path to exist, even if -Force is specified

* Bootstrap vcpkg

* Arguments to Test-ShouldReleaseToVcpkg.ps1

* More commit

* Escape quotes

* Quote git commit

* Set strict mode

* Use tags

* Actually tag

* Run git commands

* Invoke-Expression

* Onboard releasing package to vcpkg before attempting to isntall from overaly

* temporarily disable matrix generation (30s tasks sometimes runs for 20+ minutes)

* Test-ShouldReleaseToVcpkg.ps1

* Test-Path

* Test vcpkg build, also ensure we push

* Just the tags... low probability of success given that '--' if frequently treated as a separator

* Add ability to skip link verification for tighter inner loop

* Push tag separately

* Unnecessary condition and conjunction

* Base repo owner: Azure

* Specify remote name

* Tighten inner loop

* git remote -v

* workingDirectory

* Go back to two tags and a regular push

* Saving some progress

* Use original push method

* BaseRepoOwner

* Cleanup, put changes in the default branch (vcpkg does not look at refs outside of the default branch)

* Use default branch
2022-03-31 12:52:14 -07:00
Victor Vazquez
835f156af9
Vcpkg manifest and binary caching (#3329)
* binary cache and manifest

* update packages

* udpate

* add cache to private pipeline

* next try

* aver

* other

* again

* aver quick

* more

* this way

* again

* one more

* print

* test

* use depend

* more deps

* dep

* Apply suggestions from code review

Co-authored-by: Daniel Jurek <djurek@microsoft.com>

* updated to use group variable

* update identity

* end line

* Update vcpkg.json

* Apply suggestions from code review

* cspell

* remove comment

* updates

* make cache mode depend on SAS env var

* map env var only for internal pipelines

* other approach

* what about this

* and this

* try

* amd

* another

* extra step

* typo

* override for internal

* use default succeded

* azure core update manifest

* a

* run cmake-generate nightly as well

* check for SAS

* check cache

* no secret

* fix is secret

* pass explicit

* use secret all the time

* char

* One more

* export

* echos

* last

* array

* remove question

* ok

* weird

* use account key

* substring

* VCPKG_BINARY_SOURCES

* Add module installation

* task:

* Correct pathing for module

* update source gen

* format

* update spelling

* IsWindoows

* Use pwsh

* Cannot clobber with PSModule-Helpers. Attempt plain install

* Attempt plain install

* Revert unnecessary change to Update-DocsMsToc.ps1

* template ready

* curl is required on Windows as well for some CI gates

* attestation

* fix format

Co-authored-by: Daniel Jurek <djurek@microsoft.com>
2022-03-24 09:11:30 -07:00
Daniel Jurek
44310b635a
Log binary sizes (excl. UWP changes) (#3357)
* Output binary sizes (Get-BinarySizes.ps1 works for linux environment)

* Add better support for Windows binary output

* Update matrix to properly build Debug and Release on Windows

* Add TEAMPROJECTID to spell check

* Add extra labels

* Ensure BuildArgs doesn't get duplicated

* Log additional metrics

* Add openssl to Win32Api_curl

* SourceBranchName -> SourceBranch

* Fix matrix entries

* Document included

* Review feedback for Get-BinarySizes.ps1

* Infer many metrics from the environment

* Add issecret to cspell.json

* Extra equal signs

* Correct directory depth for $BuildDirectory

* Correct casing for mac VM image
2022-03-03 11:36:11 -08:00
Chidozie Ononiwu (His Righteousness)
58c1ecfc1d
Add ReplaceLatestEntryTitle parameter for updating changelog (#3008) 2021-11-02 12:29:38 -07:00
Scott Beddall
3f25c5d2e5
add ga to index and individual docs (#2687) 2021-07-29 20:53:51 +00:00
Anton Kolesnyk
f6765e667e
Put dependency versions (#2518)
* Put dependency versions

* Update version

* Core does not have any 1.1 functionality

* Core 1.1

* 1.1.0

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2021-06-30 17:05:16 -07:00
Wes Haggard
015c34a029
Update links from master to main (#2488)
* Update links from master to main

* Upate other references from master to main
2021-06-24 22:27:14 -07:00
Wes Haggard
e1d53996dc
Fix Prepare-Release and version update code (#2469)
- Passes through ReleaseDate
- Removes old version.txt logic
- Cleans up version scripts to import common.ps1
2021-06-23 16:56:49 -07:00
Daniel Jurek
fda88bf7b8
Update for "master" -> "main" branch rename (#2455)
* vcpkg.json -- update all links to point to "main" .. This is hardcoded and will go out in future releases.
* ci.yml -- add `- main` to trigger criteria near `- master` ... This adds forward compatilbitiy when we rename the branch in the repo
* archetype-cpp-release.yml use a script which evaluates a repo's default branch and sets that in a global variable, then use that variable instead. When vcpkg updates their branch the publishing scripts will work transparently.
* Collect-Changelogs.ps1 -- Add default hardcoded branch name for use with future releases. This can be optionally overridden with a parameter when invoking the script.
* eng/pipelines/client.yml -- Delete this file. It is no longer in use.
2021-06-18 09:09:27 -07:00
Daniel Jurek
26f43fd359
Narrow $packagePattern to exclude vcpkg.json files which are now part of the publishing process (#2330) 2021-05-20 17:19:18 -07:00
Ahson Khan
fd9c3e5ebb
Fix true spelling errors across all source and header files within the SDK and add exceptions for false positives. (#2209)
Part of https://github.com/Azure/azure-sdk-for-cpp/issues/1277, checking what types of warnings the CI emits.

Verified all SDK product `.cpp`, `.hpp`, `.txt`, and `.md` files, primarily focused on azure-core. They are all clean now. There are some exceptions that needs to be added for keyvault and storage, but they are false positives, so not a concern.

> `cspell lint --config .vscode/cspell.json *.hpp */**/*.hpp`

CSpell: Files checked: 188, Issues found: 0 in 0 files

> `cspell lint --config .vscode/cspell.json *.cpp */**/*.cpp`

CSpell: Files checked: 186, Issues found: 88 in 15 files (keyvault and storage false positives, or tests)

> `cspell lint --config .vscode/cspell.json *.md */**/*.md`

CSpell: Files checked: 45, Issues found: 5 in 2 files (eng/common)

> `cspell lint --config .vscode/cspell.json *.txt */**/*.txt`

CSpell: Files checked: 44, Issues found: 0 in 0 files

> `cspell lint --config .vscode/cspell.json *.* */**/*`

CSpell: Files checked: 646, Issues found: 328 in 69 files (most of these are in eng\docs\api\assets\style.css or eng/common)

Deprioritize and ignored the errors from the test files (including test resource json files), and `eng/common` since those need to be centrally fixed.
2021-05-07 21:04:58 +00:00
Anton Kolesnyk
cd36753d76
PackageVersion made constexpr and moved to src/package_version.hpp (#2166) 2021-04-28 17:34:24 -07:00
Daniel Jurek
61aa827d5c
EngSys updates to support new vcpkg.json format (#2153)
* Use linux for vcpkg release

* Force lf line endings

* Set config correctly

* Better core.eol syntax and sequencing

* Try using linux host which uses LF by default

* Revert "Try using linux host which uses LF by default"

This reverts commit 160eb22b647e851a50f9d1e7b157a1e385fe946f.

* Use vcpkg.exe to format the manifest

* Spell correctly

* Move format-manfiest
2021-04-26 15:56:37 +00:00
Ahson Khan
d452e94337
Update vcpkg ports to use a manifest json file instead of a CONTROL file. (#2132)
* Update vcpkg ports to use a manifest json file instead of a CONTROL file.

* Update vcpkg ports to use a manifest json file instead of a CONTROL file
for remaining packages.

* Add the new vcpkg manifet json files and also update the template
package.

* Update paths in the cmake and eng scripts to find the right file now
that CONTROL is gone.
2021-04-19 12:50:50 -07:00
Daniel Jurek
5a99f38df1
Add nightly vcpkg publishing (#2025)
* Tool changes to support nightly test package release

* Initial wiring up and refactor vcpkg-publish.yml

* Use vcpkg-clone.yml

* Disable publishing for verification of nightly builds

* Complete the comment

* Dependency is enforced at the stage level, not the deployment/job level

* Remove environment, no approval needed

* Add ability to enable test release parameters

* deploy -> job

* deployment -> job

* Remove strategy

* Download pipeline artifacts

* task -> download

* Set appropriate working directory

* git status

* Set working directory

* Add pipeline for nightly vcpkg PR update

* Correct vcpkg-clone.yml path

* Add identity parameters to git merge commands

* Remove GitIdentityParameters, the merge command does not suppor tthem. Add instead in the pipeline

* Split lines

* Write-Host

* Template for nightly branch name, update comments, Check for scheduling or "PublishNightlyVcpkg"

* include archetype-cpp-release.yml changes

* Re-enable publishing stage

* Close the and

* Runtime condition for integration stage

* Move integration below package publishing stages

* try -- to disambiguate

* ^ -> ~

* Remove --

* Documentation and variable naming

* Move documentation comment

* Update eng/pipelines/templates/steps/generate-nightly-branch-name.yml

Co-authored-by: Wes Haggard <weshaggard@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Wes Haggard <weshaggard@users.noreply.github.com>

* Review feedback

* Add ability to skip all release steps

* Equal sign

* The right number of dashes

* Checkout before merge

* Checkout the default branch

* --no-ff

* git reset

* Skip publishing for artifacts which are not publishign to vcpkg

* Add git config --unset

* Apply suggestions from code review

Co-authored-by: Wes Haggard <weshaggard@users.noreply.github.com>

* Review feedback

* Review feedback

* Remove extra reset

* TestRelease -> DailyRelease

Co-authored-by: Wes Haggard <weshaggard@users.noreply.github.com>
2021-04-06 14:48:32 -07:00
Chidozie Ononiwu
e25807adc2
Cleanup language settings file (#1968)
Co-authored-by: Wes Haggard <weshaggard@users.noreply.github.com>
2021-03-24 14:51:44 -07:00
Chidozie Ononiwu
3d1a58e3f8
Fixup CHANGELOG.md, add SetPackageVersion, add calls to set-test-pipe… (#1936)
* Fixup CHANGELOG.md, add SetPackageVersion, add calls to set-test-pipeline-version.yml

* Run set-test-pipeline-version.yml per artifact, open testpipeline as draft

* git diff to view changes in file

* Move set-test-pipeline-version.yml after Validate Clang Format

* remove second artifact loop in archetype-cpp-release.yml
2021-03-23 11:34:30 -07:00
Daniel Jurek
90cd888a63
Refactor vcpkg PR step (also, use CHANGELOG.md entry in commit message) (#1791)
* Validate publishing before parameter refactor

Fix release yaml syntax

Environment variable naming

Remove flag

Remove checkout step

Reset the commit

Cleanup Update-VcpkgPort.ps1, mostly git reset HEAD^. Attempt to check out branch in remote.

Try putting CHANGELOG entry into commit message

Include common.ps1 for changelog operations

Correct path for common.ps1

Include the scripts folder as well

Quotes

Refactor to use release artifacts, perform the commit in Update-VcpkgPort.ps1, set parameters and variables needed to complete PR with the commit step already finished

* Add PR body

* Add newline
2021-03-08 16:18:47 -08:00
Chidozie Ononiwu
3eab83a635
Add alternate code path for Get-cpp-PackageInfoFromRepo (#1762)
* Add alternate code path for Get-cpp-PackageInfoFromRepo

* Use Join-Path rather than slashes

* Remove quotes from Join-Path arguments
2021-03-03 16:35:24 -08:00
Daniel Jurek
be81e6d6e1
Add -NoNewLine to portfile output (#1724) 2021-02-23 14:40:03 -08:00
Daniel Jurek
dbd9c62a78
Add TagRepository dependency (#1567)
* Add TagRepository dependency

* Remove extra CPP
2021-02-02 09:55:07 -08:00
Daniel Jurek
cc1aeb4d3f
Fix Language-Settings.ps1 to use correct logic (#1427) 2021-01-21 21:59:12 -08:00
Chidozie Ononiwu
1310c8e0ea
Add LanguageDisplayName variable in LanguageSettings file (#1406) 2021-01-21 09:57:10 -08:00
Daniel Jurek
f15c823e79
Automate publishing to vcpkg (#1283)
* Disable dependency on azure-core until azure-core releases to vcpkg.

* Remove release artifact creation script and pipeline step

* Copy items from root cmake generate outputs (no need to do individual project preparation)

* Space

* Add VcpkgPortName (package port names may change in the future to include non v1 version numbers like azure-template-cpp-v2)

* Destination should be artifact name, not vcpkg port name

* Disable PR steps

* SHA512 1 -> SHA512 %SHA512%

* New release procedure

* Unblock publishing process

* Increment azure-template version

* Update branch strategy, uncomment final release of template

* Increment version to test release

* Fix remote branch checkout logic

* Increment version

* Exit successfully

* Increment version

* Increment Version

* Version Increment

* Add a difference in the output file to validate multiple runs against a target PR branch

* Enable existing PR branches in create-pull-request.yml

* Increment version

* Fix archetype-cpp-release.yml syntax

* Skip checkout instead

* Increment version

* Fix automated version incrementing

* Increment version

* Update CHANGELOG.md

* Update CHANGELOG.md date

* Revert CONTROL file

* Remove Build-Depends

* Increment version

* Output commands

* Check out branch in either branch scenario

* Increment version

* Fetch the .tar.gz file using convention, the REST API does not give the location of the .tar.gz

* Increment Version

* ToLower

* Increment

* Increment version

* Version updater should not append a new line to the end of the file contents (existing new line at the end of the file will remain, if present)

* Add azure-template2 to validate base case of shipping different packages instead of file replacement validation from previous runs

* Remove extra backtick

* Add template2 to root CMakeLists.txt

* Review feedback: Support main scenario with packages coming from different location (no new file conflicts)

* Remove file blocking link check step. This is ok because the whole azure-template2 folder will be removed after this verification is complete

* Version increment

* Make template2 install in different locations

* Increment version

* Remove azure-template2 that was used for validating publishing multiple packages

* Remove template2 from ci.yml

* Use "SHA512 1" syntax as proposed by vcpkg documentation and regex replacement

* Review feedback

* Increment version

* Quotes

* Review feedback and re-add New-ReleaseAsset.ps1
2021-01-13 14:35:18 -08:00
Victor Vazquez
674a8b623a
Auto release notes (#1197)
fixes: #671
2020-12-17 23:29:51 +00:00
Sima Zhu
8d1450b855
Delete the redundant files and point to common scripts (#1062) 2020-12-02 17:23:58 -08:00
Chidozie Ononiwu
af8cb73006
Update LanguageSetting.ps1 (#985) 2020-11-16 10:03:09 -08:00
Sima Zhu
202fc466fc
Centralize the docindex scripts and regenerate Github IO landing page. (#892)
* Centralize the docindex scripts and regenerate Github IO landing page.
2020-11-02 21:19:46 -08:00
Daniel Jurek
5ddeaabab9
Use vcpkg cache (#646) 2020-09-17 21:16:09 -07:00
Daniel Jurek
39e8dfd6e7
Vcpkg publish framework (#645)
* Add vcpkg artifact creation and port template copying
* Skip staging if vcpkg port directory doesn't exist
2020-09-17 15:45:43 -07:00